ก่อนอื่นเครดิตทั้งหมดไปที่ @yukiteruอามาโนะเนื่องจากโพสต์นี้อ้างอิงจากไฟล์ เกี่ยวกับการสอน คุณโพสต์ในฟอรัม ความแตกต่างก็คือฉันจะมุ่งเน้นไปที่ โค้งแม้ว่ามันอาจจะใช้ได้กับ Distros อื่น ๆ ที่ใช้ systemd.
Firehol คืออะไร?
ไฟร์ฮอลเป็นแอปพลิเคชั่นขนาดเล็กที่ช่วยให้เราจัดการไฟร์วอลล์ที่รวมอยู่ในเคอร์เนลและเครื่องมือ iptables. Firehol ไม่มีอินเทอร์เฟซแบบกราฟิกการกำหนดค่าทั้งหมดต้องทำผ่านไฟล์ข้อความ แต่อย่างไรก็ตามการกำหนดค่านี้ยังคงง่ายสำหรับผู้ใช้มือใหม่หรือมีประสิทธิภาพสำหรับผู้ที่มองหาตัวเลือกขั้นสูง สิ่งที่ Firehol ทำคือลดความซับซ้อนในการสร้างกฎ iptables ให้มากที่สุดและเปิดใช้งานไฟร์วอลล์ที่ดีสำหรับระบบของเรา
การติดตั้งและการกำหนดค่า
Firehol ไม่ได้อยู่ในที่เก็บ Arch อย่างเป็นทางการดังนั้นเราจะอ้างถึง AUR.
yaourt -S firehol
จากนั้นเราไปที่ไฟล์กำหนดค่า
sudo nano /etc/firehol/firehol.conf
และเราเพิ่มกฎที่นั่นคุณสามารถใช้ได้ estas.
เปิดใช้งาน Firehol ต่อไปสำหรับการเริ่มต้นแต่ละครั้ง ค่อนข้างง่ายด้วย systemd
sudo systemctl enable firehol
เราเริ่ม Firehol
sudo systemctl start firehol
ในที่สุดเราก็ตรวจสอบว่ามีการสร้างและโหลดกฎ iptables อย่างถูกต้อง
sudo iptables -L
ปิดใช้งาน IPv6
เนื่องจาก firehol ไม่สามารถจัดการได้ ip6tables และเนื่องจากการเชื่อมต่อส่วนใหญ่ของเราไม่มีการสนับสนุน IPv6คำแนะนำของฉันคือปิดการใช้งาน
En โค้ง เราเพิ่ม ipv6.disable = 1 ไปยังบรรทัดเคอร์เนลในไฟล์ / etc / default / grub
...
GRUB_DISTRIBUTOR="Arch"
GRUB_CMDLINE_LINUX_DEFAULT="rw ipv6.disable=1"
GRUB_CMDLINE_LINUX=""
...
ตอนนี้เราสร้างไฟล์ grub.cfg:
sudo grub-mkconfig -o /boot/grub/grub.cfg
En debian เพียงพอกับ:
sudo echo net.ipv6.conf.all.disable_ipv6=1 > /etc/sysctl.d/disableipv6.conf
ฉันไม่เข้าใจ. คุณทำตามบทช่วยสอนและคุณมีไฟร์วอลล์ทำงานอยู่และบล็อกการเชื่อมต่อทั้งหมดแล้วหรือยัง? อีกอย่างการสอนสำหรับ Arch มีความซับซ้อนเช่นฉันไม่เคยใช้ sudo หรือ yaourt Firewall อย่างไรก็ตามเป็นที่เข้าใจ หรืออาจมีคนใหม่เขียน yaourt และจะได้รับข้อผิดพลาด สำหรับ Manjaro นั้นถูกต้องกว่า
ตามที่คุณพูด @felipe ทำตามบทช่วยสอนและวางไฟล์ /etc/firehol/firehol.conf ไฟล์กฎที่ @cookie ให้ไว้ในการวางคุณจะมีไฟร์วอลล์อย่างง่ายเพื่อป้องกันระบบในระดับพื้นฐานอยู่แล้ว การกำหนดค่านี้ใช้งานได้กับ distro ใด ๆ ที่คุณสามารถใส่ Firehol ได้ด้วยความไม่ชอบมาพากลของแต่ละ distro จะจัดการกับบริการในรูปแบบต่างๆ (Debian ผ่าน sysvinit, Arch with systemd) และสำหรับการติดตั้งทุกคนรู้ว่ามีอะไรบ้างใน Arch คุณต้อง ใช้ที่เก็บ AUR และ yaourt ใน Debian หน่วยที่เป็นทางการก็เพียงพอแล้วและในที่อื่น ๆ อีกมากมายคุณต้องค้นหาเล็กน้อยในที่เก็บและปรับคำสั่งการติดตั้ง
ฉันคิดว่ายูกิเทรุได้ชี้แจงข้อสงสัยของคุณแล้ว
ตอนนี้เกี่ยวกับ sudo และ yaourt สำหรับส่วนของฉันฉันไม่คิดว่า sudo เป็นปัญหาคุณเพียงแค่ต้องดูว่ามันมาตามค่าเริ่มต้นเมื่อคุณติดตั้งระบบฐานของ Arch และ yaourt เป็นทางเลือกคุณสามารถดาวน์โหลด tarball เปิดเครื่องรูดและติดตั้งด้วย makepkg -si
ขอบคุณฉันรับทราบ
บางอย่างที่ฉันลืมเพิ่มในโพสต์ แต่ฉันไม่สามารถแก้ไขได้
https://www.grc.com/x/ne.dll?bh0bkyd2
ในไซต์นั้นคุณสามารถทดสอบไฟร์วอลล์ของคุณได้😉 (ขอขอบคุณ Yukiteru อีกครั้ง)
ฉันทำการทดสอบเหล่านั้นบน Xubuntu ของฉันและทุกอย่างก็ออกมาสมบูรณ์แบบ! ช่างเป็นอะไรที่น่ายินดีที่ได้ใช้ Linux !!! 😀
ทั้งหมดนั้นดีมาก ... แต่สิ่งที่สำคัญที่สุดขาดหายไป คุณต้องอธิบายว่ากฎถูกสร้างขึ้นอย่างไร !! หมายความว่าอย่างไรสร้างใหม่ได้อย่างไร ... หากไม่ได้อธิบายสิ่งที่คุณใส่ก็มีประโยชน์เพียงเล็กน้อย:
การสร้างกฎใหม่เป็นเรื่องง่ายเอกสาร Firehol มีความชัดเจนและแม่นยำมากในแง่ของการสร้างกฎที่กำหนดเองดังนั้นการอ่านเล็กน้อยจะทำให้คุณปรับแต่งและปรับให้เข้ากับความต้องการได้ง่าย
ฉันคิดว่าเหตุผลเริ่มต้นสำหรับการโพสต์ @cookie เหมือนของฉันในฟอรัมคือเพื่อให้ผู้ใช้และผู้อ่านมีเครื่องมือที่ช่วยให้พวกเขาสามารถเพิ่มความปลอดภัยให้กับคอมพิวเตอร์ได้เล็กน้อยทั้งหมดอยู่ในระดับพื้นฐาน ส่วนที่เหลือปล่อยให้คุณปรับเปลี่ยนตามความต้องการ
หากคุณอ่านลิงก์ไปยังบทช่วยสอน Yukiteru คุณจะรู้ว่าเจตนาคือการเผยแพร่แอปพลิเคชันและการกำหนดค่าไฟร์วอลล์พื้นฐาน ฉันชี้แจงว่าโพสต์ของฉันเป็นเพียงสำเนาที่เน้นที่ Arch
และนี่คือ 'สำหรับมนุษย์'? o_O
ลอง Gufw บน Arch: https://aur.archlinux.org/packages/gufw/ >> คลิกที่สถานะ หรือ ufw ถ้าคุณต้องการ terminal: sudo ufw enable
คุณได้รับการป้องกันอยู่แล้วหากคุณเป็นผู้ใช้ปกติ นั่นคือ 'สำหรับมนุษย์' 🙂
Firehol เป็น Front-End สำหรับ IPTables จริงๆและถ้าเราเปรียบเทียบกับรุ่นหลังมันค่อนข้างเป็นมนุษย์😀
ฉันถือว่า ufw (Gufw เป็นเพียงอินเทอร์เฟซของมัน) เป็นตัวเลือกที่ไม่ดีในแง่ของความปลอดภัย เหตุผล: สำหรับกฎความปลอดภัยเพิ่มเติมที่ฉันเขียนใน ufw ฉันไม่สามารถหลีกเลี่ยงสิ่งนั้นในการทดสอบไฟร์วอลล์ของฉันทั้งผ่านเว็บและที่ดำเนินการโดยใช้ nmap บริการเช่น avahi-daemon และ exim4 จะเปิดขึ้นและมีเพียง a การโจมตีแบบ "ซ่อนตัว" ก็เพียงพอแล้วที่จะทราบถึงลักษณะที่เล็กที่สุดของระบบเคอร์เนลและบริการของฉันที่มันทำงานสิ่งที่ไม่ได้เกิดขึ้นกับฉันโดยใช้ไฟร์ฮอลหรือไฟร์วอลล์ของ arno
ฉันไม่รู้เกี่ยวกับคุณ แต่อย่างที่ฉันเขียนไว้ข้างต้นฉันใช้ Xubuntu และไฟร์วอลล์ของฉันใช้ GUFW และฉันผ่านการทดสอบทั้งหมดของลิงก์ที่ผู้เขียนวางไว้โดยไม่มีปัญหา ชิงทรัพย์ทั้งหมด ไม่มีอะไรเปิด ดังนั้นจากประสบการณ์ของฉัน ufw (ดังนั้น gufw) พวกเขายอดเยี่ยมสำหรับฉัน ฉันไม่สำคัญในการใช้โหมดควบคุมไฟร์วอลล์อื่น ๆ แต่ gufw ทำงานได้อย่างไม่มีที่ติและให้ผลลัพธ์ด้านความปลอดภัยที่ยอดเยี่ยม
หากคุณมีการทดสอบใด ๆ ที่คุณคิดว่าอาจทำให้เกิดช่องโหว่ในระบบของฉันโปรดบอกฉันว่ามันคืออะไรและฉันยินดีที่จะเรียกใช้การทดสอบที่นี่และแจ้งให้คุณทราบผล
ด้านล่างฉันแสดงความคิดเห็นบางอย่างเกี่ยวกับเรื่อง ufw ซึ่งฉันบอกว่าข้อผิดพลาดที่ฉันเห็นในปี 2008 โดยใช้ Ubuntu 8.04 Hardy Heron พวกเขาแก้ไขอะไรไปบ้างแล้ว? สิ่งที่เป็นไปได้มากที่สุดก็คือมันเป็นเช่นนั้นดังนั้นจึงไม่มีเหตุผลที่จะต้องกังวล แต่ถึงอย่างนั้นก็ไม่ได้หมายความว่ามีบั๊กอยู่ที่นั่นและฉันสามารถพิสูจน์ได้แม้ว่ามันจะไม่ใช่เรื่องเลวร้ายที่จะตาย แต่ฉันก็หยุดเพียงเท่านั้น ปีศาจ avahi-daemon และ exim4 และปัญหาได้รับการแก้ไขแล้ว สิ่งที่แปลกประหลาดที่สุดคือมีเพียงสองกระบวนการเท่านั้นที่มีปัญหา
ฉันพูดถึงเรื่องนี้ว่าเป็นเรื่องเล็ก ๆ น้อย ๆ ส่วนตัวและฉันก็คิดในทางเดียวกันเมื่อฉันพูดว่า: «ฉันพิจารณา ... »
ทักทาย🙂
+1
@ ยูคิเทรุ: คุณลองจากคอมพิวเตอร์ของคุณเองหรือเปล่า? หากคุณกำลังมองหาจากพีซีของคุณเป็นเรื่องปกติที่คุณสามารถเข้าถึงพอร์ตบริการ X ได้เนื่องจากทราฟฟิกที่ถูกบล็อกเป็นของเครือข่ายไม่ใช่ localhost:
http://www.ubuntu-es.org/node/140650#.UgJZ3cUyYZg
https://answers.launchpad.net/gui-ufw/+question/194272
หากไม่เป็นเช่นนั้นโปรดรายงานข้อผิดพลาด🙂
ทักทาย🙂
จากคอมพิวเตอร์เครื่องอื่นโดยใช้เครือข่าย Lan ในกรณีของ nmap และผ่านทางเว็บโดยใช้หน้านี้ https://www.grc.com/x/ne.dll?bh0bkyd2เมื่อใช้ตัวเลือกพอร์ตที่กำหนดเองพวกเขาทั้งคู่ตกลงว่า avahi และ exim4 กำลังฟังจากเน็ตแม้ว่า ufw จะกำหนดค่าการบล็อกไว้ก็ตาม
รายละเอียดเล็ก ๆ น้อย ๆ ของ avahi-daemon และ exim4 ฉันแก้ไขได้โดยเพียงแค่ปิดการใช้งานบริการและนั่นแหล่ะ ... ฉันไม่ได้รายงานข้อผิดพลาดในเวลานั้นและฉันคิดว่ามันไม่สมเหตุสมผลที่จะทำในตอนนี้เพราะนั่น ย้อนกลับไปในปี 2008 โดยใช้ Hardy
2008 คือ 5 ปีที่แล้ว; จาก Hardy Heron ถึง Raring Ringtail มี 10 * buntus การทดสอบเดียวกันกับ Xubuntu ของฉันทำเมื่อวานนี้และทำซ้ำในวันนี้ (สิงหาคม 2013) ให้ความสมบูรณ์แบบในทุกสิ่ง และฉันใช้เฉพาะ UFW
ฉันทำซ้ำ: คุณมีการทดสอบเพิ่มเติมที่ต้องทำหรือไม่? ด้วยความยินดีฉันทำและรายงานสิ่งที่ออกมาจากด้านนี้
ทำการสแกน SYN และ IDLE บนพีซีของคุณโดยใช้ nmap ซึ่งจะทำให้คุณทราบว่าระบบของคุณปลอดภัยเพียงใด
nmap man มีมากกว่า 3000 บรรทัด หากคุณให้คำสั่งกับฉันเพื่อดำเนินการด้วยความยินดีฉันจะทำและจะรายงานผล
อืมฉันไม่รู้เกี่ยวกับหน้าคน 3000 สำหรับ nmap แต่ zenmap เป็นตัวช่วยในการทำสิ่งที่ฉันบอกคุณมันเป็นส่วนหน้าแบบกราฟิกสำหรับ nmap แต่ยังคงเป็นตัวเลือกสำหรับการสแกน SYN ด้วย nmap คือ -sS ในขณะที่ตัวเลือกสำหรับการสแกนที่ไม่ได้ใช้งานคือ -sI แต่คำสั่งที่แน่นอนฉัน จะ.
ทำการสแกนจากเครื่องอื่นที่ชี้ไปที่ ip ของเครื่องของคุณด้วย ubuntu อย่าทำจากพีซีของคุณเองเพราะนั่นไม่ใช่วิธีการทำงาน
ฮ่า ๆ!! ความผิดพลาดของฉันเกี่ยวกับ 3000 หน้าเมื่อเป็นบรรทัด😛
ฉันไม่รู้ แต่ฉันคิดว่า GUI สำหรับสิ่งนั้นใน GNU / Linux เพื่อจัดการไฟร์วอลล์นั้นค่อนข้างรอบคอบและไม่ปล่อยให้ทุกอย่างถูกเปิดเผยเช่นเดียวกับในอูบุนตูหรือทุกอย่างที่ครอบคลุมเช่นเดียวกับใน fedora คุณควรเป็น xD ที่ดีหรือต้องกำหนดค่าอะไรบางอย่าง ทางเลือกของฆาตกรเหี้ย xD hjahjahjaja มันมีน้อยที่ฉันต่อสู้กับพวกเขาและ jdk ที่เปิดกว้าง แต่สุดท้ายคุณก็ต้องรักษาหลักการของการจูบไว้ด้วย
ต้องขอบคุณความสะดุดทั้งหมดที่เกิดขึ้นในอดีตด้วย iptables วันนี้ฉันสามารถเข้าใจ niverl ดิบนั่นคือพูดกับเขาโดยตรงที่มาจากโรงงาน
และไม่ใช่เรื่องที่ซับซ้อน แต่เป็นเรื่องง่ายที่จะเรียนรู้
หากผู้เขียนโพสต์อนุญาตฉันจะโพสต์ข้อความที่ตัดตอนมาของสคริปต์ไฟร์วอลล์ที่ฉันใช้อยู่ในปัจจุบัน
## กฎการทำความสะอาด
iptables-F
iptables-X
iptables -Z
iptables -t แนท -F
## ตั้งค่านโยบายเริ่มต้น: DROP
iptables -P อินพุตลดลง
iptables -P เอาท์พุทดรอป
iptables -P ไปข้างหน้า DROP
# ใช้งานบน localhost โดยไม่มีข้อ จำกัด
iptables -A INPUT -i lo -j ยอมรับ
iptables -A เอาท์พุท -o lo -j ยอมรับ
# อนุญาตให้เครื่องไปที่เว็บ
iptables -A INPUT -p tcp -m tcp –sport 80 -m conntrack –ctstate RELATED, ESTABLISHED -j ACCEPT
iptables -A เอาท์พุท -p tcp -m tcp –dport 80 -j ยอมรับ
# แล้วยังรักษาความปลอดภัยเว็บไซต์
iptables -A INPUT -p tcp -m tcp –sport 443 -m conntrack –ctstate RELATED, ESTABLISHED -j ACCEPT
iptables -A เอาท์พุท -p tcp -m tcp –dport 443 -j ยอมรับ
# อนุญาต ping จากภายในสู่ภายนอก
iptables -A เอาท์พุท -p icmp –icmp-type echo-request -j ACCEPT
iptables -A INPUT -p icmp –icmp-type echo-reply -j ยอมรับ
# คุ้มครองสสส
#iptables -I INPUT -p tcp –dport 22 -m conntrack –ctstate NEW -m limit –limit 30 / minute –limit-burst 5 -m comment –comment“ SSH-kick” -j ACCEPT
#iptables -A INPUT -p tcp -m tcp –dport 22 -j LOG –log-prefix "SSH ACCESS ATTEMPT:" –log-level 4
#iptables -A อินพุต -p tcp -m tcp –dport 22 -j DROP
# กฎสำหรับ amule เพื่ออนุญาตการเชื่อมต่อขาออกและขาเข้าบนพอร์ต
iptables -A INPUT -p tcp -m tcp –dport 16420 -m conntrack –ctstate NEW -m comment –comment "aMule" -j ACCEPT
iptables -A OUTPUT -p tcp -m tcp –sport 16420 -m conntrack –ctstate RELATED, ESTABLISHED -m comment –comment "aMule" -j ACCEPT
iptables -A INPUT -p udp –dport 9995 -m comment –comment "aMule" -j ACCEPT
iptables -A เอาท์พุท -p udp –sport 9995 -j ยอมรับ
iptables -A อินพุต -p udp –dport 16423 -j ACCEPT
iptables -A เอาท์พุท -p udp –sport 16423 -j ยอมรับ
ตอนนี้คำอธิบายเล็กน้อย อย่างที่คุณเห็นมีกฎที่มีนโยบาย DROP โดยค่าเริ่มต้นไม่มีสิ่งใดออกและเข้าสู่ทีมโดยที่คุณไม่บอก
จากนั้นพื้นฐานจะถูกส่งต่อ localhost และการนำทางไปยังเครือข่ายของเครือข่าย
คุณจะเห็นว่ามีกฎสำหรับ ssh และ amule ด้วย หากพวกเขาดูดีว่าทำอย่างไรพวกเขาสามารถสร้างกฎอื่น ๆ ที่ต้องการได้
เคล็ดลับคือการดูโครงสร้างของกฎและนำไปใช้กับพอร์ตหรือโปรโตคอลบางประเภทไม่ว่าจะเป็น udp หรือ tcp
ฉันหวังว่าคุณจะเข้าใจสิ่งที่ฉันเพิ่งโพสต์ไว้ที่นี่
คุณควรตั้งกระทู้อธิบายไว้😉จะดีมาก
ผมมีคำถาม. ในกรณีที่คุณต้องการปฏิเสธการเชื่อมต่อ http และ https ที่ฉันใส่:
เซิร์ฟเวอร์ "http https" ลดลง?
และอื่น ๆ กับบริการใด ๆ ?
กราเซีย