นี่คือสิ่งที่ฉันใช้ทำงานได้ดีเสมอ การรวมกันของบทเรียนต่างๆ ทดสอบกับ Ubuntu 16.04LTS ด้วยเช่นกัน
ขั้นตอน A - ตรวจสอบให้แน่ใจว่าติดตั้ง ufw แล้ว
sudo apt-get install ufw
ขั้นตอน B - การกำหนดค่าการเชื่อมต่อเครือข่ายของคุณ
sudo nano /etc/network/interfaces
กำหนดค่าไฟล์ส่วนต่อประสานให้เป็นดังนี้:
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
source /etc/network/interfaces.d/*
# The loopback network interface
auto lo
iface lo inet loopback
# The WAN primary network interface
iface eth0 inet static
address 182.xxx.xxx.xxx
netmask xxx.xxx.xxx.xxx
gateway xxx.xxx.xxx.xxx
#LAN side interface
auto eth1
iface eth1 inet static
address 192.168.0.1
netmask 255.255.255.0
network 192.168.0.0
broadcast 192.168.0.255
address 192.168.0.1
บันทึกไฟล์โดยเลือก CTRL-X จาก nano หรือโปรแกรมแก้ไขอื่น ๆ ที่คุณต้องการ
ขั้นตอน C - อนุญาต IP ไปข้างหน้า ตั้งค่าการส่งต่อ แก้ไขไฟล์/etc/sysctl.conf
sudo nano /etc/sysctl.conf
ลบความคิดเห็นในบรรทัดนี้# net.ipv4.ip_forward=1
เพื่อnet.ipv4.ip_forward=1
บันทึกการเปลี่ยนแปลงและย้ายไปยังขั้นตอนถัดไป
ขั้นตอน D - การปลอมแปลง / กฎการส่งต่อ
sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
sudo iptables -A FORWARD -i eth0 -o eth1 -m state --state RELATED,ESTABLISHED -j ACCEPT
sudo iptables -A FORWARD -i eth1 -o eth0 -j ACCEPT
ยังคงมีการเปลี่ยนแปลงiptables
sudo su
sudo iptables-save > /etc/iptables.rules
sudo nano /etc/network/if-pre-up.d/iptables
ใส่เนื้อหานี้:
#!/bin/sh
iptables-restore < /etc/iptables.rules
exit 0
บันทึกการเปลี่ยนแปลงจากนั้นแก้ไข / สร้างไฟล์ iptables ถัดไป
sudo nano /etc/network/if-post-down.d/iptables
ใส่เนื้อหานี้:
#!/bin/sh
iptables-save -c > /etc/iptables.rules
if [ -f /etc/iptables.rules ]; then
iptables-restore < /etc/iptables.rules
fi
exit 0
บันทึกการเปลี่ยนแปลง. ทำให้ไฟล์ทั้งสองสามารถเรียกใช้งานได้
sudo chmod +x /etc/network/if-post-down.d/iptables
sudo chmod +x /etc/network/if-pre-up.d/iptables
ขั้นตอน E - จบด้วยการกำหนดค่า ufw
sudo nano /etc/default/ufw
เปลี่ยนนโยบายการส่งต่อพารามิเตอร์เพื่อยอมรับ
DEFAULT_FORWARD_POLICY="ACCEPT"
บันทึกการเปลี่ยนแปลง.
ฉันมี SSH ของฉันที่พอร์ต 49870 ดังนั้นฉันจึงอนุญาตให้ufwยอมรับการเชื่อมต่อบนพอร์ตนั้น:
sudo ufw allow 49870
ขั้นตอนที่เรนไฮน์ - ไม่ลืมที่จะเปิดใช้งาน ufw
sudo ufw enable
ในขั้นตอนนี้เพียงรีบูทระบบของคุณ จากนั้นอุปกรณ์ LAN ทั้งหมดสามารถใช้เป็นเกตเวย์หลักได้ ในหมายเหตุด้านข้างufwสะดวกในการจัดการการตั้งค่าไฟร์วอลล์