怎么搭建一个可以被外网访问的linux web服务器

怎么搭建一个可以被外网访问的linux web服务器,第1张

首先需要将你的web服务器搭建好,然后需要做NAT,我这里有我的一个做NAT的笔记,分享给你

NAT

拓扑结构图:

要求:

1内网能够ping通外网地址,并且成功访问外网中的web服务;

2外网能够访问内网的ftp服务。

步骤:

一:内网服务器配置

1在内网中设置好ip地址,网关和DNS均为NAT服务器内网口地址,并搭建好ftp服务,此处略

二:NAT服务器配置

1在NAT只能中添加一块网卡作为 外网卡,并设置好ip地址

2开启NAT服务器的路由功能

[root@c2 ~]# vi /etc/sysctlconf

netipv4ip_forward = 1              //将0改为1

[root@c2 ~]# sysctl -p                //永久生效

3配置防火墙(必须按照以下循序配置,否则配置完成后不能拼通外网,需配置第二次)

#iptables-X

#iptables-t nat -X

#iptables --flush

#iptables -t nat --flush

//以上为重置链表的命令

#iptables-t nat -A POSTROUTING -s 19216810/24 -o eth1 -j SNAT --to 202101012

//这条命令是将内网19216810/24的源地址映射为NAT服务器的外网口地址,eth1为外网卡

# iptables -t nat -A PREROUTING -p tcp--dport 21 -j DNAT --to 192168111

# iptables -t nat -A PREROUTING -p tcp--dport 20 -j DNAT --to 192168111

//这两条命令是发布内务的ftp服务

或者:

# iptables -t nat -A PREROUTING -p tcp -d 202101012--dport 21 -j DNAT --to 192168111

# iptables -t nat -A PREROUTING -p tcp -d 202101012--dport 20 -j DNAT --to 192168111

#/etc/initd/iptablessave

#/etc/initd/iptablesrestart

验证:

内网访问外网的web服务:

[root@c1 ~]# curl 202101013

web

外网访问内网的ftp服务(外网的防火墙一定要关闭,否则ls查看目录时会出错,或者打开外网的20号端口新建链接的也可以)#

[root@c3 ~]# ftp 202101012

Connected to 202101012 (202101012)

220 (vsFTPd 222)

Name (202101012:root): ftp01

331 Please specify the password

Password:

230 Login successful

Remote system type is UNIX

Using binary mode to transfer files

ftp> ls

227 Entering Passive Mode(192,168,1,11,93,1)

ftp: connect: Network isunreachable     //列不出内容是因为进入了passive模式

ftp>passive                                                      //用passive命令切换passive模式和active模式

Passivemode off

ftp> ls

200 PORT command successful Consider usingPASV

150 Here comes the directory listing

226 Directory send OK

ftp>

补充:

删除防火墙中配置的记录

[root@c2 ~]# iptables -t nat  -L POSTROUTING -n --line-number   //列出记录和记录序号

[root@c2 ~]# iptables -t nat -D POSTROUTING1                 //根据序号删除记录

你将内网的ftp服务换成web服务就可以了,主要是弄懂NAT的原理,将内部服务通过DNAT发布到外网

1、建议使用虚拟机,选择好你需要的平台,在机子上装好系统,以及对应的web服务端,然后在你的路由器上做好端口映射。
2、你要有个公网IP,如果没有固定IP的话,可以用动态域名还做。

打开“控制面板”->“管理工具”->“Internet服务管理器”->“默认web站点”。
在“默认web站点”上按鼠标右键,选择“新建”->“站点”。按“下一步”。
输入站点说明,如“站点1”。按“下一步”。
在“站点的主机头”上输入域名,如“abcdns0755net”。按“下一步”。
在路径里指定站点的根目录路径。按“下一步”。
在权限里选择适当的权限。按“下一步”,即可完成。
如果配置的是顶级域名的虚拟主机,例如在上面第4步主机头里输入“abccom”,而同时又希望用户使用“>

1、下载个Serv-u, 解压并安装,打开软件后 界面如下图,点击域详细信息下的“配置域的监听器”。

2、进入监听器选项卡界面后,点击左下角“添加”按钮。

3、d出“监听器”的对话框,请按下图填写内容,端口最好填写缺省的“21”,启用监听器前面要勾选,PASV IP一定要填写,输入运营商给的静态IP地址,如果不是静态IP,只能通过其他软件解析,输入完成后点保存。

4、点击左上角,返回主页面,单击右边倒数第二个菜单“服务器限制和设置”。

5、在d出的界面中,我们选择"设置"选项卡,进入设置界面。

6、进入设置界面后往下拉到最下面,填写PASV端口范围,例如2000-2049,设置好后点保存,公网访问FTP的设置服务器端已经设置好了。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/10431521.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-08
下一篇 2023-05-08

发表评论

登录后才能评论

评论列表(0条)

保存