当前位置:首页 > 系统 > 使用frp进行内网穿透

使用frp进行内网穿透

系统3年前 (2019-11-12)

使用frp进行内网穿透

frp用来做穿透内网,将内网或防火墙之后的机器,对外网环境提供服务


实验环境

外网环境: Windows Server 2019服务器

内网环境1: CentOS 7.7服务器   应用nginx环境 端口33605

内网环境2: Windows Server2016  应用RDP 端口3389

内网环境3: Windows Server2012  应用RDP 端口3389


下载地址https://github.com/fatedier/frp/releases


Windows服务端

解压后只保留frps.exe和frps.ini,其余文件删除

编辑frps.ini

[common]
bind_addr = 0.0.0.0   #绑定所有地址
bind_port = 6001      #与客户端进行通信的端口
bind_udp_port = 7001
kcp_bind_port = 7000
#proxy_bind_addr = 127.0.0.1
#vhost_http_port = 33605
#vhost_https_port = 4430
#vhost_http_timeout = 60
#tcpmux_httpconnect_port = 1337
#dashboard_addr = 0.0.0.0
#dashboard_port = 7500
#dashboard_user = admin
#dashboard_pwd = admin
#enable_prometheus = true
log_file = ./frps.log
log_level = error
log_max_days = 1
disable_log_color = false
detailed_errors_to_client = true
authentication_method = token
authenticate_heartbeats = false
authenticate_new_work_conns = false
privilege_token = 1234567890
oidc_client_id =
oidc_client_secret = 
oidc_audience = 
oidc_token_endpoint_url = 
#heartbeat_timeout = 90
#allow_ports = 33605
max_pool_count = 50
max_ports_per_client = 0
tls_only = false
#subdomain_host = frps.com
tcp_mux = true
#custom_404_page = /path/to/404.html
udp_packet_size = 1500


cmd下运行

d:\tool\frp\frps.exe -c d:\tool\frp\frps.ini


或者注册为系统服务

使用frp进行内网穿透

cd到frp所在目录
安装 winsw install
开启 winsw start

如果需要拆卸
停止 winsw stop
拆卸 winsw uninstall

使用frp进行内网穿透 frp server.zip


Linux客户端

解压后只保留frpc和frpc.ini,其余文件删除

cd /root
wget https://github.com/fatedier/frp/releases/download/v0.29.1/frp_0.29.1_linux_amd64.tar.gz
tar xzvf frp_0.29.1_linux_amd64.tar.gz
mv frp_0.29.1_linux_amd64 frp
chmod +x /root/frp/frpc

vim /root/frp/frpc.ini
修改为
[common]
server_addr = 222.222.222.222   #服务端公网IP
server_port = 6001                      #与服务端通信的端口
#log_file = ./frpc.log                      
#log_level = info                            
#log_max_days = 1                        
privilege_token = 1234567890    #连接密码

[web]
type = tcp
local_ip = 127.0.0.1
local_port = 33605
remote_port = 33605

这里没有使用vhost方式,因为type配置为http,必须要设置域名解析


设置为系统服务

vim /usr/lib/systemd/system/frpc.service
增加
[Unit]
Description=Frp Client Service
After=network.target

[Service]
Type=simple
User=root
Restart=on-failure
RestartSec=5s
ExecStart=/root/frp/frpc -c /root/frp/frpc.ini
ExecReload=/root/frp/frpc reload -c /root/frp/frpc.ini

[Install]
WantedBy=multi-user.target

执行

systemctl enable frpc.service && systemctl start frpc.service
systemctl status frpc.service
systemctl is-active frpc.service
systemctl list-units  --type=service


Windows客户端

使用frp进行内网穿透 frp client.zip

解压后只保留frpc.exe和frpc.ini,其余文件删除

编辑frpc.ini

[common]
server_addr = 222.222.222.222
server_port = 6001
privilege_token = 1234567890
#http_proxy = http://user:passwd@192.168.1.128:8080
#http_proxy = socks5://user:passwd@192.168.1.128:1080
#http_proxy = ntlm://user:passwd@192.168.1.128:2080
disable_log_color = false
log_file = ./frpc.log
log_level = error
log_max_days = 1
disable_log_color = false
#admin_addr = 127.0.0.1
#admin_port = 7400
#admin_user = admin
#admin_pwd = admin
#assets_dir = ./static
pool_count = 5
tcp_mux = true
#user = your_name
login_fail_exit = true
protocol = tcp
tls_enable = true
#tls_cert_file = client.crt
#tls_key_file = client.key
#tls_trusted_ca_file = ca.crt
#dns_server = 8.8.8.8
#start = ssh,dns
#heartbeat_interval = 30
#heartbeat_timeout = 90
#meta_var1 = 123
#meta_var2 = 234
udp_packet_size = 1500

[RDP]
type = tcp
local_ip = 127.0.0.1
local_port = 3389
remote_port = 5000

其他计算机如果还要穿透RDP,配置文件需要改为

[common]
server_addr = 222.222.222.222
server_port = 6001
privilege_token = 1234567890

[RDP2]
type = tcp
local_ip = 127.0.0.1
local_port = 3389
remote_port = 6000


测试方法

浏览器访问

http://222.222.222.222:33605  就可以看到内网的nginx默认页面


mstsc连接

222.222.222.222:6000 可以远程管理


本站所有文章均可随意转载,转载时请保留原文链接及作者。

本文链接:https://www.vos.cn/os/368.html

相关文章

虚拟机下Centos7升级内核+安装vmware tools

虚拟机下Centos7升级内核+安装vmware tools

vm下环境,首先安装vmware tools挂载一下toolsmount -t iso9660 /dev/cdrom /mnt复制工具到主目录下cp ...

Fedora Workstation 23安装提示Failed to load ldlinux.c32错误

Fedora Workstation 23安装提示Failed to load ldlinux.c32错误

 以前使用u盘安装系统,选择刻录软件均为UltraISO,很是好用,但是今天刻录安装fedora23的时候,一直提示Boot failed:please change&n...

VTL6900实验 Oracle备份方案

VTL6900实验 Oracle备份方案

【实验需求】环境中有一台已安装好的Oracle服务器,Oracle数据库监听已打开,且工作在归档模式。服务器中已创建一个数据库实例oltp,oltp的当前数据量约为1G。预计:周一~周六,访问量较大,...

CentOS7安装cacti

CentOS7安装cacti

网上有一种叫cactiez的集成版本,rrd组件一直有问题,版本也太老,于是就想着重新搭建一个环境试试配置环境关闭Selinux vi /etc/selinux/config 将SELI...

利用LVM特性对EVE-NG硬盘分区扩容

利用LVM特性对EVE-NG硬盘分区扩容

下载的EVE-NG镜像中,存放模拟器镜像的分区太小了,上传几个cisco和juniper的模拟器就快满了,所以需要使用lvm特性对ubuntu server的硬盘分区进行扩容,首先先将eve-ng虚拟...

CentOS7 软RAID配置

CentOS7 软RAID配置

虚拟机添加4块新硬盘,形成5盘环境,做Linux软RAID磁盘阵列准备环境搭建添加硬件选择硬盘默认选择SCSI创建新虚拟磁盘容量默认20G,存储为单个文件加默认安装系统的,一共5个fdisk -l查看...