1、预置条件
- 内网client服务器可以访问外网
- 一台有公网IP的服务器(可以用ECS,我这里用的是一台阿里云ECS)
- 我这里是以centos7部署远程ssh的环境
2、部署frp server(frps)
SSH登录阿里云ECS,从github下载frp包linux版,我这里用的是0.43版本的,最新已经到0.46版。
放到阿里云ECS服务器中,解压
我这里嫌frp包名字太长,改为了net,只保留server端需要的三个文件如上,编辑frps.ini文件,加入如下内容。
10010端口是frps与frpc之间的通信端口,10011是你之后用外网ip加上这个端口号连接内网ssh的端口。手动启动frps命令为,frps -c frps.ini,一般把它做成一个system服务
创建一个frps的服务
vim /etc/systemd/system/frps.service
加入如下内容
红框内为启动文件的指令,根据实际存放路径修改。
一般用ECS还需要关闭ECS防火墙,去ECS管理界面放行你使用的端口,不然会出现Iotimeout的报错,我这里的端口是7500,10010,10011。在ECS管理界面找到安全组,配置规则
手动授权端口所有IP都可以访问
systemctl enable frps //开启启动服务
systemctl start frps
启动不报错则frps配置成功
查看frp网页端管理界面http:{ip}:7500/static/ ,输入之前配置的dashboard配置的用户名和密码。
3、部署frp client(frpc)
ssh你的内网服务器,内网服务器要能通外网,将文件拷贝到服务器中,只保留frpc需要的三个文件
编辑frpc.ini文件,server_addr内填入的是ECS的公网IP地址,local_addr填入的是内网机器的IP。
手动启动的方法是 frpc -c frpc.ini,还是做成服务比较方便
vim /etc/systemd/system/frpc.service
加入内容,红框内填实际路径
systemctl enable frpc
systemctl start frpc
无报错即连接成功
输入ECS的公网IP,加用户名,端口号就能实现再家里SSH实验室的服务器了
注:如果没有ECS,那就只能用其他人搭建好的frps了。
原文链接:https://blog.csdn.net/m0_61544599/article/details/128655486