通过 frp 使用 ssh 连接内网服务器

发布时间 2023-06-14 10:18:50作者: zwyyy456

配置frp

安装frp

~/Prog目录下执行wget https://github.com/fatedier/frp/releases/download/v0.48.0/frp_0.48.0_linux_amd64.tar.gz下载压缩包,然后执行tar -zxvf file.path来解压,将解压生成的文件夹重命名为frp

设置frpc.ini

修改frpc.ini文件为以下内容:

[common]
server_addr = xxx.com # 可以是ip地址或者域名
token = *** #填密钥
server_port = 7000

[ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 22 # 本机ssh端口
remote_port = 12066 # frp服务器你希望设置的对应端口

利用systemctl实现frp自启动

执行sudo touch /etc/systemd/system/frp.service,修改文件内容为

[Unit]
Description=frp client
After=network-online.target

[Service]
Type=notify
Restart=always
RestartSec=60
ExecStart=/home/zwyyy/Prog/frp/frpc -c /home/zwyyy/Prog/frp/frpc.ini # 注意这里不能使用~为路径

[Install]
WantedBy=multi-user.target

然后执行 sudo systemctl enable frp.servicesudo systemctl start frp.service

以下说明来自ChatGPT!

“[Install]”部分提供了有关如何安装此系统服务的信息。

在Install部分中,“WantedBy”属性确定了哪个级别的目标(或多个级别的目标)应用于此服务。多个级别的目标可以在逗号分隔列表中指定。

通常,系统管理员会将服务添加到“multi-user.target”,这将确保在系统启动时服务自动启动,并在用户登录时保持运行。

“WantedBy=multi-user.target”表示此服务应该在系统启动时启动,并与多个用户有关的目标相关联,这样就可以在多个用户登录时持续运行服务。

此外,[Install]部分还提供了以下命令,可以用来启动和停止服务:

  • sudo systemctl start frp.service:启动服务
  • sudo systemctl stop frp.service:停止服务