Xshell連接WSL Ubuntu 20.04 LTS / WSL設置靜態ip(33)


1. 方法1(此方法可能不行)

1、卸載重裝一遍ssh服務(自帶的不好用)

sudo apt-get remove openssh-server

sudo apt-get install openssh-server

2、編輯sshd_config文件

sudo vim /etc/ssh/sshd_config

在此位置添加如下內容:

image

 

PermitRootLogin yes    #如果需要用 root 直接登錄系統則此處改為 yes

PasswordAuthentication yes   #表示使用帳號密碼方式登錄

為了安全可以把默認端口Port 22改為其它值。

3、啟動ssh服務

sudo service ssh start

4、查看WSL IP地址

ip addr show

#

ifconfig

 

image

5Putty/Xshell中輸入WSL IP和端口號(默認:22)連接。本例中既可以用WSL IP 192.168.1.3連接,也可以用本機回路IP 127.0.0.1連接。推薦使用本機回路IP連接,因為不會變,而WSL IP可能隨着Win10系統重啟而改變。如果使用127.0.0.1無法連接,參看方法2

6、配置ssh服務隨Win10自啟動

上邊雖然讓Xshell連接上了WSL,但是每次Win10重啟后,ssh服務不會自動運行,需要打開WSL(例如:Ubuntu-20.04 LTS)終端啟動ssh服務,然后再打開Xshell連接,十分麻煩。可以配置讓sshWin啟動而啟動。參看:WSL2服務自啟動 / WSL ssh 開機自啟

2. 方法2(此方法一定可行)

參考網址:

1、先按照方法1操作完1~3

2、給WSL UbuntuWin10添加固定ip

1) 臨時生效:

Windows 10中,以管理員權限運行cmdWindows Powershell,然后執行以下兩個命令:

#Ubuntu中添加IP地址192.168.50.16,名為eth01

wsl -d Ubuntu-20.04 -u root ip addr add 192.168.50.16/24 broadcast 192.168.50.255 dev eth0 label eth0:1

 

#Win10中添加IP地址192.168.50.88

netsh interface ip add address "vEthernet (WSL)" 192.168.50.88 255.255.255.0

然后,可用192.168.50.16訪問Ubuntu192.168.50.88訪問Win10

2) 開機自動設置:

①方法1

a、「開始 > 運行 > 輸入:shell:startup

b、在此啟動目錄下建立一個wsl_ip.bat腳本,添加如下內容:

@echo off

 

:: 獲取管理員權限

setlocal

set uac=~uac_permission_tmp_%random%

md "%SystemRoot%\system32\%uac%" 2>nul

if %errorlevel%==0 ( rd "%SystemRoot%\system32\%uac%" >nul 2>nul ) else (

    echo set uac = CreateObject^("Shell.Application"^)>"%temp%\%uac%.vbs"

    echo uac.ShellExecute "%~s0","","","runas",1 >>"%temp%\%uac%.vbs"

    echo WScript.Quit >>"%temp%\%uac%.vbs"

    "%temp%\%uac%.vbs" /f

    del /f /q "%temp%\%uac%.vbs" & exit )

endlocal

 

:: WSL UbuntuWin10添加固定ip

wsl -d Ubuntu-20.04 -u root ip addr add 192.168.50.16/24 broadcast 192.168.50.255 dev eth0 label eth0:1

netsh interface ip add address "vEthernet (WSL)" 192.168.50.88 255.255.255.0

因為netsh interface ip add address "vEthernet (WSL)" 192.168.50.88 255.255.255.0這條命令必須以管理員身份運行,所以此腳本的上邊一段代碼是首先獲取管理員運行權限,然后才開始執行設置ip相關的命令;

c、因為此腳本放在啟動目錄下,所以Win10啟動的時候會自動運行此腳本設置ip,就可以用Xshell通過192.168.50.16訪問WSL Ubuntu了;

d、此方法缺點:每次開機運行此腳本時都會彈出一個黑窗然后自動關閉,不是很優雅。

②方法2:

通過BatToExeConverter.exe把上述腳本轉換成wsl_ip.exe,然后放入啟動目錄下,開機之后就不會彈出黑窗了,比較完美。

操作步驟:

image

image

 

 

5、配置ssh開機自啟參看方法1的步驟6

附件:33-S-BatToExeConverter.zip

 


>> 附件獲取地址見右側博客公告


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM