GotoKnow
  • เข้าระบบ
  • สมัครสมาชิก
  • แผงจัดการ
  • ออกจากระบบ
GotoKnow

การตั้ง SSH ให้ปลอดภัย

SSH
Secure Shell (SSH) เป็นโพรโตคอลในการสร้างการติดต่อเพื่อเข้าใช้งานระบบอย่างปลอดภัยมากกว่าการติดต่อแบบเดิมๆ ที่มีการส่งข้อมูลเป็นเพียงตัวอักษรเปล่าๆ (Plain text) โดยที่โพรโตคอลดังกล่าวจะทำการเข้ารหัสข้อมูลทุกอย่างไม่ว่าจะเป็น ชื่อผู้ใช้ รหัสผ่าน หรือข้อมูลอื่นๆ ก่อนที่จะทำการส่งไปยังเครื่องเซิร์ฟเวอร์ โดยปกตินิยมนำ SSH มาใช้งานแทน telnet เพราะมีความปลอดภัยมากกว่า

วิธีการส่วนมากที่ผู้โจมตีใช้กันคือการดักขโมยข้อมูลระหว่างไคลเอ็นต์และเซิร์ฟเวอร์ผ่านทางโพรโตคอล telnet ซึ่งข้อมูลที่ดักได้อาจจะเป็นชื่อที่ใช้ Login และรหัสผ่าน ที่ไม่ได้ถูกเข้ารหัสไว้ โดยใช้โปรแกรมประเภท Sniffer ทั่วๆไป และถ้าเกิดกรณีที่ผู้โจมตีดักขโมยชื่อผู้ใช้คือ root และรหัสผ่าน ความเสียหายที่ตามมาอาจจะมากจนเกินที่จะแก้ไขได้

ซึ่งในการติดตั้ง Slackware Linux ได้ทำการติดตั้ง Secure Shell (SSH) ให้เรียบร้อยแล้ว ซึ่งสามารถใช้งาน Secure Shell (SSH) ได้เลย แต่ก็ต้องมีการปรับแต่งค่า Secure Shell Daemon ของฝั่งเซิร์ฟเวอร์ที่รอรับการติดต่อจากไคลเอ็นต์ ให้มีความปลอดภัยมากที่สุด ซึ่งแฮกเกอร์ส่วนใหญ่พยายามทำการแฮก port SSH (22) โดยจะทำการแก้ไขในไฟล์ที่ชื่อว่า sshd_config ซึ่งรายละเอียดในไฟล์ที่สำคัญมีดังนี้ และให้ลบ # และแก้ไข ที่อยู่หน้า option ต่อไปนี้

Port 22
KeyRegenerationInterval 1h
ServerKeyBits 1024
LoginGraceTime 600
PermitRootLogin no
RSAAuthentication yes
RhostsRSAAuthentication no
PasswordAuthentication yes
PermitEmptyPasswords yes
AllowUsers admin user1 user2


คำแนะนำในการปรับแต่งค่าต่างๆ
Port 22
ระบุหมายเลขพอร์ตที่ใช้ในการติดต่อ โดยค่า default แล้วจะอยู่ที่พอร์ตที่ 22 แต่ถ้าแก้ไขให้ใช้พอร์ตอื่นก็จะสามารถหลอกแฮ็กเกอร์ที่อ่อนประสบการณ์ที่ได้รหัสผ่านแต่ก็ยังไม่ทราบพอร์ตได้KeyRegenerationInterval 1h
ServerKeyBits 1024
ระบุจำนวนบิตที่จะใช้ในคีย์ของเซิร์ฟเวอร์ ซึ่ง default คือ 768 ให้ทำการแก้ไขเป็น 1024 LoginGraceTime 600
PermitRootLogin no
ระบุว่าอนุญาตให้ accout ของ root ทำการ login เข้าระบบได้โดยตรงหรือไม่ ให้เปลี่ยนเป็น no คือไม่อนุญาติให้ accout root login โดยส่วนใหญ่ แฮกเกอร์พยายามทำการแฮก port SSH (22) โดยใช้ accout root
RSAAuthentication yes
ระบุว่าให้ใช้ RSA ในการ Authenticate โดย RSA จะใช้คีย์คู่ทั้ง public และ private ที่ถูกสร้างโดย ssh-keygen1utility ในกระบวนการ Authenticate
RhostsRSAAuthentication no
ระบุว่าจะให้สามารถใช้ rhosts ร่วมกับ RSA ในการ authenticate ได้หรือไม่
PasswordAuthentication yes
ระบุว่าให้ใช้รหัสผ่านในการทำ Authenticate
PermitEmptyPasswords no
ระบุว่าจะอนุญาตให้ Login โดยไม่ต้องใช้รหัสผ่านหรือไม่ ให้เลือก no เพื่อบังคับให้ป้อนรหัสผ่านทุกครั้ง
AllowUsers admin user1 user2
ระบุว่าจะอนุญาตให้ใคร Login ได้บ้าง โดยค่า default แล้วจะอนุญาตให้ทุกคนสามารถ Login เข้าระบบได้ และสามารถเพิ่มชื่อผู้ใช้ที่อนุญาตได้หลายคน โดยแยกแต่ละชื่อด้วยเครื่องหมายช่องว่างหรือ space เช่น อนุญาติให้ user ชื่อว่า admin user1 user2 สามารถ login เข้ามาได้

เมื่อทำการแก้ไขค่า configure แล้วให้ทำการ restart sshd

เท่านี้ก็สามารถใช้งาน Secure Shell (SSH) อย่างปลอดภัยแล้วครับ ....

http://www.thaibsd.com/webboard/show.php?Category=thaibsd&No=5552

บันทึกนี้เขียนที่ GotoKnow โดย 

คำสำคัญ (keywords): networkopensourcecomputeritงานพัฒนา
หมายเลขบันทึก: 24618
เขียน:
แก้ไข:
อ่าน:
สัญญาอนุญาต: สงวนสิทธิ์ทุกประการ

ความเห็น (0)