เซิร์ฟเวอร์จะปลอดภัยได้อย่างไร? [ปิด]


22

เมื่อพูดถึง Ubuntu 10.04 รุ่นเซิร์ฟเวอร์เครื่องมือ / แนวทางปฏิบัติใดที่คุณอยากแนะนำให้รักษาความปลอดภัยให้กับเซิร์ฟเวอร์

คำตอบ:


25

นี่เป็นบิตที่ไม่เฉพาะเจาะจง แต่โดยทั่วไปคุณจะต้อง

  • เรียกใช้ไฟร์วอลล์เช่นiptablesหรือufwเพื่อจัดการการเชื่อมต่อเพื่อเปิดพอร์ต

  • ติดตั้งเฉพาะซอฟต์แวร์ที่คุณต้องการ

  • เรียกใช้บริการที่จำเป็นต่อการทำงานของเซิร์ฟเวอร์เท่านั้น

  • อัปเดตซอฟต์แวร์นั้นด้วยโปรแกรมปรับปรุงความปลอดภัยทั้งหมด

  • ตั้งค่าผู้ใช้ใหม่ด้วยสิทธิ์น้อยที่สุดที่พวกเขาต้องการในการปฏิบัติหน้าที่

  • เรียกใช้denyhostsหรือfail2banเพื่อตรวจสอบการโจมตีแบบเดรัจฉาน

  • รันlogwatchเพื่อส่งอีเมลถึงคุณถึงความผิดปกติใด ๆ ในล็อกไฟล์

  • ตรวจสอบบันทึกของคุณบ่อยครั้งสำหรับกิจกรรมที่น่าสงสัย

  • ใช้sudoเสมอและใช้รหัสผ่านที่คาดเดายาก

  • ปิดการใช้งาน ciphers ที่อ่อนแอและปานกลางใน SSL สำหรับ apache, exim, proftpd, dovecot เป็นต้น

  • ตั้งค่าบริการเพื่อฟัง localhost เท่านั้น (ตามความเหมาะสม)

  • ทำงานchkrootkitทุกวัน

  • เรียกใช้clamscanบ่อยเท่าที่ต้องการเพื่อตรวจหาไวรัส windows (หากเหมาะสม)

  • ระวังเซิร์ฟเวอร์รู้ว่ารู้ว่าควรทำอะไรและไม่ควรทำอะไร

คุณจะรักษาสิ่งต่าง ๆ ให้ปลอดภัยด้วยการตรวจสอบและรักษาความปลอดภัยอย่างต่อเนื่อง หากคุณไม่ทราบว่ามีอะไรทำหรืออย่างไรหรือทำไมหรือมีอะไรที่น่าสงสัยให้ขอคำแนะนำจากคนอื่น


9

คำตอบที่ยอดเยี่ยมโดย Richard Holloway หากคุณกำลังมองหาคำแนะนำทีละขั้นตอนชำระเงินคู่มือ 2 ส่วนต่อไปนี้จากห้องสมุด Slicehost

  1. http://articles.slicehost.com/2010/4/30/ubuntu-lucid-setup-part-1
  2. http://articles.slicehost.com/2010/4/30/ubuntu-lucid-setup-part-2

ฉันใช้มันเกือบทุกที่เมื่อฉันต้องตั้งค่าอินสแตนซ์ของ Ubuntu Server ฉันแน่ใจว่าคุณจะรักมัน

แหล่งใหญ่อื่น ๆ คือ Linode Library ที่http://library.linode.com/

ตรวจสอบบทความในสถานที่ทั้งสอง มีข้อมูลมากมายและคุณจะมีความรู้เพียงพอที่จะจัดการกับเซิร์ฟเวอร์ของคุณได้

PS: ไม่ว่าในทางใดห้องสมุดสามารถใช้แทนความสามารถในการหยั่งรู้ความเข้าใจและการตัดสินใจ


ดีใจเสมอที่ได้รับความช่วยเหลือ
Mir Nazim

"คำตอบที่ยอดเยี่ยมโดย Richard Holloway ... " - ขอบคุณมาก ฉันเห็นว่าเราจะเป็นเพื่อนที่ดี
Richard Holloway

2

