Windows 設定 FRP 自動啟動

Undefined443發表於2024-04-20

由於 frps/frpc 不是 Windows 服務應用程式,因此我們不能直接使用 New-Service 命令建立 frps/frpc 服務。我們可以使用下面的方法將 frps/frpc 封裝為 Windows 服務應用程式,然後再使用 Xxx-Service 命令進行管理。

使用 WinSW

WinSW 是一個可以將任何應用程式封裝並管理為 Windows 服務的程式。

封裝服務

首先下載 WinSW 程式:

開啟 WinSW Releases Page,選擇一個適合你的可執行程式版本。

  • x64: 不使用 .NET 框架的可執行程式,體積較大。
  • NET461: 使用 .NET 框架的可執行程式,體積較小。461 是 .NET 框架版本號 4.6.1。

我這裡選擇使用 WinSW.NET461.exe

  1. 將你下載到的 WinSW 可執行程式放到你要封裝的程式所在的目錄下。

  2. 建立和 WinSW 可執行程式同名的 XML 配置檔案:

    • 比如,我下載的是 WinSW-net461.exe,那麼我的配置檔名為 WinSW-net461.xml

    • 在配置檔案中填入如下內容:

      <service>
          <id>frpc</id>
          <name>frpc</name>
          <description>frpc</description>
          <executable>frpc</executable>
          <arguments>-c frpc.toml</arguments>
          <logmode>reset</logmode>
      </service>
      
  3. 封裝並執行 Windows 服務:

    .\WinSW-net461.exe install  # 封裝服務
    .\WinSW-net461.exe start  # 執行服務
    

可以使用 winsw status 命令檢視服務的狀態:

$ .\WinSW-net461.exe status
Active (running)

顯示 Active (running) 則證明我們的服務已經開始執行。

刪除服務

./WinSW-net461.exe uninstall

參考:Frp 內網穿透 Windows 設定開機啟動的兩種方法

相關文章