前期准备:云服务器或者VPS,有公网ip或域名,内网主机一台。本文所用的服务端Linux系统,客户端是windows7系统。 服务端(Linux)搭建步骤1:下载服务端的frp:
2.使用tar命令解压下载成功的压缩包文件:tar -zxvf frp_0.33.0_linux_arm64.tar.gz3.使用cd命令进入解压出来的文件夹:cd frp 4.修改服务器配置文件(frps.ini):
按i,进行编辑,将内容修改下面的: [common]bind_port = 7000vhost_http_port = 8000vhost_https_port = 90dashboard_user = admin #dashboard 密码dashboard_pwd = admin#dashboard 端口,启动成功后可通过浏览器访问如http://ip:7500dashboard_port = 7500 5.启动frp服务端:让frp在后台运行: nohup ./frps -c frps.ini & > frp.log这样即使关掉了SSH,frp依然在后台运行中。 到此,服务端的搭建已经完成。
另,停止运行frp的方法: 杀掉frps进程即可。使用ps命令,查看进程: ps -ef | grep frp使用kill命令杀掉: kill -9 进程id
客户端搭建步骤1.下载客户端的frp: 在以上地址下载最新windows压缩包 2.解压下载成功的压缩包3.编辑frpc.ini文件,内容如下:[common]server_addr = x.x.x.x #公网ipserver_port = 7000[mysql]type = tcp#local_ip = 127.0.0.1local_port = 3306 #本地mysql端口remote_port = 3366 #印射公网端口#连接Windows远程桌面的[rdp]type = tcplocal_ip = 127.0.0.1local_port = 3389remote_port = 3389custom_domains = x.x.x.x #公网ip或域名[web01]type = httplocal_ip = 127.0.0.1local_port = 80locations = /custom_domains = x.x.x.x #公网ip或域名[web02]type = httplocal_ip = 127.0.0.1local_port = 8090locations = /cardmanagercustom_domains = x.x.x.x #公网ip或域名#通过tcp来连接svn[svn]type = tcplocal_ip =127.0.0.1local_port = 81remote_port = 9000如果客户端也是linux,也是一样的配置
4.启动frp客户端:在目录下打开cmd命令窗口,执行如下命令: frpc.exe -c frpc.ini
到此,客户端的搭建已经完成。
客户端windows开机启动 我们已经可以通过阿里云服务器远程到非公网的电脑了,如果自启动的话那就更完美了。 1、设置frpc自启动,自启动的脚本如下 @echo off:homefrpc -c frpc.inigoto home保存为start.bat保存到frpc.exe同级目录下 右键start.bat创建快捷方式 然后把快捷方式复制放到启动目录即可 C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp
客户端linux开机自启:
方法1:(如果无法启动脚本可以sleep 10秒)
自己脚本 myservice 如下:#!/bin/bash# chkconfig: 2345 10 90# description: myservice ...echo "hello world" > /tmp/myservice.log
将自己写的脚本move到 /etc/rc.d/init.d/ 下面并修改权限
mv myservice /etc/rc.d/init.d/
chmod +x myservice
将脚本加入开机服务
chkconfig --add myservice #把myservice添加到系统服务列表
chkconfig myservice on #设定myservice的开关(on/off)
chkconfig --list myservice #就可以看到已经注册了myservice的服务
方法2:
以脚本autostart.sh为例:#!/bin/bash#description:开机自启脚本/usr/local/tomcat/bin/startup.sh #启动tomcat赋予脚本可执行权限(/opt/script/autostart.sh是你的脚本路径)
chmod +x /opt/script/autostart.sh 打开/etc/rc.d/rc.local或/etc/rc.local文件,在末尾增加如下内容
su - user -c '/opt/script/autostart.sh' 在centos7中,/etc/rc.d/rc.local的权限被降低了,所以需要执行如下命令赋予其可执行权限
chmod +x /etc/rc.d/rc.local
问题解决: 2018/11/25 10:19:18 [W] [control.go:113] login to server failed: dial tcp *.*.*.*:7000: connect: no route to host网上搜索了一下,也有人遇到过类似情况,关闭了服务器防火墙就OK了,我也试了一下,服务器centos7,看了一下防火墙状态,结果是running,然后就关闭了防火墙 [root@aiuyo ~]# firewall-cmd --state running[root@aiuyo ~]# systemctl stop firewalld.service
|