สิ่งที่ฉันไม่เห็นกล่าวถึงคือ "ใช้ 64 บิต" สิ่งนี้ทำให้แน่ใจได้ว่าคุณได้รับการปกป้องหน่วยความจำ NX จากสิ่งอื่น ๆ


และคุณยังสามารถหาช่องโหว่ของรูทโลคอลหากคุณใช้โหมดความเข้ากันได้แบบ 32 บิต
vh1

เฉพาะในกรณีที่คุณไม่อัพเดทสถานะความปลอดภัยของเคอร์เนล :)
Kees Cook

1

สามสิ่งที่ฉันมักจะแนะนำคือ:

  • เมาท์พื้นที่ที่สามารถเขียนได้ทั่วโลกทั้งหมด (/ tmp, / var / tmp) เป็น 'noexec': ส่วนนี้ปลอดภัยโดยไม่มีข้อยกเว้นยกเว้น (ตามการเขียน) เว้นแต่ว่าคุณเลือกที่จะอัพเกรดระบบของคุณ ดูข้อผิดพลาด # 572723 บน Launchpad สำหรับรายละเอียดเพิ่มเติมที่นั่น

  • อย่าติดตั้งคอมไพเลอร์หรือแอสเซมเบลอร์เว้นแต่จำเป็นจริงๆ: ฉันคิดว่าตนเองอธิบายได้

  • เริ่มต้นใช้งาน AppArmor: AppArmor สามารถมองเห็นเป็นทางเลือกหนึ่งของ SELinux และเป็นคุณสมบัติที่ยอดเยี่ยมของ Ubuntu กับแอปพลิเคชัน Sandbox ที่ใช้งานแอปพลิเคชั่นเพื่อให้แน่ใจว่าพวกเขาไม่สามารถเข้าถึงได้มากกว่าสิ่งที่ต้องการ ฉันแนะนำให้อ่านคู่มือในฟอรัมถ้าคุณสนใจ http://ubuntuforums.org/showthread.php?t=1008906


1
  • ติดตั้งและกำหนดค่าiptablesด้วยชุดกฎที่เหมาะสมสำหรับสภาพแวดล้อมของคุณ การกรองทราฟฟิกทั้งขาเข้าและขาออก
  • psadเพื่อตรวจจับและเตือนเกี่ยวกับพอร์ตใด ๆ ที่สแกนกับระบบของคุณ
  • ใช้fail2banเพื่อป้องกันการพยายามลงชื่อเข้าใช้แบบ brute force กับ SSH
  • ไม่อนุญาตการเข้าถึงจากระยะไกลโดยใช้บัญชีรูทเพราะสิ่งนี้หมายความว่าหากผู้โจมตีพยายามจะบังคับให้เข้าถึงเซิร์ฟเวอร์ของคุณพวกเขาจะต้องใช้ทั้งชื่อผู้ใช้และรหัสผ่าน
  • ใช้รหัสผ่านที่คาดเดายากสำหรับบัญชีผู้ใช้ทั้งหมด
  • จำกัด การเข้าถึง SSH ให้ใช้ได้เฉพาะจากที่อยู่ IP ที่แน่นอนหากเป็นไปได้
  • ใช้ Tripwire ของระบบตรวจจับการบุกรุกบนโฮสต์อื่น
  • ตรวจสอบเซิร์ฟเวอร์ด้วยโปรแกรมตรวจสอบเครือข่ายเช่น nagios

0

ถ้าฉันเป็นคุณฉันจะดูเป็น iptables (ไฟร์วอลล์ Linux มาตรฐาน) และดูว่าบริการใดกำลังทำงานอยู่ โดยทั่วไปคุณต้องการใช้งานบริการที่คุณต้องการเท่านั้นเช่นไม่ได้เรียกใช้เว็บเซิร์ฟเวอร์เมื่อคุณต้องการตั้งค่าเซิร์ฟเวอร์อีเมลและเปิดพอร์ตที่คุณต้องการเท่านั้น ทุกอย่างอื่นควรถูกล็อคไว้!

คำแนะนำเกี่ยวกับ iptables: https://help.ubuntu.com/community/IptablesHowTo

หวังว่านี่จะช่วยได้!

ป.ล. หากคุณต้องการความช่วยเหลือเพิ่มเติมในการใช้งาน irc และกด # ubuntu-server channel บน freenode


โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.