ค้นหาเว็บไซต์

วิธีรับการแจ้งเตือนทางอีเมลเข้าสู่ระบบ SSH ของผู้ใช้และรูท


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

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

  1. บล็อกการโจมตีแบบ Brute Force ของเซิร์ฟเวอร์ SSH โดยใช้ DenyHosts
  2. ใช้ Pam_Tally2 เพื่อล็อคและปลดล็อคการเข้าสู่ระบบ SSH ที่ล้มเหลว
  3. 5 แนวทางปฏิบัติที่ดีที่สุดในการรักษาความปลอดภัยและปกป้องเซิร์ฟเวอร์ SSH

ดังนั้นจึงไม่ใช่แนวทางปฏิบัติที่ดีที่จะอนุญาต การเข้าสู่ระบบรูท โดยตรงผ่านเซสชัน SSH และแนะนำให้สร้าง บัญชีที่ไม่ใช่รูท ด้วย sudo แข็งแกร่ง> การเข้าถึง เมื่อใดก็ตามที่จำเป็นต้องเข้าถึง root ให้เข้าสู่ระบบในฐานะ ผู้ใช้ปกติ ก่อน จากนั้นจึงใช้ su เพื่อสลับไปใช้ผู้ใช้ root หากต้องการปิดใช้งานการเข้าสู่ระบบรูท SSH โดยตรง ให้ทำตามบทความด้านล่างของเราที่แสดงวิธีปิดใช้งานและจำกัดการเข้าสู่ระบบรูทใน SSH

  1. ปิดการใช้งานการเข้าสู่ระบบรูท SSH และจำกัดการเข้าถึง SSH

อย่างไรก็ตาม คู่มือนี้แสดงวิธีง่ายๆ ในการทราบว่าเมื่อมีคนเข้าสู่ระบบในฐานะรูทหรือผู้ใช้ปกติ ควรส่งการแจ้งเตือนทางอีเมลไปยังที่อยู่อีเมลที่ระบุพร้อมกับที่อยู่ IP ของการเข้าสู่ระบบครั้งล่าสุด ดังนั้น เมื่อคุณทราบที่อยู่ IP ของการเข้าสู่ระบบครั้งล่าสุดโดยผู้ใช้ที่ไม่รู้จัก คุณสามารถบล็อกการเข้าสู่ระบบ SSH ของที่อยู่ IP เฉพาะบนไฟร์วอลล์ iptables ได้

  1. วิธีบล็อกพอร์ตในไฟร์วอลล์ Iptables

วิธีการตั้งค่าการแจ้งเตือนอีเมลเข้าสู่ระบบ SSH ใน Linux Server

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

บน Debian/Ubuntu/Linux Mint
apt-get install mailx
บน RHEL/CentOS/Fedora
yum install mailx

ตั้งค่าการแจ้งเตือนอีเมลเข้าสู่ระบบ SSH Root

ตอนนี้เข้าสู่ระบบในฐานะผู้ใช้ root และไปที่โฮมไดเร็กทอรีของ root โดยพิมพ์คำสั่ง cd /root

cd /root

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

เปิดไฟล์ .bashrc ด้วยโปรแกรมแก้ไข vi หรือ nano โปรดจำไว้ว่า .bashrc เป็นไฟล์ที่ซ่อนอยู่ คุณจะไม่เห็นมันหากใช้คำสั่ง ls -l คุณต้องใช้แฟล็ก -a เพื่อดูไฟล์ที่ซ่อนอยู่ใน Linux

vi .bashrc

เพิ่มบรรทัดทั้งหมดต่อไปนี้ที่ด้านล่างของไฟล์ ตรวจสอบให้แน่ใจว่าได้แทนที่ “ServerName ” ด้วย ชื่อโฮสต์ ของเซิร์ฟเวอร์ของคุณ และเปลี่ยน “[email ” ด้วยที่อยู่อีเมลของคุณ

echo 'ALERT - Root Shell Access (ServerName) on:' `date` `who` | mail -s "Alert: Root Access from `who | cut -d'(' -f2 | cut -d')' -f1`" [email 

บันทึกและปิดไฟล์และออกจากระบบและกลับเข้าสู่ระบบอีกครั้ง เมื่อคุณเข้าสู่ระบบผ่าน SSH ไฟล์ .bashrc จะถูกดำเนินการตามค่าเริ่มต้นและส่งที่อยู่อีเมลของการแจ้งเตือนการเข้าสู่ระบบรูทถึงคุณ

ตัวอย่างอีเมล์แจ้งเตือน
ALERT - Root Shell Access (Database Replica) on: Thu Nov 28 16:59:40 IST 2013 tecmint pts/0 2013-11-28 16:59 (172.16.25.125)

ตั้งค่าการแจ้งเตือนอีเมลเข้าสู่ระบบผู้ใช้ SSH ปกติ

เข้าสู่ระบบในฐานะผู้ใช้ปกติ (tecmint) และไปที่โฮมไดเร็กตอรี่ของผู้ใช้โดยพิมพ์คำสั่ง cd /home/tecmint/

cd /home/tecmint

จากนั้น เปิดไฟล์ .bashrc และเพิ่มบรรทัดต่อไปนี้ที่ส่วนท้ายของไฟล์ ตรวจสอบให้แน่ใจว่าได้แทนที่ค่าตามที่แสดงด้านบน

echo 'ALERT - Root Shell Access (ServerName) on:' `date` `who` | mail -s "Alert: Root Access from `who | cut -d'(' -f2 | cut -d')' -f1`" [email 

บันทึกและปิดไฟล์และออกจากระบบและเข้าสู่ระบบอีกครั้ง เมื่อคุณเข้าสู่ระบบอีกครั้ง ไฟล์ .bashrc จะถูกดำเนินการและส่งที่อยู่อีเมลของการแจ้งเตือนการเข้าสู่ระบบของผู้ใช้ไปให้คุณ

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