利用云服务器搭建frp内网穿透访问远程桌面教程

主要应用场景:针对公司员工放假回家使用外网无法远程操作公司的服务器或者电脑,这里通过云服务器搭建一个frp服务,实现内网穿透,从而可以直接通过远程桌面或者其他工具实现对公司内的服务器或者电脑进行操作。
 

frp的作用

利用处于内网或防火墙后的机器,对外网环境提供 http 或 https 服务。

对于 http, https 服务支持基于域名的虚拟主机,支持自定义域名绑定,使多个域名可以共用一个80端口。

利用处于内网或防火墙后的机器,对外网环境提供 tcp 和 udp 服务,例如在家里通过 ssh 访问处于公司内网环境内的主机。
 

FRP 安装

FRP 采用 Go 语言开发,支持 Windows、Linux、MacOS、ARM等多平台部署。FRP 安装非常容易,只需下载对应系统平台的软件包,并解压就可用。
 

服务器准备环境:

环境

系统

IP

端口

云服务器

Centos7.6

103.XX.XX.230(外网)

7000

虚拟化

windows 2019 x64

192.168.6.161(内网)

6000

关闭防火墙

Centos 7.5开始iptables就不存在了改成firewalld了,关闭掉方便点

systemctl stop firewalld.service

systemctl disable firewalld.service
 

关闭SElinux

SElinux是美国国家安全局开发的安全子系统,很麻烦,关闭了。

vim /etc/selinux/config

把SELNUX=enforcing换成SELINUX=disabled
 

服务器操作:

网上下载frp软件:

https://github-production-release-asset-2e65be.s3.amazonaws.com/48378947/4ad06a80-caa8-11e9-9b12-f5b83d2d0dc2?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A%2F20190919%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20190919T044730Z&X-Amz-Expires=300&X-Amz-Signature=3d585fbeb22f5d16a660cdd6d4539fe6804c1cffbe41fb8edc08c262d67cc6b7&X-Amz-SignedHeaders=host&actor_id=0&response-content-disposition=attachment%3B%20filename%3Dfrp_0.29.0_linux_amd64.tar.gz&response-content-type=application%2Foctet-stream

 

解压:tar -zxvf frp_0.29.0_linux_amd64.tar.gz

重命名:mv frp_0.29.0_linux_amd64 frp

cd frp

配置文件:vim frps.ini服务器开放的端口

[common]

bind_port = 7000
 

linux服务器新建frps.service方便控制frps服务

vim /etc/systemd/system/frps.service

[Unit]

Description=frps

After=network.target

[Service]

# Modify these two values and uncomment them if you have

# repos with lots of files and get an HTTP error 500 because

# of that

###

#LimitMEMLOCK=infinity

#LimitNOFILE=65535

ExecStart=/root/frp/frps -c /root/frp/frps.ini

ExecStop=/bin/kill $MAINPID

Restart=always

[Install]

WantedBy=multi-user.target
 

修改service文件权限使其生效并设置开机自启

chmod 644 /etc/systemd/system/frps.service

systemctl daemon-reload
 

# 设置frps开机自启

systemctl enable frps.service
 

启动

systemctl start frps.service
 

查看端口

netstat -anpt | grep frps




客服端配置(个人电脑)

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

由于客户端是windows所以下载选择:



解压,然后配置frpc.ini文件

[common]

server_addr = 103.XX.XX.230   #云服务器外面ip

bind_port = 7000

[ssh]

type = tcp

local_ip = 192.168.6.161      #内网ip

local_port = 3389

remote_port = 6000

启动服务

win+R 输入cmd

cd C:\frp

C:\frp>frpc -c frpc.ini



测试远程到公司内外去











自己的电脑涉及到经常重启问题,所以需要设置开启自启动客户端frpc:

用winsw将frp注册为系统服务

下载winsw https://github.com/kohsuke/winsw/releases ,改名为winsw.exe,放到frp相同的目录里,并在同一个目录里创建一个utf8编码的文本文件,文件名是 winsw.xml,内容是:

<service>

    <id>frp</id>

    <name>frp这里是服务的名称</name>

    <description>这里是服务的介绍,随便写</description>

    <executable>frpc</executable>

    <arguments>-c frpc.ini</arguments>

    <onfailure action="restart" delay="60 sec"/>

    <onfailure action="restart" delay="120 sec"/>

    <logmode>reset</logmode>

</service>

 

启动:以管理员权限打开一个命令窗口,cd到frp所在目录,执行:

winsw install

winsw start
 

如果要卸载服务,执行命令:

winsw stop

winsw uninstall


网友回帖

1条回帖