1、下载frp
下载链接
2、解压
tar xvf frp_0.40.0_linux_386.tar.gz
进入目录中可以看到以下七个文件
frpc:客户端可执行程序
frpc_full.ini:客户端所有配置项(可以再此文件查看frp的所有的配置项)
frpc.ini:客户端配置项
frps:服务端可执行程序
frps_full.ini:服务端所有配置项(可以再此文件查看frp的所有的配置项)
frps.ini:服务端配置项
LICENSE:许可证
3、配置服务端
<!--在服务端不需要客户端的可执行程序和配置,为了避免误操作,删除掉所有客户端的配置-->
[root@VM-16-15-centos frp_0.40.0]$ rm -rf frpc frpc_full.ini frpc.ini
[root@VM-16-15-centos frp_0.40.0]$ ll
total 13184
-rwxr-xr-x 1 root root 13471744 Oct 25 20:58 frps
-rw-r--r-- 1 root root 5010 Oct 25 21:01 frps_full.ini
-rw-r--r-- 1 root root 168 Nov 17 09:06 frps.ini
-rw-r--r-- 1 root root 11358 Oct 25 21:01 LICENSE
drwxr-xr-x 2 root root 4096 Oct 25 21:01 systemd
修改frps.ini
vim frps.ini
[common]
bind_port = 7000
dashboard_port = 7001
dashboard_user = admin
dashboard_pwd = 123456
启动服务端:
./frps -c frps.ini
启动后,可以通过http://server_ip:7001
4、配置supervisor启动服务端
[program:frps]
directory = /opt/frp_0.40.0
command = /opt/frp_0.40.0/frps -c /opt/frp_0.40.0/frps.ini
autostart = true ; 在 supervisord 启动的时候也自动启动
startsecs = 5 ; 启动 5 秒后没有异常退出,就当作已经正常启动了
autorestart = true ; 程序异常退出后自动重启
startretries = 3 ; 启动失败自动重试次数,默认是 3
user = root ; 用哪个用户启动
redirect_stderr = true ; 把 stderr 重定向到 stdout,默认 false
stdout_logfile_maxbytes = 20MB ; stdout 日志文件大小,默认 50MB
stdout_logfile_backups = 20 ; stdout 日志文件备份数
stdout_logfile = /var/log/frps_out.log ;日志文件
5、配置客户端:
[root@VM-16-100-centos frp_0.400]$ rm -rf frps frps_full.ini frps.ini
[root@VM-16-100-centos frp_0.400]$ ll
total 11M
-rw-r--r-- 1 yyq yyq 12K Aug 3 2021 LICENSE
-rw-r--r-- 1 yyq yyq 662 Oct 24 15:45 frp_service.conf
-rwxr-xr-x 1 yyq yyq 11M Aug 3 2021 frpc
-rw-r--r-- 1 yyq yyq 455 Mar 9 19:36 frpc.ini
-rw-r--r-- 1 yyq yyq 9.3K Aug 3 2021 frpc_full.ini
-rw-r--r-- 1 yyq yyq 635 Oct 24 15:45 reamemd.txt
drwxr-xr-x 2 yyq yyq 4.0K Aug 3 2021 systemd
修改frpc.ini
[root@VM-16-100-centos frp_0.40.0]$ cat frpc.ini
[common]
server_addr = 150.118.120.1
server_port = 7000
[ubuntu-ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 7003
[common]表示以下配置信息是一些公用配置信息
server_addr是我们服务端即外网服务器的公网访问ip server_port是我们前面在服务端配置的frps.ini中bind_port中对应的端口。需保持两边一致
[ssh]表示以下配置信息是我们使用ssh连接内网服务器时需要的一些配置信息
type 是连接类型,ssh方式连接就用tcp
local_ip 是本机ip,直接使用127.0.0.1即可
local_port 是本地ssh端口,ssh默认端口为22
remote_port 是外网服务器请求过来的端口 注:阿里云服务器需要在esc管理中配置安全组规则中添加6000端口
启动客户端
./.frpc -c frpc.ini
6、配置supervisor启动客户端
[program:frpc]
directory = /opt/frp_0.40.0
command = /opt/frp_0.40.0/frpc -c /opt/frp_0.40.0/frpc.ini
autostart = true ; 在 supervisord 启动的时候也自动启动
startsecs = 5 ; 启动 5 秒后没有异常退出,就当作已经正常启动了
autorestart = true ; 程序异常退出后自动重启
startretries = 3 ; 启动失败自动重试次数,默认是 3
user = yyq ; 用哪个用户启动
redirect_stderr = true ; 把 stderr 重定向到 stdout,默认 false
stdout_logfile_maxbytes = 20MB ; stdout 日志文件大小,默认 50MB
stdout_logfile_backups = 20 ; stdout 日志文件备份数
stdout_logfile = /var/log/frpc_out.log ;日志文件
supervisor命令
supervisorctl update 更新
supervisorctl start frpc 启动frpc
supervisorctl stop frpc 停止 frpc
supervisorctl shutdown 关闭supervisor
|