使用frp内网穿透以便ssh连接服务器
关于frp,首先需要先了解一下关于他的基本概念,frp是一款高性能的反向代理应用,专注于内网穿透。支持多种协议,包括 TCP、UDP、HTTP、HTTPS 等,并且具备 P2P 通信功能。使用 frp可以比较方便的将内网服务暴露到公网,通过拥有公网 IP 的节点进行中转。关于操作步骤,首先需要一台云服务器,这里我选择的是华为云,为了后续操作方便设置ssh免密码登陆的操作以及提前准备如下:
1 | apt update && apt upgrade |
接下来打开服务器实例,并设置其中的安全组:
打开更多并选择查看详情就可以设置新的规则与端口。
一.在云服务器部署frps服务端
1.frp可以在如下链接下载:https://github.com/fatedier/frp
2.同时也可以查阅frp的官方文档:https://gofrp.org/zh-cn/
首先可以在云服务器中通过wget或者别的下载器下载frp最新的release包,并直接解压,如果下载不了,则可以在本地线下载好之后通过scp或者rsync上传包至云服务器,类似的命令主要如下:
1 | scp myfile root@ip:/root/storage |
接下来对frp的压缩包进行如下主要操作:
1 | tar -xzvf frp_0.57.0_linux_amd64.tar.gz |
在你进入frp文件夹下之后你就会发现一些frpc,frps的可执行文件以及对应的toml配置文件,我们需要在服务端配置frps的配置文件,为了便捷考虑,此处按照最简单的默认设置来进行处理:
1 | bind_port = 7000 |
在这里我们设置了frp服务端接收客户端连接的端口为7000,接下来搭配systemd编写文件从而控制frps的启动停止与自启动,文件的位置位于目录**/etc/systemd/system/**之中,接下来编写文件如下:
1 | [Unit] |
使用如下的命令启动frps服务:
1 | systemctl start frps && systemctl enable frps |
完成上述操作之后在服务端的配置已经基本完成,使用如下systemctl status可以查看frps服务是否已经启动,正常激活状态的情况如下所示:
二.在客户端服务器进行frpc配置
frpc的大多数配置和frps的大多数配置过程一致,就不再重复,如下天上属于frpc的toml配置文件如下所示:
1 | serverAddr = "你的云端服务器的公网ip" |
接下来使用ssh命令进行测试一下即可:
1 | ssh -p 6000 user@publicip |
成功界面如下所示:
- Title: 使用frp内网穿透以便ssh连接服务器
- Author: Keith
- Created at : 2024-04-19 20:21:56
- Updated at : 2024-04-19 20:24:22
- Link: https://redefine.ohevan.com/2024/04/19/使用frp内网穿透以便ssh连接服务器/
- License: This work is licensed under CC BY-NC-SA 4.0.