วันพฤหัสบดีที่ 4 กันยายน พ.ศ. 2551

Config SSH เพิ่มความปลอดภัยให้ server

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) อย่างปลอดภัยแล้วครับ

ที่มา จากคุณ ShareKnowledge http://www.thaibsd.com/webboard/show.php?Category=thaibsd&No=5552

ไม่มีความคิดเห็น:

ที่เป็นตัวฉัน

รูปภาพของฉัน
เรียนภาษาอังกฤษมา แต่ชีวิตผกผันให้ต้องมาเป็น admin ซะนี่ เล่นเอาซะมึน และงงตามลำดับ คิดอย่างเดียวว่า เป็นอะไรเป็นได้ถ้าใจอยากเป็น อุปสรรคคือแบบฝึกหัด ท้อแต่ไม่เคยถอย คิดไว้เสมอ ความพยายามอยู่ที่ไหน ความสำเร็จอยู่ที่นั่น ถ้าพยายามก่อน ก็ชนะแล้ว 50% อีก 50 % ใช้ความสามารถเอาเอง