frp内网穿透,centos7+frp成功样例
准备工作:
阿里云服务器一台,备案域名一个,本地服务器一台(本人用的虚拟机centos7)
frp文件:frp_0.22.0_linux_amd64.tar.gz
链接:https://pan.baidu.com/s/1lcJ3_OsK7I5HSoF1lKvf0Q
提取码:5ak6
本文只介绍安装过程,原理自行百度。
1.下载frp_0.22.0_linux_amd64.tar.gz文件,放置服务器的任意目录下(自己方便找到的),本人放在: cd /var/
解压:tar -zxvf frp_0.22.0_linux_amd64.tar.gz
进入解压的文件夹:cd frp_0.8.1_linux_amd64
进去之后注意这四个文件,其他不用管,也不用动:
frps.ini: 服务端配置文件
frps: 服务端软件
frpc.ini: 客户端配置文件
frpc: 客户端软件
步骤一在阿里云服务器与本地服务器同时安装,方法一致,不同的是上面的四个文件的配置不同
2.配置说明
阿里云服务器配置即服务器端的配置文件在:frps.ini
[common]
bind_port = 3389 frps提供的端口
vhost_http_port = 8080 域名访问的端口
[web]
type = http 本地服务器访问理性
local_port = 80 本地服务器访问端口
custom_domains = s.lzh.cn阿里云服务器访问域名
auth_token = ntflzhcn 验证token,随便写,最好是字母加数字
本地服务器配置文件在:frpc.ini
[common]
server_addr = 47.92.22.110 阿里云服务器ip地址
server_port = 3389 阿里云服务器frps提供的端口
auth_token = ntflzhcn 验证token,同阿里云服务器
[web]
type = http 本地服务器的访问类型
local_port = 80 本地服务器访问的端口
custom_domains = s.lzh.cn 同阿里云服务器
阿里云服务器(配置frps.ini )和本地服务器(配置frpc.ini)仅配置这两个文件,其他的都不用动,切记配置对应的文件名。
3.测试是否开通
首先必须在frp文件夹内操作才有效:cd /var/frp_0.22.0_linux_amd64/
启动阿里云服务器端frps:./frps -c ./frps.ini
出现如图所示内容表示启动成功:
同理,本地服务器进入相应的目录:cd /var/frp_0.22.0_linux_amd64/
启动本地服务器端frpc:./frpc -c ./frpc.ini
出现如图所示内容表示启动成功:
4.设置开启自启动(很重要,不然连接无法保持)
本地服务器路径:/usr/lib/systemd/system,创建frpc.service文件,内容如下:
[Unit]
Description=frpc
After=network.target
[Service]
TimeoutStartSec=30
ExecStart=/var/frp_0.22.0_linux_amd64/frpc -c /var/frp_0.22.0_linux_amd64/frpc.ini
ExecStop=/bin/kill $MAINPID
[Install]
WantedBy=multi-user.target
上述步骤完成后,可能会用到的命令:
启动 frp 并设置开机启动
systemctl enable frps
systemctl start frps
systemctl status frps
阿里云服务器路径如下:/usr/lib/systemd/system,创建frps.service文件,内容如下:
[Unit]
Description=frps
After=network.target
[Service]
TimeoutStartSec=30
ExecStart=/var/frp_0.22.0_linux_amd64/frps -c /var/frp_0.22.0_linux_amd64/frps.ini
ExecStop=/bin/kill $MAINPID
[Install]
WantedBy=multi-user.target
启动 frp 并设置开机启动
systemctl enable frpc
systemctl start frpc
systemctl status frpc
刚刚配置的服务需要让systemctl能识别,就必须刷新配置
sudo systemctl daemon-reload
5测试:
s.lzh.cn:8080 直接访问即可
过程中遇到的问题:
1.本地服务器提示:custom_domains and subdomain should set at least one of them
解决办法即在本地服务器frpc.ini中,添加custom_domains = s.lzh.cn 即可解决
2.提示未找到站点。
本地服务器添加解析: vi /etc/hosts
补充说明:
1.我用的是备案好的案例云服务器,当然也可以用香港的服务器不用备案,只要你的服务器可以用域名解析并且可以正常访问,都可以做到。
2.我的本地服务器有多个网站,如果只放一个网站问题2应该不会遇到
3. 本地服务器和阿里云服务器我没有做开机自启动,重启后需要再次开启
4.阿里云服务器所涉及到的端口,不仅要在服务器上开启,阿里云控制台安全组也要开启
5过程中可能会重启frp
查看frp的进程号:ps -aux | grep frp,如下图所示:
杀死该进程:kill -9 17210,接下来按照步骤3启动即可
6.如果要访问多个网站可以参考下图:
阿里云服务端frps.ini
本地服务器端