基于frp以及一台公网服务器实现ssh远程连接内网服务器
frp
frp 是一个专注于内网穿透的高性能的反向代理应用,支持 TCP、UDP、HTTP、HTTPS 等多种协议,且支持 P2P 通信。可以将内网服务以安全、便捷的方式通过具有公网 IP 节点的中转暴露到公网。
项目地址:https://gitcode.com/gh_mirrors/fr/frp
免费下载资源
·
设备准备
一台可以使用的公网的服务器、一台可以访问web的内网 X X X的计算机,一台可以访问web的不属于内网 X X X的计算机。
文件准备
下载对应文件 传送门
linux下进行解压的命令:
tar -zxvf frp_0.44.0_linux_amd64.tar.gz
客户端是指要被ssh访问的计算机。
服务端是指公网IP的计算机。
运行文件配置
# frps.ini
[common]
bind_port = 7000 # 公网服务器开启的端口
# frpc.ini
[common]
server_addr = # 公网服务器的IP地址
server_port = 7000 # 公网服务器开启的端口
[ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 6000 # 这个端口是用于代理的端口
文件运行
服务端运行
./frps -c ./frps.ini
客户端运行
./frpc -c ./frpc.ini
非内网计算机ssh连接
ssh -oPort=6000 test@x.x.x.x #x.x.x.x是公网服务器的IP
开启端口
查看是否连接成功,如果没有成功,要检查一下公网服务器的防火墙的端口是否打开。
6000和7000的端口都要打开。
netstat -ntulp # 查询已开放的端口
netstat -ntulp | grep 端口号 # 可以具体查看某一个端口号
firewall-cmd --query-port=6000/tcp # 查询指定端口是否已开,提示 yes,表示开启;no表示未开启。
firewall-cmd --add-port=6000/tcp --permanent # 添加指定需要开放的端口
firewall-cmd --add-port=7000/tcp --permanent # 添加指定需要开放的端口
firewall-cmd --reload # 重载入添加的端口
firewall-cmd --query-port=6000/tcp # 查询指定端口是否开启成功
firewall-cmd --permanent --remove-port=6000/tcp # 移除指定端口
firewall-cmd --permanent --remove-port=7000/tcp # 移除指定端口
备注:运行公网服务器为ubuntu20.04,指令集是amd64的,版本不对应会出现core dump之类的运行报错。
GitHub 加速计划 / fr / frp
83.05 K
13 K
下载
frp 是一个专注于内网穿透的高性能的反向代理应用,支持 TCP、UDP、HTTP、HTTPS 等多种协议,且支持 P2P 通信。可以将内网服务以安全、便捷的方式通过具有公网 IP 节点的中转暴露到公网。
最近提交(Master分支:3 个月前 )
4383756f
19 天前
6ba849fc
28 天前
更多推荐
已为社区贡献3条内容
所有评论(0)