文章目录
一、学习目标
主要想讲自己家里的电脑可以通过手机或者远程的Windows连接。
这里主要是使用的frp,然后借助自己的阿里云的ecs的公网ip做成的。
当然,网上也有花生壳,小米球儿等【我这里不选择了,其一:这些我觉得都是经过人家服务器了,安全性需要考虑。其二、如果是免费的,网速肯定慢,收费的吧,还不如用自己的ecs的公网ip】。
二、frp做内网穿透:
连接的网速快慢,和你的ecs的带宽有关,有钱的话想快点,家服务器的宽带即可。
我的配置:
先说下我的配置,
服务器:阿里云的ecs,centos版本的Linux
家里的Windows(想可以外网连接的机器:自己家里的台式机)
如果家里的不是Windows,搜索其他文章吧,省的看半天耽误时间哈,不是Windows我不知道怎么弄,没弄过不敢保证
。
1、参考的一些文章:
可能记得不全,有些问题和踩的坑百度搜了就忘了,没有留下来。。。
frp项目:
2、下载frp的服务器软件和客户端软件:
frp_0.34.3_linux_amd64.tar.gz 这个文件是按照到我的服务器Linux(centos7.2)
frp_0.34.3_windows_amd64.zip 这个是本地Windows使用的
我的蓝奏云备份文件:
https://wwa.lanzous.com/b00uhhpbg
密码:dx96
3、ecs安装:
传输到ecs上,对了我的ecs是centos的。
- 解压压缩包:
tar -zxvf frp_0.34.3_linux_amd64.tar.gz
- 进入修改frps.ini
字段解释:
[common]
bind_port = 7000 # frp服务的端口号,可以自己定
dashboard_port = 7500 # frp的web界面的端口号
dashboard_user = user # web界面的登陆账户,自己修改
dashboard_pwd = pass # web界面的登陆密码,自己修改
authentication_method = token
token = xxxxx # frp客户端连接时的密码,自己修改
实际修改不要有中午和后面的注释,不然一直期待不了。【反正我这边是这样的,试了半天才找到原因】
[common]
bind_port = 7000
dashboard_port = 7500
dashboard_user = demo
dashboard_pwd = demo
authentication_method = token
token = 77e6789426d131e4d862ecac4c7d0c5d
4、ecs启动服务:
./frps -c ./frps.ini
记得开启端口号7500的:
登录界面测试:
自己服务器的公网ip:7500
输入账号和密码就可看到页面:
后台启动:
为了防止关闭连接窗口时,就会把机器关闭,所以弄个后台启动,可以一直启动服务器的frp服务端的任务。客户端根据需要随时可以启动。
nohup ./frps -c frps.ini &
5、安装freeSSHd and freeFTPd【一定要安装】
记得先安装ssh:
下载地址
不然本地Windows启动时候,其他机器一直无法连接上。
蓝奏云备份地址:
https://wwa.lanzous.com/b00uhhpbg
密码:dx96
5、本地Windows安装frp客户端:
frp_0.34.3_windows_amd64.zip
解压之后,放入一个不动的位置,然后修改frpc.ini配置文件【记得,服务端是frps.ini】:
修改参考下面的
[common]
server_addr = xx.xx.xx.xx # 你的云服务器的公网ip
authentication_method = token
token = xxxxx # 刚刚配置的frp连接密码
server_port = 7000 # 刚刚配置的frp服务端口
# 其实这个ssh是Ubuntu或者其他版本的linux系统使用的。
[Fusion-ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 20022
[Fusion-rdp]
type = tcp
local_ip = 127.0.0.1
local_port = 3389
remote_port = 23389
通过上面的脚本就可以把对于云服务器特定端口的访问给重定向到本地服务器的某个端口了,简单地讲就是:假如我用SSH客户端访问 [云服务器ip]:20022,就可以经过反向代理直接访问到[本地的训练服务器ip]:22;同理需要连接远程桌面的话,只需要访问[云服务器ip]:23389就可以了。
比如我的Windows需要这样填写:
[common]
server_addr = 服务器的公网ip
authentication_method = token
token = 77e6789426d131e4d862ecac4c7d0c5d
server_port = 7000
[RDP]
type = tcp
local_ip = 127.0.0.1
local_port = 3389
remote_port = 33389
6、注意点:
这个比较需要注意的地方,我看了好的文章都没有写清楚【可能有些博主的服务器是开放所有端口吧,这个很不建议,容易被入侵,变成人家肉鸡,我的之前被黑客入侵过,安全组还是不要开放所有ip访问,指定自己想要访问的即可。】。
我之前搭建的es数据库,存的学习测试数据,都被黑客入侵,让我充比特币,然后我就把机器重置了。后来就制定ip才能访问。
注意点1:打开本地Windows的远程桌面功能
记得Windows本地打开远程桌面功能【我也是弄了好久不成功才发现,需要本地这个功能打开,我的默认没有打开。】:
注意点2:【这个很重要,不然一直启动不了,新手可能还找不到原因】
我是因为吃过这个亏,还不止一次【因为家里WiFi的ip老变。IP段也是,都怀疑宽带商把我的宽带拿出去买了。。。正常不会老是改变的】
比如我上面的:7500、7000、33389这三个端口号,是必须开放的【安全组制定需要访问的ip添加,不要全部开放,有风险】
注意点4:每次连接远程机器的当前ip要加入安全组:
不过你不担心被入侵的话,可以设置此端口所有ip访问即可。【还是建议每次加入里面,百度浏览器搜索到当前ip,把当前ip加入到对应的连接端口号即可。】
注意点3:【根据2决定的】
因为家里WiFi的ip有可能会改变,反正我家的是时不时ip段就改了,不知道什么鬼,我怀疑是被买了,人家爬虫或者刷单什么的那种把代理商。
如果家里ip更改了,安全组里记得把2的制定的ip更改,不然Windows启动后面起不起来了。【如果后续突然出现这样,可以考虑我说的这种可能性】
注意点4:默认Windows账号是administrator
默认Windows账号是administrator,我试了好久才发现,把电脑锁屏,输入密码的时候,上面有个账号,就是登陆的账号,指不定administrator第一个字母是小写了。
7、启动本地的服务:
尽量绝对路径,根据自己的更改即可
D:/other_tools/_frp/frp_0.34.3_windows_amd64/frpc.exe -c D:/other_tools/_frp/frp_0.34.3_windows_amd64/frpc.ini
8、远程连接:
换一台机器连接:
记得默认情况下账号是:administrator
这个地方我找了半天,还以为是电脑起的别名,密码就是自己电脑设置的开机密码。
这个是用我的手机连接的,这样保证确认是外网,不排除局域网连接。
手机下载个微软远程桌面即可连接。