เมื่อคุณต้องการจัดการเครื่อง *nix จากระยะไกล คุณจะใช้ SSH เกือบทุกครั้ง ระบบปฏิบัติการที่ใช้ BSD หรือ Linux ที่ทำงานบนเซิร์ฟเวอร์จะมาพร้อมกับ OpenSSH daemon ที่ติดตั้งไว้ล่วงหน้า หากต้องการ "พูดคุย" กับภูตนี้และโต้ตอบกับเครื่องระยะไกล คุณต้องมีไคลเอ็นต์ SSH ด้วย PuTTY เป็นไคลเอนต์ SSH ที่ได้รับความนิยมสูงสุดที่ใช้กับ Windows มาเป็นเวลานาน แต่ตั้งแต่การอัปเดตครั้งใหญ่ครั้งล่าสุด Windows 10 ก็มาพร้อมกับไคลเอนต์ SSH ที่ติดตั้งไว้ล่วงหน้า การใช้ไคลเอ็นต์นี้ง่ายกว่าและเร็วกว่าแทนที่จะติดตั้งและกำหนดค่า PuTTY
วิธีการติดตั้งไคลเอนต์ OpenSSH ของ Windows
ขั้นแรก ให้ตรวจสอบว่าได้ติดตั้งไว้แล้วหรือไม่ กดแป้นโลโก้ Windows บนแป้นพิมพ์หรือคลิกที่เมนูเริ่ม พิมพ์ cmd
แล้วเปิด Command Prompt
ตอนนี้พิมพ์ ssh
และกด Enter ควรแสดงสรุปสั้นๆ ของการสลับบรรทัดคำสั่ง ซึ่งหมายความว่าไคลเอ็นต์ได้รับการติดตั้งแล้ว และคุณสามารถข้ามส่วนที่เหลือของส่วนนี้ได้
หากคุณได้รับข้อความที่ระบุว่าไม่รู้จักคำสั่ง ให้คลิกที่เมนูเริ่ม แล้วพิมพ์ features
. เปิด “แอปและฟีเจอร์” แล้วคลิก “จัดการฟีเจอร์เสริม”
จากนั้นคลิกที่ "เพิ่มคุณสมบัติ" และเลื่อนลงมาจนกว่าคุณจะพบ "ไคลเอ็นต์ OpenSSH" ติดตั้งแล้วคุณควรจะไป
วิธีใช้ไคลเอนต์ OpenSSH ในตัวของ Windows
หากคุณคุ้นเคยกับ ssh
คำสั่งใน Linux คุณรู้วิธีใช้งานบน Windows แล้ว มีสวิตช์ไวยากรณ์และบรรทัดคำสั่งเดียวกัน คุณสามารถอ่านคู่มือ SSH ฉบับสมบูรณ์ได้บนเว็บไซต์ของ OpenBSD
ไวยากรณ์พื้นฐานในการเชื่อมต่อกับเซิร์ฟเวอร์คือ ssh username@IP-address-or-hostname
.
ตัวอย่าง:
ssh [email protected] ssh [email protected]
เมื่อคุณเข้าสู่ระบบด้วยรหัสผ่าน เป็นเรื่องง่าย เพียงพิมพ์ yes
เพื่อยอมรับลายนิ้วมือ แล้วพิมพ์รหัสผ่านของคุณ (ตัวอักษรจะไม่ปรากฏบนหน้าจอ)
อย่างไรก็ตาม ขอแนะนำให้ใช้คีย์ SSH แทนรหัสผ่าน คอมพิวเตอร์ซอมบี้จากบ็อตเน็ตจะสแกนและพยายามบังคับใช้รหัสผ่านบนเซิร์ฟเวอร์ OpenSSH อย่างต่อเนื่อง กุญแจไม่สามารถบังคับได้ มีความปลอดภัยมากกว่าการใช้รูปแบบรหัสผ่านที่แนะนำทั่วไป บวกกับ fail2ban . Fail2ban บล็อกการพยายามหลายครั้งจาก IP เดียวกัน แต่ IP อื่นจะลองใช้รหัสผ่านที่แตกต่างกันไปจนกว่าจะโชคดี
วิธีการเข้าสู่ระบบด้วยคีย์ SSH
มีหลายวิธีในการสร้างคู่คีย์สำหรับการตรวจสอบสิทธิ์ SSH และคุณมี ssh-keygen
พร้อมใช้งานบน Windows ซึ่งคุณสามารถใช้ในพรอมต์คำสั่ง หลังจากที่คุณสร้างคู่แล้ว ให้เพิ่มกุญแจสาธารณะในเซิร์ฟเวอร์ของคุณและปิดใช้งานการเข้าสู่ระบบด้วยรหัสผ่าน หลังจากนั้น ให้บันทึกคีย์ส่วนตัวบนคอมพิวเตอร์ Windows ของคุณ
เมื่อคุณเข้าสู่ระบบ คุณสามารถระบุพาธไปยังคีย์ (ส่วนตัว) หลัง -i
พารามิเตอร์ในคำสั่งเช่น:
ssh -i C:\Users\mte\testkey [email protected]
มิฉะนั้น คุณสามารถย้ายคีย์ส่วนตัวไปยังตำแหน่งเริ่มต้นได้ หลังจากการเชื่อมต่อครั้งแรก ไคลเอ็นต์ SSH จะสร้างไดเร็กทอรี .ssh
ในไดเร็กทอรีผู้ใช้ปัจจุบันของคุณ คุณสามารถเปิดไดเร็กทอรีโดยพิมพ์คำสั่งนี้ในพรอมต์คำสั่ง:
explorer %userprofile%\.ssh
ตอนนี้ คัดลอกคีย์ส่วนตัวของคุณที่นี่แล้วตั้งชื่อว่า id_rsa
.
จากนี้ไป คุณสามารถเข้าสู่ระบบด้วยคีย์ส่วนตัวนี้โดยไม่ต้องใช้ -i
พารามิเตอร์
ssh [email protected]
พารามิเตอร์คำสั่ง SSH ที่มีประโยชน์
-p
– ใช้สิ่งนี้หากเซิร์ฟเวอร์ SSH ของคุณกำลังฟังบนพอร์ตอื่น (นอกเหนือจาก 22) ตัวอย่าง:ssh -p 4444 [email protected]
-C
– บีบอัดทราฟฟิกระหว่างไคลเอนต์และเซิร์ฟเวอร์ มีประโยชน์เฉพาะในการเชื่อมต่อที่ช้ามากเท่านั้น-v
– โหมด Verbose แสดงข้อมูลให้มากขึ้นเกี่ยวกับสิ่งที่เกิดขึ้น ช่วยคุณแก้ปัญหาการเชื่อมต่อได้
ตัวอย่างคำสั่ง:
ssh -p 4444 -C -v [email protected]
บทสรุป
เนื่องจากโดยพื้นฐานแล้วนี่เป็นไคลเอนต์ OpenSSH เดียวกันกับที่คุณพบบนเครื่อง Linux บางคำสั่งเช่น sftp
นอกจากนี้ยังมี สิ่งนี้อำนวยความสะดวกในการอัปโหลดและดาวน์โหลดไฟล์ไปยัง/จากเซิร์ฟเวอร์ระยะไกล สำหรับผู้ที่ชื่นชอบบรรทัดคำสั่ง หมายความว่าพวกเขาไม่จำเป็นต้องติดตั้งไคลเอนต์ FTP เช่น FileZilla อีกต่อไป นอกจากนี้ยังสามารถตั้งค่าอุโมงค์ข้อมูล SSH ด้วย ssh
สั่งการ. เราอาจกล่าวถึงสิ่งนี้ในบทช่วยสอนในอนาคต เพราะมันทำให้บางสิ่ง "เป็นไปไม่ได้" เป็นไปได้ เช่น การยอมรับการเชื่อมต่อภายนอกบนคอมพิวเตอร์ในพื้นที่ของคุณ แม้ว่า ISP ของคุณจะไม่ได้เสนอที่อยู่ IP ภายนอกส่วนตัวให้คุณ (มีไคลเอ็นต์จำนวนมากที่นั่งอยู่หลังอินเทอร์เน็ตเดียวกัน ที่อยู่ IP)