内外网映射(一)

157 阅读1分钟

     今天周五,写代码写的有点腻了,于是想到测试环境外网映射,浏览了下说到的又花生壳/ngrok等。突然记起之前公司用到一个frp,虽然是运维搞的额,但是今天想就自己也搞搞。毕竟不是所有公司都又运维。(这个文章很早就写了,csdn不给发,今天迁移到掘金)

一、环境

      我这边现在的环境:

      阿里云云服务器一台 (windows server2012)

      内网测试服务器一台(CentOS7.6)

      准备使用阿里云的一个二级域名

二、frp软件下载

     下载地址:

​编辑

     这里自行下载系统对应的版本。这里目前最新版本0.27.0.我分别下载windows的和linux的。注意最好都是同等位数的版本,比如都是64位的。

三、外网服务器配置

    外网因为是windows的,所以相对简单点。但是也遇到一个坑问题就是frps.exe不能后台运行。

    其他网友说的要删除frpc\frpc.ini文件,我这里是没有删除的,实际上只要不同时运行应该没问题。

   frps.ini配置文件:

[common]
bind_port = 7000           #与客户端绑定的进行通信的端口
vhost_http_port = 8069    #访问客户端web服务自定义的端口号

这个今天先把ssh调通,有的还说加上

dashboard_port = 8070
dashboard_user = admin
dashboard_pwd = admin

可以通过ip:8070访问管理页面,实际上这个我也没有成功。因为是公司的服务器,现在也没有这个需求,所以准备后期自己搞个服务器玩。

让后只能通过cmd进黑框框,到这个目录执行frps.exe,如图:

​编辑

出现frps success就是代表服务启动成功了。

四、客户端配置

    客户端时linux的,把文件使用xFtp拖到我的测试目录后解压

tar -zxvf  frp_0.27.0_linux_amd64.tar.gz,解压后目录里的文件与外网服务器上的文件基本一样,除了后缀名,哈哈。

​编辑

客户端的配置文件就应该时frpc.ini,配置内容:

[common]
server_addr = xx.xx.xx.xx   #外网服务器ip
server_port = 7000   #这个端口与外网服务器端口一致

[ssh]
type = tcp 
local_ip = 127.0.0.1   #
local_port = 22  #这个端口在云服务器上时没有配置出规则的,所以后面通过这个端口也不能连上
remote_port = 6000   #这个路由端口,注意这个端口在云服务器的安全规则上一定出规则/入规则都要配置

[web]
type = http
local_port = 8081  #这个就是你内网服务器上项目的用的端口
custom_domains = xxx.xx.com   #所绑定的公网服务器域名,一级、二级域名都可以

保存配置文件,linux编辑配置文件用vi或vim,这是基本的,就不多说,要是不会,就把文件托到本地,改完了再托上去覆盖。

然后,这里执行后台运行,也是进这个目录后执行

nohup ./frpc -c ./frpc.ini &

重新回到[root @xx]#状态就表示执行成功

​编辑

如果是回到[root @xx]#状态出现的nohup:ignoring xxx不要紧张,这是正常的,还是可以通过tail -f nohup.out查看执行内容的。

但是如果不是回到[root @xx]#状态出现的,那就是没有执行成功。

五、验证ssh连接

​编辑

箭头所指就是server_addr配置的外网ip。注意端口号,连接,注意输入的用户/密码是内网服务器的账号密码,看效果

​编辑

好了,今天就先说到这,下次讲设置最大连接数与访问内网项目吧。因为现在我也还没有试验到那一步,哈哈。