Computer >> คอมพิวเตอร์ >  >> ระบบ >> Windows Server

วิธีใช้ Native SSH Client ใน Windows 10

ไคลเอ็นต์ SSH ในตัว ปรากฏใน Windows 10 และ Windows Server 2019 Ssh.exe สามารถใช้เชื่อมต่อกับเซิร์ฟเวอร์ Linux/UNIX, โฮสต์ VMWare ESXi และอุปกรณ์อื่นๆ ได้อย่างปลอดภัยแทน Putty, MTPuTTY และไคลเอ็นต์ SSH บุคคลที่สามอื่นๆ ไคลเอ็นต์ Windows SSH ดั้งเดิมนั้นอิงตาม OpenSSH port และติดตั้งล่วงหน้าใน Windows โดยเริ่มจาก Windows 10 build 1809

สารบัญ:

  • จะเปิดใช้งาน (ติดตั้ง) ไคลเอนต์ OpenSSH บน Windows 10 ได้อย่างไร
  • การใช้ Native SSH Client บน Windows 10
  • การใช้ SCP.exe เพื่อโอนไฟล์ไปยัง/จากโฮสต์ Windows โดยใช้ SSH

จะเปิดใช้งาน (ติดตั้ง) ไคลเอนต์ OpenSSH บน Windows 10 ได้อย่างไร

ไคลเอ็นต์ OpenSSH รวมอยู่ใน Windows 10 ฟีเจอร์แบบออนดีมานด์ (เช่น RSAT) ไคลเอ็นต์ SSH ได้รับการติดตั้งตามค่าเริ่มต้นใน Windows Server 2019, Windows 10 1809 และบิลด์ที่ใหม่กว่า

ตรวจสอบว่าติดตั้งไคลเอ็นต์ SSH แล้ว:

Get-WindowsCapability -Online | ? Name -like 'OpenSSH.Client*'

วิธีใช้ Native SSH Client ใน Windows 10

ในตัวอย่างของเรา มีการติดตั้งไคลเอนต์ OpenSSH (สถานะ:ติดตั้งแล้ว )

ถ้าไม่ (สถานะ:ไม่อยู่ ) คุณสามารถติดตั้งโดยใช้:

  • คำสั่ง PowerShell: Add-WindowsCapability -Online -Name OpenSSH.Client*
  • ด้วย DISM: dism /Online /Add-Capability /CapabilityName:OpenSSH.Server~~~~0.0.1.0
  • ผ่านการตั้งค่า -> แอป -> คุณสมบัติเสริม -> เพิ่มคุณสมบัติ ค้นหา ไคลเอนต์ OpenSSH ในรายการแล้วคลิกติดตั้ง .

วิธีใช้ Native SSH Client ใน Windows 10

ไฟล์ไบนารี OpenSSH อยู่ใน c:\Windows\System32\OpenSSH\ .

  • ssh.exe – ไคลเอ็นต์ SSH ปฏิบัติการได้
  • scp.exe – เครื่องมือสำหรับการคัดลอกไฟล์ในเซสชัน SSH;
  • ssh-keygen.exe – เครื่องมือในการสร้างคีย์การพิสูจน์ตัวตน RSA SSH;
  • ssh-agent.exe – ใช้เพื่อจัดการคีย์ RSA;
  • ssh-add.exe – เพิ่มคีย์ลงในฐานข้อมูลตัวแทน SSH

วิธีใช้ Native SSH Client ใน Windows 10

คุณสามารถติดตั้ง OpenSSH บน Windows เวอร์ชันก่อนหน้าได้เช่นกัน เพียงดาวน์โหลดและติดตั้ง Win32-OpenSSH จาก GitHub (คุณสามารถหาตัวอย่างได้ในบทความ:การกำหนดค่า SSH FTP บน Windows)

การใช้ Native SSH Client บน Windows 10

ในการเริ่มต้นไคลเอ็นต์ SSH ให้เรียกใช้พร้อมท์ PowerShell หรือ cmd.exe คุณสามารถแสดงรายการตัวเลือกและไวยากรณ์ที่ใช้ได้สำหรับ ssh.exe:

ssh

usage: ssh [-46AaCfGgKkMNnqsTtVvXxYy] [-b bind_address] [-c cipher_spec]
[-D [bind_address:]port] [-E log_file] [-e escape_char]
[-F configfile] [-I pkcs11] [-i identity_file]
[-J [user@]host[:port]] [-L address] [-l login_name] [-m mac_spec]
[-O ctl_cmd] [-o option] [-p port] [-Q query_option] [-R address]
[-S ctl_path] [-W host:port] [-w local_tun[:remote_tun]]
destination [command]

วิธีใช้ Native SSH Client ใน Windows 10

ในการเชื่อมต่อกับเซิร์ฟเวอร์ระยะไกลโดยใช้ SSH ให้ใช้คำสั่งต่อไปนี้:

ssh username@host

หากเซิร์ฟเวอร์ SSH ของคุณทำงานบนพอร์ตที่แตกต่างจาก TCP/22 มาตรฐาน ให้ระบุหมายเลขพอร์ต:

ssh username@host -p port

ตัวอย่างเช่น หากต้องการเชื่อมต่อกับโฮสต์ Linux ด้วยที่อยู่ IP 192.168.1.102 เป็นรูท ให้เรียกใช้คำสั่งนี้:

