ติดตั้ง OpenSSH บน Windows

Install OpenSSH using Windows Settings

  1. Open Settings, select Apps > Apps & Features, then select Optional Features.
  2. Scan the list to see if the OpenSSH is already installed. If not, at the top of the page, select Add a feature, then:
  • Find OpenSSH Client, then click Install
  • Find OpenSSH Server, then click Install

แต่ถ้าเจอแค่ OpenSSH Client ไม่เจอ OpenSSH Server ให้ติดตั้งด้วย PowerShell

Install OpenSSH using PowerShell

To install OpenSSH using PowerShell, run PowerShell as an Administrator. To make sure that OpenSSH is available, run the following cmdlet:

Get-WindowsCapability -Online | Where-Object Name -like 'OpenSSH*'

This should return the following output if neither are already installed:

Name  : OpenSSH.Client~~~~0.0.1.0
State : NotPresent

Name  : OpenSSH.Server~~~~0.0.1.0
State : NotPresent

Then, install the server or client components as needed:

# Install the OpenSSH Client
Add-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0

# Install the OpenSSH Server
Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0

Both of these should return the following output:

Path          :
Online        : True
RestartNeeded : False

Start and configure OpenSSH Server

To start and configure OpenSSH Server for initial use, open PowerShell as an administrator, then run the following commands

# Start the sshd service
Start-Service sshd

# OPTIONAL but recommended:
Set-Service -Name sshd -StartupType 'Automatic'

# Confirm the Firewall rule is configured. It should be created automatically by setup. Run the following to verify
if (!(Get-NetFirewallRule -Name "OpenSSH-Server-In-TCP" -ErrorAction SilentlyContinue | Select-Object Name, Enabled)) {
    Write-Output "Firewall Rule 'OpenSSH-Server-In-TCP' does not exist, creating it..."
    New-NetFirewallRule -Name 'OpenSSH-Server-In-TCP' -DisplayName 'OpenSSH Server (sshd)' -Enabled True -Direction Inbound -Protocol TCP -Action Allow -LocalPort 22
} else {
    Write-Output "Firewall rule 'OpenSSH-Server-In-TCP' has been created and exists."
}

ติดตั้ง WSL 2

ดู doc ที่ aka.ms/wsl2

ขั้นตอนการติดตั้ง WSL 2

1.update Windows ให้เป็นเวอร์ชันล่าสุด (1909) , ตรวจสอบเวอร์ชันด้วยคำสั่ง winver

2.เปิด Windows Insider Program Settings แล้วเลือก Fast

3.เปิด Turn Windows features on or off เลือก Windows Subsystem for Linux และ Virtual Machine Platform

4.เปิด Microsoft Store เลือกติดตั้ง Ubuntu 18.04

หลังจากติดตั้งเสร็จ จะให้เราตั้ง username และ password

5.เปิด Power Shell

list ดู Distro ที่ติดตั้ง

> wsl -l
Windows Subsystem for Linux Distributions:
Ubuntu-18.04 (Default)

กำหนดให้ Ubuntu-18.04 ที่พึ่งติดตั้ง ใช้ WSL 2

> wsl --set-version Ubuntu-18.04 2

กำหนดให้ default เป็นเวอร์ชัน 2 เลย

> wsl --set-default-version 2

ตรวจสอบดูว่าเป็น version 2 แล้วหรือยัง

> wsl -l -v
  NAME            STATE           VERSION
* Ubuntu-18.04    Stopped         2

ถ้ารันแล้วไม่เจอคำสั่ง -v แสดงว่ายังเป็น WSL 1

6.กลับมาที่ app Ubuntu18.04 แล้วลองเรียก VS Code

> wsl -d Ubuntu-18.04

หรือ

$ code .

ตรวจสอบเวอร์ชันของ Windows 10

เปิด cmd แล้วพิมพ์

> ver
Microsoft Windows [Version 10.0.19551.1005]

นำเลข build ที่ได้ไปเทียบดูเวอร์ชันที่ Windows 10 release information

VersionAvailability dateOS buildLatest revision date
190912-11-1918363.59214-01-20
190321-05-1918362.59214-01-20
180928-03-1917763.10123-01-20
180913-11-1817763.10123-01-20
180310-07-1817134.12823-01-20
180330-04-1817134.12823-01-20
170918-01-1816299.16523-01-20
170917-10-1716299.16523-01-20

หรือดู Version จากค่า register

> Reg Query "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion" /v ReleaseId
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion
    ReleaseId    REG_SZ    2004

ดูด้วย GUI ง่ายสุด เปิด cmd หรือกด Win+R แล้วพิมพ์

> winver