使用 xshell 登錄 Windows 的 linux 子系統


1 配置 SSH Server

# 卸載自帶的 ssh
sudo apt-get remove openssh-server

# 安裝 ssh
sudo apt-get install openssh-server

# 編輯配置文件
vim /etc/ssh/sshd_config

Port 2222 # 修改端口號,避免和 Windows ssh 服務端口沖突
UsePrivilegeSeparation yes # 使用密碼登錄
PermitRootLogin yes # 允許使用 root 用戶登錄


# 重啟 ssh 服務
sudo service ssh --full-restart

2 使用 xshell 登錄

連接配置

設置用戶名和密碼

設置用戶名和密碼

成功登錄

3 Windows 配置開機自啟動

3.1 windows 計划任務配置

可以使用windows自帶的定時任務計划上添加開機啟動Ubuntu ssh服務的任務。
搜索“任務計划程序”,操作-- 創建基本任務:

  • 觸發器:當計算機啟動時
  • 操作:啟動程序
  • 程序名:bash.exe(默認打開的文件夾搜索即可)
  • 參數為:-c "sudo -u root /usr/sbin/sshd",開啟 linux 子系統的 ssh 服務
  • 選擇“點擊完成打開屬性頁”按鈕,點擊完成,打開屬性頁
  • 在屬性頁選擇“使用最高權限運行”

3.2 測試計划任務命令

管理員身份打開 DOS 窗口

cd C:\WINDOWS\system32 # 進入到 bash.exe 所在路徑
bash.exe -c "sudo -u root /usr/sbin/sshd" # 輸入以下命令,回車

//  彈出如下提示
[sudo] password for user1: 

如果上述測試過程出現輸入密碼的彈窗,就需要為 user1 用戶進行后續配置。

3.3 linux 權限配置

配置完計划任務,執行時會因為 sudo root 要求輸入密碼,但因為任務自啟動,不能填充密碼。因此,我們可以針對啟動用戶設置使用 sudo 時無需密碼。

只需修改 /etc/sudoers 文件即可。

vim /etc/sudoers
\# 添加以下
user1 ALL=(ALL) NOPASSWD: ALL # user1 用戶執行 sudo 時無需密碼

再使用 3.2 的步驟測試,發現已經沒有輸入密碼的提示了。

4 計划任務測試

配置完成后,我們可以先關閉 linux 的 ssh 服務

sudo service ssh stop # 關閉 ssh 服務
ps aux | grep ssh # 查看 ssh 服務是否已關閉。只有 --color=auto 這一行。如果有其它行,使用 kill 命令關閉

回到任務計划程序頁面.
任務計划程序列表

找到建立的計划任務。右鍵點擊,手動運行,查看運行結果。如果“上次運行結果列”出現“操作成功完成”提示,就表示我們的計划任務配置成功啦!


免責聲明!

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



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