Ubuntu虛擬機使用SSH遠程控制的完整步驟
在開始前,請確保:
ubuntu
)和密碼。SSH服務(OpenSSH Server)是遠程控制的核心組件,需先在虛擬機中安裝并啟動。
打開Ubuntu虛擬機的終端(快捷鍵Ctrl+Alt+T
),依次執行以下命令:
sudo apt update # 更新軟件包列表
sudo apt install openssh-server # 安裝OpenSSH Server
安裝過程中會自動處理依賴關系,無需額外操作。
安裝完成后,執行以下命令啟動SSH服務:
sudo systemctl start ssh # 立即啟動SSH服務
為確保虛擬機重啟后SSH服務自動運行,需設置開機自啟:
sudo systemctl enable ssh # 開啟開機自啟
通過以下命令確認SSH服務是否正常運行:
sudo systemctl status ssh
若輸出中顯示active (running)
(如● ssh.service - OpenBSD Secure Shell server
),則說明SSH服務已成功啟動。
要從主機或其他設備連接虛擬機,需獲取其IP地址。在虛擬機終端中執行:
ip addr # 或使用`ip a`(更簡潔的輸出)
在輸出結果中,找到inet字段(通常對應eth0
或ens33
網卡),后面的數值即為IP地址(如inet 192.168.1.100/24
,其中192.168.1.100
就是需要的IP)。
根據主機操作系統不同,連接方式有所差異:
在主機終端中執行以下命令:
ssh 用戶名@虛擬機IP地址
例如,若虛擬機IP為192.168.1.100
,用戶名為ubuntu
,則命令為:
ssh ubuntu@192.168.1.100
yes
并按回車;https://www.putty.org/
);192.168.1.100
);22
(默認SSH端口),點擊“Open”;為防止未經授權的訪問,建議對SSH配置進行以下優化:
編輯SSH配置文件:
sudo nano /etc/ssh/sshd_config
找到#PermitRootLogin prohibit-password
行,取消注釋并將值改為no
:
PermitRootLogin no
保存并退出(Ctrl+O
→Enter
→Ctrl+X
),然后重啟SSH服務:
sudo systemctl restart ssh
ssh-keygen -t rsa # 生成RSA密鑰對(默認保存在`~/.ssh/id_rsa`)
ssh-copy-id 用戶名@虛擬機IP地址
例如:ssh-copy-id ubuntu@192.168.1.100
輸入虛擬機密碼后,公鑰會自動添加到虛擬機的~/.ssh/authorized_keys
文件中。/etc/ssh/sshd_config
):
找到#PasswordAuthentication yes
行,取消注釋并將值改為no
:PasswordAuthentication no
保存并重啟SSH服務:sudo systemctl restart ssh
編輯/etc/ssh/sshd_config
,找到#Port 22
行,取消注釋并修改為其他端口(如2222
):
Port 2222
保存后重啟SSH服務:
sudo systemctl restart ssh
注意:修改端口后,連接時需指定新端口(如ssh -p 2222 用戶名@虛擬機IP地址
)。
sudo systemctl status ssh
(若未啟動,執行sudo systemctl start ssh
);sudo ufw allow ssh
(Ubuntu默認使用UFW防火墻);在虛擬機終端中執行:
ip addr # 或`hostname -I`(快速獲取IP)
檢查SSH服務是否設置開機自啟:
sudo systemctl is-enabled ssh
若顯示disabled
,執行:
sudo systemctl enable ssh
通過以上步驟,即可實現Ubuntu虛擬機的SSH遠程控制,滿足日常運維、代碼編輯等需求。