เปลี่ยน Port ssh จาก 22 เป็นอื่น

ใน Ensim Pro 4.o.x หลังจากใช้งานมาได้ระยะหนึ่ง พบปัญหาว่า Reseller สามารถกำหนดเปิด Service SSH ใน Site ได้และทำให้ Server Security ไม่ดีพอ
จึงหาทางที่จะ Disable SSH สำหรับ Reseller ให้ได้ แต่ก็ยังไม่พบวิธี
ได้นำคำถามนี้ไปถามกับทางคุณอั๋น Thaibiz และได้รับคำแนะนำมาว่า ให้ใช้วิธีเปลี่ยน Port SSH เอา จึงไปค้นหาวิธีต่างๆ มา และได้ทดลองทำการกำหนด Port ให้กับ SSH ใหม่ ดังนี้
สั่ง



pico -w /etc/ssh/sshd_config


ค้นหาบรรทัดนี้ ในไฟล์ sshd_config

#Port 22
#Protocol 1,2
#ListenAddress 0.0.0.0
#ListenAddress ::


ให้แก้โดย ลบ # หน้า Port 22 ออก แล้วกำหนดเลข Port ที่ต้องการใช้ลงไปแทน ในตัวอย่างนี้ จะสมมติเป็น 1234 จะได้ดังนี้
อย่าลืมกำหนดให้ใช้ ssh Protocal 2 ด้วย

Port 1234
Protocol 2
#ListenAddress 0.0.0.0
#ListenAddress ::


หลังจากนั้น กด Control + X [Enter]เพื่อ Save ไฟล์
หากติดตั้ง apf firewall อยู่ด้วย ก็ต้องไปเปิด Port 1234 ไว้ด้วย ไม่งั้นเดี๋ยวเข้าไม่ได้
โดยแก้ดังนี้


pico -w /etc/apf/conf.apf


แล้วแก้ไขที่บรรทัด IG_TCP_CPORTS เพื่อเพิ่ม Port 1234 เข้าไป ดังนี้


# Common ingress (inbound) TCP ports
IG_TCP_CPORTS=”21,22,25,53,80,110,143,443,1234,19638″


หลังจากนั้น Restart ssh โดยสั่ง


#/etc/rc.d/init.d/sshd restart


แล้ว Restart apf โดยสั่ง


/usr/local/sbin/apf -r


อย่าเพิ่งรีบ logout ให้ทดสอบ login ใหม่ก่อน ทาง Port 1234 ถ้าผ่าน ก็เป็นอันเสร็จ
สำหรับ Mac OS X หรือ *NIX ทั้งหลาย ต้องเพิ่ม Option ในการ Login ทาง ssh เป็นดังนี้


#ssh -p 1234 user@123.456.789.012


ทั้งนี้ การเปลี่ยน Port SSH จะมีผลดีในเรื่องของ security ใน Server ทั่วไปด้วย เนื่องจากทำให้ผู้ไม่ประสงค์ดีไม่รู้ว่า ssh หรือ telnet เข้า Server ได้หรือไม่ ทางไหน