網絡拓撲圖及說明
說明
- 服務器通過靜態IP上網,外網連接eth0口,IP爲200.0.0.2;eth1口連接內網交換機,內網網段爲192.168.10.1/24。
- 內網中的所有機器通過NAT上網,也要通過DHCP服務器自動獲得IP地址。其中192.168.10.254爲一臺FTP服務器,需要對外提供FTP服務。
- 服務器本身不對外提供任何服務,僅對內網提供DHCP服務以及SSH管理。
- 內網機器使用運營商的DNS。
配置步驟
(系統IP配置方法這裏不再贅述)
1. 關閉系統自帶的防火牆
停止firewalld服務
systemctl stop firewalld
禁止firewalld服務自啓動
systemctl disable firewalld
2. 安裝iptables防火牆和DHCP服務器
安裝iptables服務
yum -y install iptables-services
安裝dhcp服務
yum -y install dhcp
3、對iptables進行初始化工作
清空filter表
iptables -F
清空nat表
iptables -t nat -F
默認禁止所有傳入連接
iptables -P INPUT DROP
默認允許所有傳出連接
iptables -P OUTPUT ACCEPT
默認禁止路由轉發
iptables -P FORWARD DROP
4、打開系統的IP轉發功能
echo "net.ipv4.ip_forward=1" >> /etc/sysctl.conf
不用重啓,立即生效
sysctl -p
5、按以下模版配置DHCP服務器
配置文件位置:/etc/dhcp/dhcpd.conf
#爲 192.168.10.0/24 提供DHCP服務 subnet 192.168.10.0 netmask 255.255.255.0 { range 192.168.10.2 192.168.10.253; #地址池範圍 option broadcast-address 192.168.10.255; #廣播地址 option routers 192.168.10.1; #默認網關 option domain-name-servers 202.96.134.33, 202.96.128.22; #運營商DNS服務器 option netbios-name-servers 192.168.10.1; #WINS服務器 option domain-name lan; #搜索域 default-lease-time 86400; #默認租約時間,單位爲秒 max-lease-time 86400; #最長租約時間,單位爲秒 } #FTP服務器設置靜態IP綁定 host ftp_server { hardware ethernet 12:34:56:11:11:11; #FTP服務器的MAC地址 fixed-address 192.168.10.254; #綁定的IP地址 }
6、配置iptables的傳入連接
允許環回接口的傳入連接
iptables -A INPUT -i lo -j ACCEPT
允許已建立的傳入連接
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
允許DHCP傳入連接
iptables -A INPUT -i eth1 -p udp --dport 67:68 -j ACCEPT
允許SSH傳入連接
iptables -A INPUT -i eth1 -p tcp --dport 22 -j ACCEPT
7、配置iptables的NAT轉發(重點)
允許來自內網的傳出連接
iptables -A FORWARD -s 192.168.10.0/24 -j ACCEPT
開啓源NAT功能
即將來自內網主機的IP轉換爲外網IP。
iptables -t nat -A POSTROUTING -s 192.168.10.0/24 -j SNAT --to 200.0.0.2
配置端口映射
iptables -t nat -A PREROUTING -d 200.0.0.2 -p tcp --dport 21 -j DNAT --to 192.168.10.254
允許到FTP服務器的傳入連接
iptables -A FORWARD -d 192.168.10.254 -p tcp --dport 21 -j ACCEPT
8、保存iptables配置
iptables-save > /etc/sysconfig/iptables
9、啓動iptables和dhcp服務
啓動iptables
systemctl start iptables
開機自動啓動iptables
systemctl enable iptables
啓動dhcpd
systemctl start dhcpd
開機自動啓動dhcpd
systemctl enable dhcpd
配置完成!
作者:澤楠弟弟 來源:http://www.jianshu.com/p/f198c1a2e9ac
*聲明:推送內容及圖片來源於網絡,部分內容會有所改動,版權歸原作者所有,如來源信息有誤或侵犯權益,請聯繫我們刪除或授權事宜。
- END -