ปกป้องเซิร์ฟเวอร์ภายในบ้านของคุณจากการโจมตีภายนอก

วันนี้ฉันจะให้คำแนะนำเกี่ยวกับการมีเซิร์ฟเวอร์ภายในบ้านที่ปลอดภัยยิ่งขึ้น (หรือใหญ่กว่าเล็กน้อย) แต่ก่อนที่พวกเขาจะฉีกฉันออกจากชีวิต

ไม่มีอะไรปลอดภัยโดยสิ้นเชิง

ด้วยข้อแม้ที่กำหนดไว้อย่างดีฉันจึงดำเนินการต่อ

ฉันจะไปทีละส่วนและฉันจะไม่อธิบายแต่ละขั้นตอนอย่างระมัดระวัง ฉันจะพูดถึงมันและชี้แจงสิ่งเล็กน้อยเท่านั้นเพื่อให้พวกเขาสามารถไปที่ Google ด้วยความคิดที่ชัดเจนยิ่งขึ้นว่าพวกเขากำลังมองหาอะไร

ก่อนและระหว่างการติดตั้ง

  • ขอแนะนำอย่างยิ่งให้ติดตั้งเซิร์ฟเวอร์ให้ "น้อยที่สุด" ที่สุด วิธีนี้จะป้องกันไม่ให้บริการทำงานโดยที่เราไม่รู้ด้วยซ้ำว่ามีหรือมีไว้เพื่ออะไร เพื่อให้แน่ใจว่าการตั้งค่าทั้งหมดจะดำเนินการด้วยตัวคุณเอง
  • ขอแนะนำว่าอย่าใช้เซิร์ฟเวอร์เป็นเวิร์กสเตชันในชีวิตประจำวัน (ซึ่งคุณกำลังอ่านโพสต์นี้เช่น)
  • หวังว่าเซิร์ฟเวอร์จะไม่มีสภาพแวดล้อมแบบกราฟิก

การแบ่งพาร์ติชัน

  • ขอแนะนำให้กำหนดโฟลเดอร์ที่ผู้ใช้ใช้เช่น "/ home /" "/ tmp /" "/ var / tmp /" "/ opt /" ให้กับพาร์ติชันอื่นที่ไม่ใช่ระบบ
  • โฟลเดอร์ที่สำคัญเช่น "/ var / log" (ที่เก็บบันทึกระบบทั้งหมด) จะถูกวางไว้บนพาร์ติชันอื่น
  • ตอนนี้ขึ้นอยู่กับประเภทของเซิร์ฟเวอร์เช่นถ้าเป็นเซิร์ฟเวอร์อีเมล โฟลเดอร์ "/var/mail และ / หรือ /var/spool/mail»ควรเป็นพาร์ติชันแยกต่างหาก

รหัสผ่าน.

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

คำแนะนำคือ:

  • ที่ไม่มี: ชื่อของคุณชื่อสัตว์เลี้ยงชื่อญาติวันพิเศษสถานที่ ฯลฯ สรุปแล้ว. รหัสผ่านไม่ควรมีอะไรเกี่ยวข้องกับคุณหรือสิ่งใดก็ตามที่อยู่รอบตัวคุณหรือชีวิตประจำวันของคุณและไม่ควรมีอะไรเกี่ยวข้องกับบัญชี  ตัวอย่าง: ทวิตเตอร์ # 123.
  • รหัสผ่านต้องสอดคล้องกับพารามิเตอร์เช่น: รวมตัวพิมพ์ใหญ่ตัวพิมพ์เล็กตัวเลขและอักขระพิเศษ  ตัวอย่าง: DiAFsd · $ 354″

หลังจากติดตั้งระบบ

  • มันเป็นเรื่องส่วนตัว แต่ฉันชอบที่จะลบผู้ใช้ ROOT และมอบหมายสิทธิ์ทั้งหมดให้กับผู้ใช้รายอื่นดังนั้นฉันจึงหลีกเลี่ยงการโจมตีผู้ใช้รายนั้น เป็นเรื่องธรรมดามาก
ต้องแก้ไขไฟล์ / etc / sudoers ที่นั่นเราเพิ่มผู้ใช้ที่เราต้องการจะ ROOT จากนั้นเราก็ลบ Super User (ROOT) เก่าของเรา
  • การสมัครรับรายชื่ออีเมลที่มีการประกาศข้อบกพร่องด้านความปลอดภัยของการแจกจ่ายที่คุณใช้เป็นเรื่องจริง นอกเหนือจากบล็อก Bugzilla หรืออินสแตนซ์อื่น ๆ ที่สามารถเตือนคุณถึงข้อบกพร่องที่อาจเกิดขึ้นได้
  • เช่นเคยขอแนะนำให้อัปเดตระบบตลอดจนส่วนประกอบอย่างสม่ำเสมอ
  • บางคนแนะนำให้รักษาความปลอดภัย Grub หรือ LILO และ BIOS ของเราด้วยรหัสผ่าน
  • มีเครื่องมือเช่น "chage" ที่ช่วยให้ผู้ใช้ถูกบังคับให้เปลี่ยนรหัสผ่านทุกครั้งที่ X นอกเหนือจากเวลาขั้นต่ำที่ต้องรอและตัวเลือกอื่น ๆ

