ติดตั้ง UFW
UFW ถูกติดตั้งตามค่าเริ่มต้นใน Ubuntu 18.04 แต่คุณสามารถตรวจสอบได้:
which ufw
คุณควรได้รับผลลัพธ์ต่อไปนี้:
/usr/sbin/ufw
หากคุณไม่ได้รับเอาต์พุตนั่นหมายความว่าไม่ได้ติดตั้ง UFW คุณสามารถติดตั้งด้วยตัวเองได้ในกรณีนี้:
sudo apt-get install ufw
อนุญาตการเชื่อมต่อ
หากคุณใช้งานเว็บเซิร์ฟเวอร์คุณต้องการให้โลกสามารถเข้าถึงเว็บไซต์ของคุณได้ ดังนั้นคุณต้องแน่ใจว่าพอร์ต TCP เริ่มต้นสำหรับเว็บเปิดอยู่
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
โดยทั่วไปคุณสามารถอนุญาตพอร์ตใด ๆ ที่คุณต้องการโดยใช้รูปแบบต่อไปนี้:
sudo ufw allow <port>/<optional: protocol>
ปฏิเสธการเชื่อมต่อ
หากคุณต้องการปฏิเสธการเข้าถึงพอร์ตที่แน่นอนให้ใช้deny
คำสั่ง:
sudo ufw deny <port>/<optional: protocol>
ตัวอย่างเช่นคุณสามารถปฏิเสธการเข้าถึงพอร์ต MySQL เริ่มต้นของคุณ:
sudo ufw deny 3306
UFW ยังรองรับไวยากรณ์ที่เรียบง่ายสำหรับพอร์ตบริการทั่วไป:
root@ubuntu:~$ sudo ufw deny mysql
Rule updated
Rule updated (v6)
ขอแนะนำให้คุณ จำกัด การเข้าถึงพอร์ต SSH ของคุณ (โดยค่าเริ่มต้นนี่คือพอร์ต22
) จากทุกที่ยกเว้นที่อยู่ IP ที่เชื่อถือได้ของคุณ
อนุญาตการเข้าถึงจากที่อยู่ IP ที่เชื่อถือได้
80
โดยปกติแล้วคุณจะต้องอนุญาตให้เข้าถึงเท่านั้นที่จะเปิดพอร์ตสาธารณะเช่นพอร์ต การเข้าถึงพอร์ตอื่น ๆ ทั้งหมดควรถูก จำกัด หรือ จำกัด คุณสามารถทำรายชื่อที่อยู่ IP ที่บ้านหรือที่ทำงานของคุณ (ควรเป็น IP แบบคงที่) เพื่อให้สามารถเข้าถึงเซิร์ฟเวอร์ของคุณผ่าน SSH หรือ FTP:
sudo ufw allow from 192.168.0.1 to any port 22
คุณสามารถอนุญาตให้เข้าถึงพอร์ต MySQL:
sudo ufw allow from 192.168.0.1 to any port 3306
เปิดใช้งาน UFW
ก่อนที่จะเปิดใช้งาน (หรือรีสตาร์ท) UFW คุณต้องตรวจสอบให้แน่ใจว่าพอร์ต SSH ได้รับอนุญาตให้รับการเชื่อมต่อจากที่อยู่ IP ของคุณ ในการเริ่ม / เปิดใช้งานไฟร์วอลล์ UFW ของคุณใช้คำสั่งต่อไปนี้:
sudo ufw enable
คุณจะเห็นผลลัพธ์ต่อไปนี้:
root@ubuntu:~$ sudo ufw enable
Command may disrupt existing ssh connections. Proceed with operation (y|n)?
กดYจากนั้นกดENTERเพื่อเปิดใช้งานไฟร์วอลล์:
Firewall is active and enabled on system startup
ตรวจสอบสถานะ UFW
พิมพ์รายการกฎ UFW:
sudo ufw status
คุณจะเห็นผลลัพธ์คล้ายกับที่แสดงต่อไปนี้:
Status: active
To Action From
-- ------ ----
80/tcp DENY Anywhere
443/tcp DENY Anywhere
3306 DENY Anywhere
22 ALLOW 192.168.0.1
3306 ALLOW 192.168.0.1
80/tcp (v6) DENY Anywhere (v6)
443/tcp (v6) DENY Anywhere (v6)
3306 (v6) DENY Anywhere (v6)
ใช้verbose
พารามิเตอร์เพื่อดูรายงานสถานะโดยละเอียดเพิ่มเติม:
sudo ufw status verbose
เอาต์พุตนั้นจะมีลักษณะดังต่อไปนี้:
Status: active
Logging: on (low)
Default: deny (incoming), allow (outgoing), disabled (routed)
New profiles: skip
To Action From
-- ------ ----
80/tcp DENY IN Anywhere
443/tcp DENY IN Anywhere
3306 DENY IN Anywhere
22 ALLOW IN 192.168.0.1
3306 ALLOW IN 192.168.0.1
80/tcp (v6) DENY IN Anywhere (v6)
443/tcp (v6) DENY IN Anywhere (v6)
3306 (v6) DENY IN Anywhere (v6)
ปิดใช้งาน / โหลด / รีสตาร์ท UFW
หากคุณต้องการโหลดกฎของไฟร์วอลล์ใหม่ให้ทำดังนี้:
sudo ufw reload
หากต้องการปิดใช้งานหรือหยุด UFW:
sudo ufw disable
ในการรีสตาร์ท UFW คุณจะต้องปิดการใช้งานก่อนจากนั้นจึงเปิดใช้งานอีกครั้ง:
sudo ufw disable
sudo ufw enable
หมายเหตุ: ก่อนเปิดใช้งาน UFW ตรวจสอบให้แน่ใจว่าอนุญาตให้ใช้พอร์ต SSH สำหรับที่อยู่ IP ของคุณ
การลบกฎ
ในการจัดการกฎ UFW ของคุณคุณต้องแสดงรายการเหล่านั้น คุณสามารถทำได้โดยการตรวจสอบสถานะ UFW ด้วยพารามิเตอร์numbered
:
sudo ufw status numbered
คุณจะเห็นผลลัพธ์คล้ายกับที่แสดงต่อไปนี้:
Status: active
To Action From
-- ------ ----
[ 1] 80/tcp DENY IN Anywhere
[ 2] 443/tcp DENY IN Anywhere
[ 3] 3306 DENY IN Anywhere
[ 4] 22 ALLOW IN 192.168.0.1
[ 5] 3306 ALLOW IN 192.168.0.1
[ 6] 80/tcp (v6) DENY IN Anywhere (v6)
[ 7] 443/tcp (v6) DENY IN Anywhere (v6)
[ 8] 3306 (v6) DENY IN Anywhere (v6)
ตอนนี้หากต้องการลบกฎเหล่านี้คุณจะต้องใช้ตัวเลขเหล่านี้ในวงเล็บเหลี่ยม:
sudo ufw delete [number]
หากต้องการลบHTTP
กฎ ( 80
) ให้ใช้คำสั่งต่อไปนี้:
sudo ufw delete 1
การเปิดใช้งานการสนับสนุน IPv6
หากคุณใช้ IPv6 บน VPS ของคุณคุณต้องตรวจสอบให้แน่ใจว่ารองรับ IPv6 ใน UFW หากต้องการทำเช่นนั้นให้เปิดไฟล์กำหนดค่าในโปรแกรมแก้ไขข้อความ:
sudo vi /etc/default/ufw
เมื่อเปิดแล้วตรวจสอบให้แน่ใจว่าIPV6
ได้ตั้งค่าเป็น "ใช่":
IPV6=yes
หลังจากทำการเปลี่ยนแปลงนี้แล้วให้บันทึกไฟล์ จากนั้นเริ่มต้น UFW ใหม่โดยปิดใช้งานและเปิดใช้งานอีกครั้ง:
sudo ufw disable
sudo ufw enable
กลับไปที่การตั้งค่าเริ่มต้น
หากคุณต้องการกลับไปที่การตั้งค่าเริ่มต้นเพียงพิมพ์คำสั่งต่อไปนี้ การดำเนินการนี้จะคืนค่าการเปลี่ยนแปลงของคุณ:
sudo ufw reset
ขอแสดงความยินดีคุณเพิ่งตั้งค่ากฎไฟร์วอลล์เบื้องต้น ต้องการเรียนรู้เพิ่มเติมตัวอย่างบางส่วนตรวจสอบUFW - ความช่วยเหลือของชุมชนวิกิพีเดีย