frp内网穿透
frp是一个快速反向代理,可帮助您将NAT或防火墙后面的本地服务器暴露给Internet。支持tcp&udp以及http和https协议,其中请求可以通过域名转发到内部服务。
文章来源:简书-Acamy丶
选择相应的版本下载,服务器端、客户端均在github项目中
服务器搭建
下载安装
wget https://github.com/fatedier/frp/releases/download/v0.48.0/frp_0.48.0_linux_amd64.tar.gz
tar xvf frp_0.48.0_linux_amd64.tar.gz
mkdir /usr/etc
mv frp_0.48.0_linux_amd64 /usr/etc/frp #移动到自己想存放的目录
vi /usr/etc/frp/frps.ini
修改如下
[common]
bind_addr=0.0.0.0
bind_port = 7000
vhost_http_port = 8880
vhost_https_port = 8443
token=icxxxcom #秘钥
subdomain_host = imcxx.com #域名
dashboard_port = 7500 #管理端口
dashboard_user = admin #用户
dashboard_pwd = admin #密码
使用了cloudflare,需用以下端口
执行:./frps -c ./frps.ini
浏览器输入IP:7500
,使用配置的用户密码登录,即可查看frp各状态。
开机启动
编辑frp脚本文件:vi /etc/systemd/system/frps.service
[Unit]
Description=Frps
After=network.target
[Service]
Type=simple
User=nobody
Restart=on-failure
RestartSec=5s
ExecStart=/usr/etc/frp/frps -c /usr/etc/frp/frps.ini
[Install]
WantedBy=multi-user.target
执行以下命令启动 frps 服务:
systemctl enable frps
systemctl start frps
需要用到的命令:
启动:service frps start
停止:service frps stop
重启:service frps restart
状态:service frps status
客户端搭建
LINUX SSH配置
下载安装方式和frps一样vi /usr/etc/frp/frpc.ini
修改如下
[common]
server_addr = frps服务端IP
server_port = 7000
token=icxxxcom
[ssh]
type = tcp
local_port = 22 #SSH端口
remote_port = 5000
开机启动:vi /etc/systemd/system/frpc.service
[Unit]
Description=Frp Client Service
After=network.target
[Service]
Type=simple
User=nobody
Restart=on-failure
RestartSec=5s
ExecStart=/usr/etc/frp/frpc -c /usr/etc/frp/frpc.ini
ExecReload=/usr/etc/frp/frpc reload -c /usr/etc/frp/frpc.ini
[Install]
WantedBy=multi-user.target
执行以下命令启动 frpc 服务:
systemctl enable frpc
systemctl start frpc
与frps一样
然后通过XSHELL等软件,IP为frps服务器一致,端口为5000,root账号密码为frpc主机的。
远程桌面配置
下载后解压到存放目录,如:D:\frpc\
编辑frpc.ini
[common]
server_addr = 服务器IP
server_port = 7000
token=icxxme
[远程桌面]
type = tcp
local_port = 3389
remote_port = 58001
下载WINSW:
WIN7SP1以上的选择WinSW.NET4.exe
重命名并复制到D:\frpc\WinSW.exe
新建winsw.xml
文件,修改为以下内容
<service>
<id>frpc</id>
<name>frpc</name>
<description>frp内网穿透</description>
<executable>frpc</executable>
<arguments>-c frpc.ini</arguments>
<logmode>reset</logmode>
</service>
然后以管理员身份运行CMD,注意,不能使用powershell
cd C:\Windows\Microsoft.NET\Framework\v4.0.30319
InstallUtil D:\frpc\WinSW.exe
d:
cd frpc
WinSW.exe install
卸载:将最后改为WinSW.exe uninstall
运行services.msc
,可以看到frpc服务,启动,并设置属性-恢复,失败操作重新启动服务
如果启动提示1067错误检查服务器端口是否开放
依旧无法注入系统服务,可以使用VBS+BAT执行
编辑frpc.bat
放到D:\frpc
目录,内容如下:
@echo off
set _interval=3
start /b D:\frpc\frpc.exe -c D:\frpc\frpc.ini
goto frpc
编辑frpc.vbs
放到C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp
目录,内容如下:
set ws=WScript.CreateObject("WScript.Shell")
ws.Run "D:\frpc\frpc.bat /start",0
双击frpc.vbs
启动,该目录为开机启动,后期开机会自动运行
运行mstsc
打开远程桌面,输入服务器IP:58001
,就可以远程win了
路由器配置
以梅林为例,软件中心安装frpc穿透,选择自定义配置,输入:
[common]
server_addr = 服务器IP
server_port = 7000
token=icxxme
[路由器]
type = http
local_port = 80
subdomain = web
浏览器输入:web.imcxx.com:8880
,即可外网访问路由器