一、场景
- 现有主机和主机上的虚拟机,现需要在局域网或外网上的其他主机上通过ssh访问主机上的虚拟机,所以需要在主机上搭建通往虚拟机的隧道
二、布置
- frps服务端(跳板):主机
- frpc客户端(目标):虚拟机
- 访问端:外网或者局域网主机
三、过程
- 服务端:更改frps.ini文件中的端口号(默认是7000也行)
[common]
bind_port = 7000
[common]
server_addr = 192.168.3.20 # 服务端IP地址
server_port = 7000 # 刚刚在服务端配置的端口号
[ssh]
type = tcp
local_ip = 192.168.88.161 # 当前客户端IP
local_port = 22 # ssh端口号是22
remote_port = 6000 # 当前客户端IP
四、启动
# 方式一:cmd启动
frps.exe -c frps.ini
# 方式二:bat方式启动成服务,begin后加执行的cmd命令,放进startup中可以实现开机启动
@echo off
if "%1"=="h" goto begin
start mshta vbscript:createobject("wscript.shell").run("""%~nx0"" h",0)(window.close)&&exit
:begin
D:\Develop\frp_0.38.0_windows_amd64\frps.exe -c D:\Develop\frp_0.38.0_windows_amd64\frpc.ini
# 方式一:命令行启动
frpc.exe -c frpc.ini
# 方式二:启动成服务,并开机启动
vim /lib/systemd/system/frpc.service # frpc就是个服务了
----------------添加内容如下 ------------------
[Unit]
Description=frpc service # 描述信息
After=network.target syslog.target
Wants=network.target
[Service]
Type=simple
ExecStart=/export/server/frp_0.38.0_linux_amd64/frpc -c /export/server/frp_0.38.0_linux_amd64/frpc.ini # 重点:启动命令写在这
[Install]
WantedBy=multi-user.target
------------------------------------------------
systemctl start frpc # 启动frpc服务
systemctl enable frpc # 开机自启
输出>>Created symlink from /etc/systemd/system/multi-user.target.wants/frpc.service to /usr/lib/systemd/system/frpc.service.