赞
踩
服务端安装配置过程,这里以x86_64 的linux系统进行展示,这里使用的是centos 7.9
这里下载的是0.44 的版本,测试了几个版本,有的是服务端下载不了,有的是客户端下载不了,只有0.44的正常下载了,因此就用了这个版本的frp。
# 可尝试使用下面任何一个地址下载,如果不行就根据地址去官网直接下载到本地上传到服务器
wget https://github.com/fatedier/frp/releases/download/v0.44.0/frp_0.44.0_linux_amd64.tar.gz
wget http://github.com/fatedier/frp/releases/download/v0.44.0/frp_0.44.0_linux_amd64.tar.gz
# 解压
tar -zxvf frp_0.44.0_linux_amd64.tar.gz
# 修改文件名
mv frp_0.44.0_linux_amd64 frp
# 进入文件夹
cd frp
# 编辑服务端配置文件 frps.ini 其中frpc开头的都是客户端文件,这里可以删除
vim frps.ini
下面是默认的配置信息:
[common]
# 服务端和客户端通信的端口
bind_port = 7000
增加以下配置内容
[common]
# 服务端和客户端通信配置
bind_port = 7000
# 监控面板配置
dashboard_port = 7500
dashboard_user = root
dashboard_pwd = super
# 认证配置,这个必须增加,使用token没有成功,网上找到有用这种方式认证的,更改后可以使用
privilege_mode = true
privilege_token = pwd123
# http 对外暴露端口,对外暴露的http端口需要使用这个进行暴露
vhost_http_port = 8080
启动很简单,一个命令即可,启动后可以使用http://公网ip:7500 打开监控页面来验证是否正常启动,用户名和密码就是上面配置的用户名密码
# 启动命令
./frps -c frps.ini
启动完成后,控制台会打印 frps started successfully 的信息,然后我们就可以登录监控面板进行确认了。不过确认之前还需要将对应端口进行放行,如果你是云服务器,需要在云服务器的安全组中将以上配置信息的所有端口进行放行(7000可以不用)。放行完成后登录监控面板进行验证:
这里我的客户端已经搭建完成了,所以显示proxy counts有两个,这样服务端的搭建就成功了。
上面的启动命令,一旦退出命令界面程序就会暂定,这里使用systemd来管理服务的启动状态,并设计frps的开机启动,这样就不用关心服务端的启动问题了,可谓一劳永逸。
# 开始配置
sudo vim /lib/systemd/system/frps.service
填入以下内容即可,这里需要根据自己的frps文件路径自行设置frps的位置,我的是/root/frp/frps
[Unit]
Description=frps service
After=network.target syslog.target
Wants=network.target
[Service]
Type=simple
#启动服务的命令(此处写你的frps的实际安装目录)
ExecStart=/root/frp/frps -c /root/frp/frps.ini
[Install]
WantedBy=multi-user.target
设置开机启动等其他命令:
# 开机启动
sudo systemctl enable frps
# 启动frps
sudo systemctl start frps
# 停止frps
sudo systemctl stop frps
# 直接重启
sudo systemctl restart frps
这样就实现了frps的开启启动,以后就可以不用问了
这里展示客户端的安装过程,这里客户端使用的是windows系统,应该大部分都是windows系统。这里客户端的版本应该和服务端版本保持一致,都是使用0.44 的版本。
下载地址如下:
https://github.com/fatedier/frp/releases/tag/v0.44.0
下载的就是上图的的包,这个包都是解压即用的。
下载下来以后,直接解压到指定目录即可,这里解压到D盘根目录下,并重命名文件夹名为frp,所以我的frpc的文件的路径是D:\frp\frpc
[common] # 服务端ip,这个不可以变 server_addr = 116.204.89.*** # 服务端通信端口,这个也不可以变 server_port = 7000 # 服务端的密码,也不可以变,和服务端保持一致 privilege_token = pwd123 # 设置为true就行 tls_enable = true [ssh] # 这个是连接类型 type = tcp local_ip = 172.17.65.57 local_port = 22 # 这个端口,无需在服务端声明,但是需要在服务器端放行 remote_port = 6000 [http] # 服务类型 type = http # 本地web服务端口 local_port = 8080 # 服务端ip或者域名,这是笔者的复习任务网站 custom_domains = ebbing.xinhengcompany.cn
这里是暴露了两个端口,一个是本地的22,一个是本地的8080,
本地的tcp的22端口映射到服务器的6000(无需在服务端配置,只需要放行这个端口就可以),支持ssh到本地。这样可以方便远程控制电脑,而无需安装向日葵等软件了。
本地的http的8080端口映射到服务器的8080(这个是在服务端配置的),这样可以把本地的web服务暴漏到公网中。
这里使用的是powershell进行启动,我的安装目录是D:\frp\frpc,需要cd到D:\frp\,然后执行下面的命令:
# 这里使用的是powershell进行启动的
.\frpc -c frpc.ini
如果出现以下信息,说明配置成功了
尝试使用ssh到服务器的6000端口时,本地提示下面信息:
说明本地不支持远程的ssh,如果安装了ssh服务,大概是安全软件拦截了,这里是因为没有安装ssh服务。
注意:以管理员身份启动powershell,再执行以下命令
Add-WindowsCapability -Online -Name OpenSSH.Server
运行后,弹出以下界面,这个下载有点慢,需要耐心等待
出现如下页面说明安装完成了:
启动ssh服务,并查看ssh状态
# 启动ssh服务
Start-Service sshd
# 停止ssh服务
Stop-Service sshd
# 检查ssh状态
Get-Service sshd
如下status是running则表示正常启动了
设置ssh的开机启动,这样ssh就可以每次随着电脑的启动而启动了不需要我们手动再进行管理了。
Set-Service -Name sshd -StartupType 'Automatic'
这里设置第一次没有生效,重复操作了几次才生效,不知道为什么,如果这个命令不好使,可以使用windows+R,输入services.msc
找到Open SSH service 设置为开机启动也是一样的。
不过本地安装ssh作用并不是很大,最好还是使用windows的远程桌面连接,更方便,不过我的是家庭版,不支持远程桌面所以没啥用。
前面配置了远端服务器的8080到本地的8080的映射,所以这里通过域名ebbing.xinhengcompany.cn:8080来访问本地的web服务,如下:
可以看到web页面已经正常打开了,到这里也就实现了内网穿透的web穿透了。
不过还不够,因为每次启动frpc都是使用powershell来进行启动的,这样很麻烦,还需要为他配置一个开机启动的功能。
下面是一个脚本,可以利用vbscript来实现frpc的后台启动,新建一个fprc.bat ,将以下内容放进去
REM 关闭窗口的命令回显
@echo off
if "%1" == "h" goto begin
REM 使用VBScript重新启动脚本并附加参数 "h" 实现程序的后台运行
mshta vbscript:createobject("wscript.shell").run("""%~nx0"" h",0)(window.close)&&exit
:begin
REM 切换到 frpc.exe 所在的目录
cd /d C:\frp
REM 启动 frpc.exe,并指定配置文件为 frpc.ini,并在后台运行
start "" /b frpc.exe -c frpc.ini
然后windows+R 打开开机启动,输入shell:startup,将frpc.bat放进去即可:
然后重启验证frpc.exe是否正常启动即可。
重启验证失败,上面的脚本可以实现在不重启下的后台启动,但是重启时执行脚本到vb脚本行时报错,搜索一圈没有解决,最后将脚本降级到了开启重启然后最小化,就是下面的脚本了,最后将脚本放到启动菜单下就行了。
REM 关闭命令回显,即在执行命令时不在命令窗口上显示命令本身
@echo off
REM 切换到 frpc.exe 所在的目录
cd /d D:\frp
REM 启动 frpc.exe,并指定配置文件为 frpc.ini,并最小化窗口
start /min frpc.exe -c frpc.ini
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。