如何让内网的CENTOS服务器能用域名访问?
利用frp穿透技术,来实现你要的功能,不需要公网IP。毕竟现在公网IP运营商有很多限制:
以下文章转载自吴昊博客
frp内网穿透是通过一个带有公网IP的服务器进行中转,对被控主机实现反向代理,用户通过访问frps(中转服务器)来实现对frpc(被控主机)的远程访问。
frp流程图如下:
frp项目地址:https://githubcom/fatedier/frp
本实验环境以阿里云服务器作为中转机,中转服务器使用Centos76,被控主机使用Centos76,用户使用Windows10由于网络原因,文中链接已经替换成了本地链接,如不放心,请自行去GitHub下载
frps中转服务器配置
1、下载frp
在一台有公网IP的主机上配置frps,我这里以阿里云Centos7x主机为例
1 wget http://downwhsircom/downloads/frp_0270_linux_amd64targz
2 tar xf frp_0270_linux_amd64targz
3 mv frp_0270_linux_amd64 /usr/local
4 cd /usr/local/frp_0270_linux_amd64
5 rm -f frpc
2、配置frps
这里使用最基础的配置,bind_port 表示frp面板的监控端口,dashboard_user表示面板的登陆帐号,dashboard_pwd表示面板的登陆密码,其它不动。
1 vi
frpsini
配置文件说明:
1 [common]
2 bind_port = 7000
3
4 dashboard_user = whsir
5 dashboard_pwd = blogwhsircom
6 dashboard_port = 8000
3、启动frps
配置启动服务
1 vi /etc/systemd/system/frpsservice
1 [Unit]
2 Description=frps daemon
3 After=syslogtarget networktarget
4 Wants=networktarget
5
6 [Service]
7 Type=simple
8 ExecStart=/usr/local/frp_0270_linux_amd64/frps -c /usr/local/frp_0270_linux_amd64/frpsini
9
10 [Install]
11 WantedBy=multi-usertarget
技行以下两个命令
1 systemctl enable frps
2 systemctl start frps
4、访问监控平台
http://公网IP:8000
账号whsir
密码blogwhsircom
如果访问不了,请使用ss -lnt命令检查端口是否启动,是否因为防火墙原因拦截。
至此frps中转服务器配置完成
frpc内网主机配置
1、内网主机下载frp
1 wget http://downwhsircom/downloads/frp_0270_linux_amd64targz
2 tar xf frp_0270_linux_amd64targz
3 mv frp_0270_linux_amd64 /usr/local
4 cd /usr/local/frp_0270_linux_amd64
5 rm -f frps
2、配置frpc
其中xxxx表示frps中转服务器IP地址
ssh字段:local_port = 22示被控(内网)主机的ssh端口,remote_port = 6000表示ssh中转端口
web字段:local_port = 80表示被控(内网)主机的web端口,remote_port = 8081表示web中转端口
1 vi frpcini
1 [common]
2 server_addr = xxxx
3 server_port = 7000
4
5 [ssh]
6 type = tcp
7 local_ip = 127001
8 local_port = 22
9 remote_port = 6000
10
11 [web]
12 type = tcp
13 local_ip = 127001
14 local_port = 80
15 remote_port = 8081
3、启动frpc
配置启动服务
1 vi /etc/systemd/system/frpcservice
1 [Unit]
2 Description=frpc daemon
3 After=syslogtarget networktarget
4 Wants=networktarget
5
6 [Service]
7 Type=simple
8 ExecStart=/usr/local/frp_0270_linux_amd64/frpc -c /usr/local/frp_0270_linux_amd64/frpcini
9
10 [Install]
11 WantedBy=multi-usertarget
执行如下命令
1 systemctl enable frpc
2 systemctl start frpc
至此frpc被控主机配置完成
此时可通过xxxx:6000连接内网ssh,通过http://xxxx:8081访问内网主机web,访问速度取决于带宽
这时候,内网主机就映射到外网去了,然后,用域名指定你的frp主机ip就可以了。这样就可以实现你的功能了。
hMailserver我没配置过。但是我配置过winmail的服务器。这些都是要花钱的。
这个其实你可以纹你的邮件服务器供应商hMailserver,他们应该有专门的技术人员指导你配置。
具体大致步骤是首先你的有一个公司的服务器域名,XXXCOM或者XXXCN,这个去阿里云注册购买一个。
然后还要有一个花生壳域名解析服务器,这个也需要去花生壳注册购买,这些都是需要花钱的啊。
然后到你公司的路由器,设置域名解析绑定到花生壳,在映射到阿里云服务器。如果不用阿里云,也可以直接在花生壳注册你的公司域名。
阿里云的DNS是:223666或者223555。
阿里公共DNS是阿里巴巴集团推出的DNS递归解析系统,目标是成为国内互联网基础设施的组成部分,面向互联网用户提供“快速”、“稳定”、“智能”的免费DNS递归解析服务。域名解析是一个相对复杂的过程,需要多个环节,遍历多个DNS服务器,才能获取域名的IP地址。
DNS是互联网上存储域名与IP映射关系的一个分布式数据库。使用DNS,用户可以方便的用域名访问互联网,而不用关心复杂难记的IP地址。通过域名获取对应IP地址的过程叫域名解析。
0条评论