硬件准备
- 树莓派
- 域名+有公网IP的服务器(网上有免费的frp服务器提供)
- 电脑+路由器
1、更改密码
把树莓派连接路由器,用IPscanner找到树莓派的ip地址,使用putty通过SSH连接。
默认用户名为:pi
密码为:raspberry
更改登陆密码
1 | passwd |
设置root账户的密码
1 | sudo passwd root |
2、安装 Systemd(树莓派和服务器都要执行一遍)
1 2 3 4 5 6 7 8 9 | apt-get update su #登陆为root账户 apt-get install nano apt-get install systemd apt-get install systemd-sysv |
3、搭建frp 服务端 – frps(服务器篇)
frp最新版本releases,这里我用Ubuntu16.04 64位服务器演示。
1 2 3 4 5 6 7 8 9 | wget https://github.com/fatedier/frp/releases/download/v0.29.0/frp_0.29.0_linux_amd64.tar.gz tar -zxvf frp_0.29.0_linux_amd64.tar.gz sudo rm -rf frp_0.29.0_linux_amd64.tar.gz cd frp_0.29.0_linux_amd64 nano frps.ini #替换为以下内容,并自行修改相关参数 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | [common] bind_addr = 0.0.0.0 bind_port = 7000 bind_udp_port = 7001 kcp_bind_port = 7000 dashboard_port = dashboard_port_number dashboard_user = dashboard_user_name dashboard_pwd = dashboard_pwd_value privilege_token = privilege_token_value vhost_http_port = 88 #建议不要用80端口 vhost_https_port = 448 #建议不要用443端口 log_file = ./frps.log log_level = info log_max_days = 3 max_pool_count = 20 tcp_mux = true max_ports_per_client = 0 authentication_timeout = 900 |
按下Ctrl+X,输入Y并回车保存
配置开机自启
1 2 3 4 5 6 7 8 9 10 11 | cp frps /usr/local/bin/frps mkdir /etc/frp cp frps.ini /etc/frp/frps.ini cd .. sudo rm -rf frp_0.29.0_linux_amd64 nano /usr/lib/systemd/system/frps.service #将下面代码复制粘贴进去 |
1 2 3 4 5 6 7 8 9 10 11 | [Unit] Description=frps After=network.target [Service] TimeoutStartSec=30 ExecStart=/usr/local/bin/frps -c /etc/frp/frps.ini ExecStop=/bin/kill $MAINPID [Install] WantedBy=multi-user.target |
按下Ctrl+X,输入Y并回车保存
设置开机自启
1 2 3 | systemctl enable frps systemctl start frps systemctl status frps |
部分服务器上,可能需要加 .service 后缀来操作,即:
1 2 3 | systemctl enable frps.service systemctl start frps.service systemctl status frps.service |
搭建完成之后重启
1 | sudo reboot |
访问控制台
在浏览器输入以下网址,即可访问frp的控制台
1 | http://服务器IP:dashboard_port_number |
4、搭建 frp 客户端 – frpc(树莓派篇)
frp最新版本releases,这里我用树莓派3B+ raspbian 32位演示。
1 2 3 4 5 6 7 8 9 10 11 | su #输入root账户密码切换为root用户 wget https://github.com/fatedier/frp/releases/download/v0.29.0/frp_0.29.0_linux_arm.tar.gz tar -zxvf frp_0.29.0_linux_arm.tar.gz sudo rm -rf frp_0.29.0_linux_arm.tar.gz cd frp_0.29.0_linux_arm nano frpc.ini #替换为以下内容,并自行修改相关参数 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | [common] server_addr = your_server_ip server_port = 7000 privilege_token = privilege_token_value protocol = tcp use_encryption = true use_compression = true log_file = ./frpc.log log_level = info log_max_days = 3 tcp_mux = true login_fail_exit = false [raspberrypi] type = http local_ip = 127.0.0.1 local_port = 80 custom_domains = your_domain [ssh] type = tcp local_ip = 127.0.0.1 local_port = 22 remote_port = 222 |
按下Ctrl+X,输入Y并回车保存
配置开机自启
1 2 3 4 5 6 7 8 9 10 11 | cp frpc /usr/local/bin/frpc mkdir /etc/frp cp frpc.ini /etc/frp/frpc.ini cd .. sudo rm -rf frp_0.29.0_linux_arm nano /usr/lib/systemd/system/frpc.service #将下面代码复制粘贴进去 |
1 2 3 4 5 6 7 8 9 10 11 | [Unit] Description=frpc After=network.target [Service] TimeoutStartSec=30 ExecStart=/usr/local/bin/frpc -c /etc/frp/frpc.ini ExecStop=/bin/kill $MAINPID [Install] WantedBy=multi-user.target |
按下Ctrl+X,输入Y并回车保存
设置开机自启
1 2 3 | systemctl enable frpc systemctl start frpc systemctl status frpc |
部分服务器上,可以需要加 .service 后缀来操作,即:
1 2 3 | systemctl enable frpc.service systemctl start frpc.service systemctl status frpc.service |
搭建完成之后重启
1 | sudo reboot |