内网穿透方法很多,本文以github上很火的frp为例
1.frp官方
文档:https://gofrp.org/zh-cn/docs/overview/
1.1 下载
https://github.com/fatedier/frp/releases
选中合适的版本
2. 服务端(服务器)搭建frps
需要公网IP服务器
选中合适的目录存放
以cd /usr/local/coisini
为例
wget https://github.com/fatedier/frp/releases/download/v0.58.1/frp_0.58.1_linux_amd64.tar.gz
2.2 解压
tar -zxvf frp_0.58.1_linux_amd64.tar.gz
2.3 重命名
mv frp_0.58.1_linux_amd64 frp
2.4 目录赋权
chown -R root:root frp
2.5 编辑frps.ini配置文件
cd frp/
vi frps.ini
2.6 添加:
两个端口号:7000 内网数据交互、7500 frp图形化界面
token 内网机器和frp服务器建立连接时的密码
[common]
# 监听端口
bind_port = 7000
# 面板端口
dashboard_port = 7500
# 面板账号
dashboard_user = coisini
# 面板密码
dashboard_pwd = coisini
# token 身份认证
token = coisini
2.7 开放端口
(云服务器 需要去厂家控制台 服务器防火墙 开放
):
firewall-cmd --add-port=7500/tcp --permanent
firewall-cmd --reload
2.8 配置开机自启
vi /etc/systemd/system/frps.service
2.9 添加
[Unit]
# 服务名称
Description = frps server
After = network.target syslog.target
Wants = network.target
[Service]
Type = simple
# 启动frps的命令,注意路径
ExecStart = /usr/local/coisini/frp/frps -c /usr/local/coisini/frp/frps.ini
[Install]
WantedBy = multi-user.target
ESC + :wq 保存退出
2.10 相关命令
# 重新加载配置
systemctl daemon-reload
# 启动frp
systemctl start frps
# 停止frp
systemctl stop frps
# 重启frp
systemctl restart frps
# 查看frp状态
systemctl status frps
启动之后,就可以访问web页面了 http://ip:7500
3. 客户端(本地)搭建frpc
3.1 选中合适的目录存放
以
cd /usr/local/coisini
为例
wget https://github.com/fatedier/frp/releases/download/v0.58.1/frp_0.58.1_linux_amd64.tar.gz
3.2 解压
tar -zxvf frp_0.58.1_linux_amd64.tar.gz
3.3 重命名
mv frp_0.58.1_linux_amd64 frp
3.4 目录赋权
chown -R root:root frp
3.5 编辑frpc.ini配置文件
cd frp/
vi frpc.ini
3.6 添加
[common]
# 服务器公网IP
server_addr = xxx.xxx.xxx.xx
# 服务端的bind_port端口
server_port = 7000
# token 身份认证,跟服务端保持一致
token = coisini
# 设置需要映射的端口
[coisini_blog]
type = tcp
local_ip = 127.0.0.1
local_port = 8080
# 设置映射端口
remote_port = 8080
[coisini_view]
type = tcp
local_ip = 127.0.0.1
local_port = 8081
# 设置映射端口
remote_port = 8081
3.7 配置开机自启
vi /etc/systemd/system/frpc.service
3.8 添加
[Unit]
# 服务名称
Description = frpc server
After = network.target syslog.target
Wants = network.target
[Service]
Type = simple
# 启动frps的命令,注意路径
ExecStart = /usr/local/coisini/frp/frpc -c /usr/local/coisini/frp/frpc.ini
[Install]
WantedBy = multi-user.target
ESC + :wq 保存退出
3.9 相关命令
# 重新加载配置
systemctl daemon-reload
# 启动frp
systemctl start frpc
# 停止frp
systemctl stop frpc
# 重启frp
systemctl restart frpc
# 查看frp状态
systemctl status frpc
这样就可以远程访问了,快试试
http://ip:8080
http://ip:8081
感谢阅览,暂时记录到这,结束。