frp内网穿透需要域名吗?frp实现远程办公内网穿透
frp内网穿透需要域名吗?frp实现远程办公内网穿透bash openvpn-install.sh修改配置文件https://github.com/angristan/openvpn-install将openvpn-install.sh脚本拷贝到服务器中在内网服务器172.30.2.11上安装frp。同样先下载frp.# 下载frp可执行包 wget https://github.com/fatedier/frp/releases/download/v0.35.1/frp_0.35.1_linux_amd64.tar.gz # 解压 tar zxf frp_0.35.1_linux_amd64.tar.gz # 进入文件 cd frp_0.35.1_linux_amd64/ # 修改配置 vim frpc.ini # 内容如下: [common] # frp服务端ip、端口 server_addr = 39.33.12.12 server
centos 7下安装frp openxxx实现内网穿客服。
- frp 内网穿透工具
- openxxx 虚拟网络工具
云服务器、内网主机
安装frps(frp服务端)下载对应frp软件https://github.com/fatedier/frp/releases
# 下载frp可执行包
wget https://github.com/fatedier/frp/releases/download/v0.35.1/frp_0.35.1_linux_amd64.tar.gz
# 解压
tar zxf frp_0.35.1_linux_amd64.tar.gz
# 进入文件
cd frp_0.35.1_linux_amd64/
# 修改配置
vim frps.ini
# 内容如下:
[common]
# tunnel port通信管道
bind_port = 7000
# 连接认证token,客户端与服务端必须一致
#token = 123456
设置frps开机启动(frp服务端)
# 创建后台启动模版
vim /etc/systemd/system/frps.service
# 内容如下:
[Unit]
Description=frps
After=network.target
[Service]
ExecStart=/opt/frp_0.35.1_linux_amd64/frps -c /opt/frp_0.35.1_linux_amd64/frps.ini
[Install]
WantedBy=multi-user.target
# 启动
systemctl start frps.service
# 查看启动状态
systemctl status frps.service
# 开机自启
systemctl enable frps.service
安装frpc(frp客户端)
在内网服务器172.30.2.11上安装frp。
同样先下载frp.
# 下载frp可执行包
wget https://github.com/fatedier/frp/releases/download/v0.35.1/frp_0.35.1_linux_amd64.tar.gz
# 解压
tar zxf frp_0.35.1_linux_amd64.tar.gz
# 进入文件
cd frp_0.35.1_linux_amd64/
# 修改配置
vim frpc.ini
# 内容如下:
[common]
# frp服务端ip、端口
server_addr = 39.33.12.12
server_port = 7000
[vpn_test_tcp]
type = udp
# 内网服务器ip
local_ip = 172.30.2.11
# openvpn 端口
local_port = 1194
# 映射端口
remote_port = 21194
设置frpc开机启动(客户端)
# 创建后台启动模版
vim /etc/systemd/system/frpc.service
# 内容如下:
[Unit]
Description=frps
After=network.target
[Service]
ExecStart=/opt/frp_0.35.1_linux_amd64/frpc -c /opt/frp_0.35.1_linux_amd64/frpc.ini
[Install]
WantedBy=multi-user.target
# 启动
systemctl start frpc.service
# 查看启动状态
systemctl status frpc.service
# 开机自启
systemctl enable frpc.service
安装openvpn服务端
openvpn安装采用自动安装脚本安装,
https://github.com/angristan/openvpn-install
将openvpn-install.sh脚本拷贝到服务器中
bash openvpn-install.sh
修改配置文件
vim /etc/openvpn/server/server.conf
# 文件内容
local 172.30.2.11
port 1194
proto udp
dev tun
ca ca.crt
cert server.crt
key server.key
dh dh.pem
auth SHA512
tls-crypt tc.key
topology subnet
server 10.8.0.0 255.255.255.0
# 路由到内网172.30.2网断
push "route 172.30.2.0 255.255.255.0"
ifconfig-pool-persist ipp.txt
keepalive 10 120
cipher AES-256-CBC
user nobody
group nobody
persist-key
persist-tun
status openvpn-status.log
verb 3
crl-verify crl.pem
explicit-exit-notify
openvpn命令
systemctl start openvpn-server@server.service
systemctl status openvpn-server@server.service
systemctl stop openvpn-server@server.service
systemctl restart openvpn-server@server.service
再次运行openvpn-install.sh脚本,可以添加用户。
修改client文件
client文件默认生成在root目录下
client
dev tun
proto udp
# 修改此处端口为frpc配置的21194端口
remote 39.33.12.12 21194
resolv-retry infinite
nobind
persist-key
persist-tun
remote-cert-tls server
auth SHA512
cipher AES-256-CBC
删除下面两行
#ignore-unknown-option block-outside-dns
#block-outside-dns
verb 3
问题
1. 能连接内网,但不能打开百度
检查client.ovpn文件,删除如下两行内容
ignore-unknown-option block-outside-dns
block-outside-dns
附录frpc.ini客户端配置参考[common]
# 公网ip地址
server_addr = 139.196.xx.x
# 服务监听端口
server_port = 7000
# token校验
token = raven
#本地监控
admin_addr = 127.0.0.1
admin_port = 7400
admin_user = admin
admin_pwd = admin
#web服务
[web-http]
type = http
local_port = 80
local_ip = 127.0.0.1
# 可以设置二级、三级域名 服务器端无需设置subdomain_host
custom_domains = raven520.top www.raven520.top
#使用这个属性 服务端需用 subdomain_host 指定一个域名,并且只能用二级域名
#subdomain = hello
# 配置访问时候的账号密码
#http_user = abc
#http_pwd = abc
# tcp穿透 反向代理
[RDP]
type = tcp
local_port = 3389
# 指定服务器监听哪个端口进行监听。使用 ip:3388 即可远程连接本地主机
remote_port = 3388
local_ip = 0.0.0.0
frps.ini服务端配置参考
[common]
# frps绑定端口
bind_port = 7000
# http 访问端口
vhost_http_port = 80
#服务端监控
dashboard_port = 7500
dashboard_user = admin
dashboard_pwd = admin
#用这个可以指定域名,客户端可以使用 subdomain,指定一个二级域名。
#用了这个属性,客户端无法开启 custom_domains ,否则服务异常。
#subdomain_host = raven520.top
# token校验
token=raven