Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> ระบบ >> Windows

วิธีใช้ OpenSSH Client built-in ของ Windows 10 แทน PuTTY

เมื่อต้องจัดการเครื่อง *nix จากระยะไกล คุณจะเกือบจะใช้ SSH เสมอ BSD หรือ Linux-based OS ที่รันบนเซิร์ฟเวอร์ จะมาพร้อม OpenSSH daemon ติดตั้งมาก่อน เพื่อ "คุย" กับ daemon นี้และโต้ตอบกับเครื่องระยะไกล คุณต้องการ SSH client ด้วย PuTTY เป็น SSH client ยอดนิยมบน Windows มานาน แต่ตั้งแต่อัปเดตใหญ่ล่าสุด Windows 10 มาพร้อม SSH client ติดตั้งมาก่อน ใช้ client นี้ง่ายและเร็วกว่าติดตั้งและตั้งค่า PuTTY

วิธีติดตั้ง OpenSSH Client ของ Windows

ก่อนอื่น ตรวจสอบว่าติดตั้งแล้วหรือยัง กดปุ่ม Windows logo หรือคลิก Start Menu พิมพ์ cmd เปิด Command Prompt

วิธีใช้ OpenSSH Client built-in ของ Windows 10 แทน PuTTY

พิมพ์ ssh กด Enter ควรแสดงสรุป command line switches สั้นๆ แสดงว่า client ติดตั้งแล้ว ข้ามส่วนนี้ไปได้

วิธีใช้ OpenSSH Client built-in ของ Windows 10 แทน PuTTY

หากได้ข้อความว่า command ไม่รู้จัก คลิก Start Menu พิมพ์ features เปิด "Apps & features" คลิก "Manage optional features"

วิธีใช้ OpenSSH Client built-in ของ Windows 10 แทน PuTTY

ต่อไป คลิก "Add a feature" เลื่อนลงจนเจอ "OpenSSH Client" ติดตั้งแล้วคุณพร้อมใช้งาน

วิธีใช้ OpenSSH Client built-in ของ Windows 10 แทน PuTTY

วิธีใช้ Built-in OpenSSH Client ของ Windows

หากคุณคุ้นเคยกับคำสั่ง ssh ใน Linux คุณรู้วิธีใช้บน Windows แล้ว มันมี syntax และ command line switches เหมือนกัน อ่าน manual SSH เต็มบนเว็บไซต์ OpenBSD ได้

Syntax พื้นฐานในการเชื่อมต่อเซิร์ฟเวอร์คือ ssh username@IP-address-or-hostname

ตัวอย่าง:

ssh root@203.0.113.1
ssh john@example.com

ตอน login ด้วย password ง่าย แค่พิมพ์ yes ยอมรับ fingerprint แล้วพิมพ์ password (ตัวอักษรจะไม่แสดงบนหน้าจอ)

วิธีใช้ OpenSSH Client built-in ของ Windows 10 แทน PuTTY

อย่างไรก็ตาม แนะนำให้ใช้ SSH keys แทน password คอมพิวเตอร์ zombie จาก botnet สแกนและพยายาม brute-force password บน OpenSSH servers ตลอดเวลา Keys ไม่สามารถ brute-force ได้ มันปลอดภัยกว่ามาก การใช้ password ร่วมกับ fail2ban Fail2ban บล็อกการพยายามหลายครั้งจาก IP เดียวกัน แต IP อื่นจะลอง password ต่างๆ จนหนึ่งในนั้นโชคดี

วิธี Login ด้วย SSH Keys

มีหลายวิธีสร้าง key pairs สำหรับ SSH authentication และคุณมี ssh-keygen บน Windows ใช้ใน command prompt ได้ หลังสร้าง key pair แล้ว เพิ่ม public key ไปที่เซิร์ฟเวอร์ และปิด password logins หลังจากนั้น บันทึก private key บนคอมพิวเตอร์ Windows

ตอน login คุณสามารถระบุ path ไปยัง private key นี้ หลังพารามิเตอร์ -i ในคำสั่งเช่น:

ssh -i C:\Users\mte\testkey root@203.0.113.1

วิธีใช้ OpenSSH Client built-in ของ Windows 10 แทน PuTTY

อีกวิธีคือย้าย private key ไปที่ default location หลังการเชื่อมต่อครั้งแรก SSH client จะสร้างไดเรกทอรี .ssh ใน current user directory คุณสามารถเปิดไดเรกทอรีได้โดยพิมพ์ใน command prompt:

explorer %userprofile%\.ssh

ตอนนี้ คัดลอก private key มาที่นี่ และตั้งชื่อว่า id_rsa

วิธีใช้ OpenSSH Client built-in ของ Windows 10 แทน PuTTY

จากนี้ไป คุณสามารถ login ด้วย private key นี้โดยไม่ต้องใช้พารามิเตอร์ -i

ssh root@203.0.113.1

พารามิเตอร์ SSH Command ที่มีประโยชน์

  • -p – ใช้หาก SSH server ฟังที่ port อื่น (ไม่ใช่ 22) ตัวอย่าง: ssh -p 4444 root@203.0.113.1
  • -C – บีบอัด traffic ระหว่าง client และ server มีประโยชน์เฉพาะ connection ช้าๆ
  • -v – Verbose mode แสดงรายละเอียดมากขึ้น ช่วย debug ปัญหาการเชื่อมต่อ

ตัวอย่างคำสั่ง:

ssh -p 4444 -C -v root@203.0.113.1

สรุป

เนื่องจากนี้คือ OpenSSH client เดียวกับบน Linux บางคำสั่งอย่าง sftp ก็พร้อมใช้งาน ทำให้ upload/download ไฟล์ไป/มาจาก remote servers สะดวก สำหรับผู้ชอบ command line หมายความว่าไม่ต้องติดตั้ง FTP clients อย่าง FileZilla อีกแล้ว ยังสามารถตั้งค่า SSH tunnels ด้วยคำสั่ง ssh ได้ อาจครอบคลุมในบทความอนาคต เนื่องจากทำให้บางอย่าง "เป็นไปไม่ได้" กลายเป็นได้ เช่น รับ incoming connections บนคอมพิวเตอร์ local แม้ ISP ไม่ให้ private external IP (หลาย clients อยู่หลัง IP อินเทอร์เน็ตเดียวกัน)