ssh [email protected]

ในการเชื่อมต่อครั้งแรก คุณจะเห็นคำขอให้เพิ่มโฮสต์คีย์ในรายการที่เชื่อถือได้ พิมพ์ yes และกด ENTER จากนั้นระบบจะเพิ่มลายนิ้วมือของคีย์โฮสต์ใน C:\Users\username\.ssh\known_hosts ไฟล์.

คุณจะได้รับแจ้งให้ใส่รหัสผ่าน ระบุรหัสผ่านรูทของคุณ และคอนโซลของเซิร์ฟเวอร์ Linux ระยะไกลควรเปิดขึ้น (ในตัวอย่างของฉัน มีการติดตั้ง CentOS บนเซิร์ฟเวอร์ระยะไกล)

วิธีใช้ Native SSH Client ใน Windows 10

เมื่อใช้ SSH คุณสามารถเชื่อมต่อทั้งกับ *Nix OS และ Windows ในบทความก่อนหน้านี้ เราได้แสดงวิธีกำหนดค่าเซิร์ฟเวอร์ OpenSSH ใน Windows 10 และเชื่อมต่อจากโฮสต์ Windows โดยใช้ไคลเอ็นต์ SSH

หากคุณใช้การตรวจสอบสิทธิ์ SSH กับคีย์ RSA (ดูตัวอย่างวิธีกำหนดค่าการตรวจสอบสิทธิ์ SSH โดยใช้คีย์ใน Windows) คุณสามารถระบุเส้นทางไปยังไฟล์คีย์ส่วนตัวในไคลเอ็นต์ SSH ได้ดังนี้:

ssh [email protected] -i "C:\Users\username\.ssh\id_rsa"

คุณยังเพิ่มคีย์ส่วนตัวให้กับ SSH-Agent ได้อีกด้วย ขั้นแรก เปิดใช้งานบริการ ssh-agent และกำหนดค่าการเริ่มต้นอัตโนมัติสำหรับบริการนั้น

set-service ssh-agent StartupType 'Automatic'
Start-Service ssh-agent

เพิ่มคีย์ส่วนตัวของคุณลงในฐานข้อมูล ssh-agent:

ssh-add "C:\Users\username\.ssh\id_rsa"

จากนั้น คุณจะสามารถเชื่อมต่อกับเซิร์ฟเวอร์ของคุณผ่าน SSH โดยไม่ต้องระบุพาธไปยังคีย์ RSA มันจะถูกใช้โดยอัตโนมัติ ตอนนี้คุณสามารถเชื่อมต่อกับเซิร์ฟเวอร์ของคุณได้อย่างปลอดภัยโดยไม่ต้องใช้รหัสผ่าน (หากคุณไม่ได้ป้องกันคีย์ RSA ของคุณด้วยรหัสผ่านอื่น):

ssh [email protected]

ต่อไปนี้คืออาร์กิวเมนต์ SSH ที่มีประโยชน์มากกว่า:

  • -C – ใช้เพื่อบีบอัดการรับส่งข้อมูลระหว่างไคลเอนต์และเซิร์ฟเวอร์ (มีประโยชน์ในกรณีที่การเชื่อมต่อช้าหรือไม่เสถียร)
  • -v – แสดงข้อมูลโดยละเอียดเกี่ยวกับการดำเนินการของไคลเอ็นต์ SSH ทั้งหมด
  • -R/-L – สามารถใช้เพื่อส่งต่อพอร์ตโดยใช้อุโมงค์ SSH

การใช้ SCP.exe เพื่อโอนไฟล์ไปยัง/จากโฮสต์ Windows โดยใช้ SSH

การใช้ scp.exe เครื่องมือ (เป็นส่วนหนึ่งของแพ็คเกจไคลเอนต์ Windows 10 SSH) คุณสามารถคัดลอกไฟล์จากคอมพิวเตอร์ของคุณไปยังเซิร์ฟเวอร์ SSH:

scp.exe "E:\ISO\CentOS-8.1.x86_64.iso" [email protected]:/home
วิธีใช้ Native SSH Client ใน Windows 10

คุณสามารถคัดลอกเนื้อหาไดเรกทอรีทั้งหมดแบบเรียกซ้ำได้:

scp -r E:\ISO\ [email protected]:/home

และในทางกลับกัน คุณสามารถถ่ายโอนไฟล์จากเซิร์ฟเวอร์ระยะไกลไปยังคอมพิวเตอร์ของคุณ:

scp.exe [email protected]:/home/CentOS-8.1.x86_64.iso c:\iso

หากคุณกำหนดค่าการรับรองความถูกต้องโดยใช้คีย์ RSA คุณจะไม่ได้รับแจ้งให้ป้อนรหัสผ่านเพื่อโอนไฟล์ สิ่งนี้มีประโยชน์หากคุณต้องการกำหนดค่าการคัดลอกไฟล์ตามกำหนดเวลาอัตโนมัติ

ดังนั้น คุณจึงสามารถเชื่อมต่อกับเซิร์ฟเวอร์ SSH ได้โดยตรงจาก Windows 10 ของคุณ คัดลอกไฟล์โดยใช้ scp โดยไม่ต้องใช้แอปหรือเครื่องมือของบุคคลที่สาม