มีหลายวิธีในการรักษาความปลอดภัยพีซีของเรา ทั้งหมดข้างต้นเป็นก่อนการติดตั้งบริการ และพูดถึงบางสิ่ง

มีคู่มือมากมายที่ควรค่าแก่การอ่าน เพื่อเรียนรู้เกี่ยวกับทะเลแห่งความเป็นไปได้อันยิ่งใหญ่เมื่อเวลาผ่านไปคุณจะได้เรียนรู้สิ่งเล็ก ๆ น้อย ๆ อย่างใดอย่างหนึ่ง แล้วคุณจะรู้ว่าคิดถึง.. เสมอ ...

ตอนนี้ขอให้แน่ใจอีกนิด บริการ คำแนะนำแรกของฉันคือ: «อย่าออกจากการกำหนดค่าเริ่มต้น». ไปที่ไฟล์คอนฟิกูเรชันเซอร์วิสเสมออ่านเล็กน้อยเกี่ยวกับสิ่งที่พารามิเตอร์แต่ละตัวทำและอย่าทิ้งไว้เมื่อติดตั้ง มันมักจะนำปัญหามาให้

อย่างไรก็ตาม:

SSH (/ etc / ssh / sshd_config)

ใน SSH เราสามารถทำหลายสิ่งเพื่อไม่ให้ละเมิดได้ง่าย

ตัวอย่างเช่น:

- ไม่อนุญาตให้ล็อกอิน ROOT (ในกรณีที่คุณไม่ได้เปลี่ยนแปลง):

"PermitRootLogin no"

- อย่าปล่อยให้รหัสผ่านว่างเปล่า

"PermitEmptyPasswords no"

- เปลี่ยนพอร์ตที่มันฟัง

"Port 666oListenAddress 192.168.0.1:666"

- อนุญาตเฉพาะผู้ใช้บางราย

"AllowUsers alex ref me@somewhere"   me @ ที่ใดที่หนึ่งคือการบังคับให้ผู้ใช้เชื่อมต่อจาก IP เดียวกันเสมอ

- อนุญาตเฉพาะกลุ่ม

"AllowGroups wheel admin"

เคล็ดลับ

  • ค่อนข้างปลอดภัยและเกือบจะบังคับให้ผู้ใช้ ssh ผ่าน chroot
  • คุณยังสามารถปิดการโอนไฟล์
  • จำกัด จำนวนครั้งในการเข้าสู่ระบบที่ล้มเหลว

เครื่องมือที่จำเป็นเกือบทั้งหมด

ล้มเหลว2แบน: เครื่องมือนี้อยู่ใน repos ช่วยให้เราสามารถ จำกัด จำนวนการเข้าถึงบริการหลายประเภท "ftp, ssh, apache ... etc" โดยห้าม ip ที่เกินขีด จำกัด ของความพยายาม

ผู้แข็งตัว: เครื่องมือเหล่านี้เป็นเครื่องมือที่ช่วยให้เราสามารถ "ทำให้แข็ง" หรือควบคุมการติดตั้งของเรากับไฟร์วอลล์และ / หรืออินสแตนซ์อื่น ๆ ในหมู่พวกเขา "แข็ง และ Bastille Linux«

เครื่องตรวจจับผู้บุกรุก: มี NIDS, HIDS และเครื่องมืออื่น ๆ มากมายที่ช่วยให้เราสามารถป้องกันและป้องกันตัวเองจากการโจมตีผ่านบันทึกและการแจ้งเตือน ท่ามกลางเครื่องมืออื่น ๆ อีกมากมาย มีอยู่ "OSSEC«

สรุปแล้ว. นี่ไม่ใช่คู่มือการรักษาความปลอดภัย แต่เป็นชุดของรายการที่ต้องคำนึงถึงเพื่อให้มีเซิร์ฟเวอร์ที่ปลอดภัยพอสมควร

เป็นคำแนะนำส่วนตัว อ่านให้มากเกี่ยวกับวิธีดูและวิเคราะห์ LOGS และมาเป็นข้อมูลเชิงลึกของ Iptables กัน นอกจากนี้ยิ่งซอฟต์แวร์ติดตั้งบนเซิร์ฟเวอร์มากเท่าไหร่ก็ยิ่งมีความเสี่ยงมากขึ้นเท่านั้นเช่น CMS ต้องได้รับการจัดการที่ดีอัปเดตและดูให้ดีว่าเราเพิ่มปลั๊กอินประเภทใด

ภายหลังฉันต้องการส่งโพสต์เกี่ยวกับวิธีการตรวจสอบบางสิ่งที่เฉพาะเจาะจง หากฉันสามารถให้รายละเอียดเพิ่มเติมและทำแบบฝึกได้


เพิ่มเป็นแหล่งข้อมูลที่ต้องการใน Google