1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > 使用frps建立内网穿透从而实现外界连接内网电脑的全教程

使用frps建立内网穿透从而实现外界连接内网电脑的全教程

时间:2021-08-26 14:24:22

相关推荐

使用frps建立内网穿透从而实现外界连接内网电脑的全教程

1. 说明

我有台服务器,但它在内网里,我需要通过ssh方式访问它,目前可以采用:向日葵等商业软件,RustDesk等开源软件。或者,《自建内网穿透服务器》。

本教程把实现上述功能的所有步骤罗列出来,以及避坑攻略。注意,本教程采用Linux(公网服务器端、内网服务器端)。至于你自己ssh远程的客户端就随意了,windows和linux都可以ssh。

本教程参考了:

/video/BV1D7411q7cA?p=2

/qq_26290415/article/details/115839191

/frp-config/

/jackghq/article/details/54974141

等。

2. 工具准备

a. 带公网IP的公网服务器

b. 需要访问的内网服务器(很多教程叫它客户端,我认为这个实际是我需要访问的内网服务器,所以和其他人叫法有所区别。

c. 客户端(很多教程并未提及这个,实际设置上也有点trick。客户端是你自己的笔记本电脑之类的,你想要从客户端远程接入服务器)

3. 公网服务器申请

阿里云,腾讯云(轻量级应用即可满足一般需求)。截至 11月。Amazon依旧可以申请免费1年的服务器端。

网址:/cn/campaigns

申请免费1年的EC2。自己申请,具体教程要去找其他教程了。

本教程列出两个必要设置:

(1)EC2控制面板左侧,点击安全组。–》 找到”编辑入站规则“ --》编辑成下图3(所有流量均可访问)

(2)链接外网ip地址。这个ip地址,就是公网服务器的地址,也是你以后都要使用,来访问私网服务器的地址。有些教程是有公网域名的。也是可以的。本教程我们假设你申请到的IP是199.199.199.9

4. 公网服务器端设置

要求,使用root设置。

步骤1. 下载frps

cd ~wget /fatedier/frp/releases/frp_0.30.0_linux_amd64.tar.gztar -zxvf frp_0.30.0_linux_amd64.tar.gzmv frp_0.30.0_linux_amd64 frpcd frp/vi frps.ini

步骤2. 设置frps(请务必注意,这里是frps.ini,后面是frpc.ini,这个坑,耽误了我3个小时)

[common]bind_port = 7000token = ttt123# web online check status of frpdashboard_port=7500dashboard_user=shengdashboard_pwd=abc123# point to point bind_udp_port = 7001

这里的设置可变的项,有:

token,dashboard_user,dashboard_pwd,你可以设置为你想要的密钥,用户名和密码。后续有用。

你也可以增加其他服务端口,比如其他教程里加的:

# http, https portvhost_http_port = 8080vhost_https_port= 443

http

https服务。我不需要,所以没加。

步骤3. 开启服务并测试是否正常开启。

cd ~/frp./frps -c frps.ini

在外网服务器端开启该服务后,任何一台电脑,输入网址:

http://199.199.199.9:7500 (这个Ip请改成你自己申请到的IP)

输入账户sheng密码abc123(即你写的dashboard_user和dashboard_pwd的设置值)就可以直接访问该frp服务器端。查看状态。

步骤4. 内网服务器端设置。

在你的内网服务器,下载frps,

cd ~wget /fatedier/frp/releases/frp_0.30.0_linux_amd64.tar.gztar -zxvf frp_0.30.0_linux_amd64.tar.gzmv frp_0.30.0_linux_amd64 frpcd frp/vi frpc.ini

设置frpc.ini。请注意:

这里设置的是frpc.ini !!!

这里设置的是frpc.ini !!!

这里设置的是frpc.ini !!!

[common]server_addr = 199.199.199.9server_port = 7000token = ttt123# frpc客户端管理界面admin_addr = 127.0.0.1admin_port = 7400# 失败重连login_fail_exit = true[ssh1]type = tcplocal_ip = 0.0.0.0local_port = 22remote_port = 6001

这里设置的token必须和前面frps的token一致。

linux的ssh端口是22,所以必须使用22.

可以更改的有,

连接名:[ssh1]可以随意更改,以及增加。但不要重复。

local_ip:是你的内网服务器的ip地址。

remote_port可以设置为6000-7000随意。但不要重复。后续要用这个端口来ssh连接内网服务器。

步骤5. 内网服务器端测试

cd ~/frp./frpc -c frpc.ini

至此,你已经可以在任何一个客户端,访问内网服务器了。

步骤6. 客户端测试

注意坑2:

如果你的内网服务器是Ubuntu,那么需要开启ssh,(默认不开启)。开启ssh,开启ssh,开启ssh!!!

具体见:/jackghq/article/details/54974141

sudo apt-get install openssh-serverdpkg -l | grep sshps -e | grep ssh

然后,你用内网服务器的用户名和密码,即可访问内网服务器。

Windows:

putty里设置 IP: 199.199.199.9 Port: 6001

Linux:

ssh -p 6001 userid@199.199.199.9

也可以直接访问了。

步骤7:自启动设置(公网和内网服务器均需设置)

公网服务器端

cd /etc/systemd/system/vi frps.service

在frps.service里输入以下内容:

[Unit]Description=frps daemonAfter=syslog.target network.targetWants=network.target[Service]Type=simpleTimeoutStartSec=30ExecStart=~/frp/frps -c ~/frp/frps.iniRestart= alwaysRestartSec=1min[Install]WantedBy=multi-user.targetAlias=frps

接着开启自动启动,并开启frps服务:

systemctl enable frps.servicesystemctl start frpssystemctl status frps

内网服务器端

cd /etc/systemd/system/vi frpc.service

在frpc.service里输入以下内容:

[Unit]Description=frpc daemonAfter=syslog.target network.targetWants=network.target[Service]Type=simpleTimeoutStartSec=30ExecStart=~/frp/frpc -c ~/frp/frpc.iniRestart= alwaysRestartSec=1min[Install]WantedBy=multi-user.targetAlias=frpc

接着开启自动启动,并开启frpc服务:

systemctl enable frpc.servicesystemctl start frpcsystemctl status frpc

注意:

请自行检查并修改frps和frps.ini文件的路径。

请注意frpc和frps的区别

至此,所有设置完毕。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。