windows下通過ssh命令連接virtualbox虛擬機中linux的實踐

最近在研究Linux,想通過windows下ssh連接虛擬機中Linux系統,從而更加方便快捷的訪問虛擬機中的linux系統

在網上找了一些方法,一種方法基本思路如下

大致就是去修改目錄下的ip配置,然後實現windows下ping通該虛擬機,然後實現ssh連接虛擬機,實踐後發現可行性較低,

下面是方法一的具體步驟:

1,確保windows能ping通虛擬機,具體也不知道怎麼ping通,明顯不在一個網段下嘛很奇怪。

2.關閉linux的防火牆

centos7之前就是 etc/init.d/iptables stop  這樣的命令關閉

centos7之後就是用 service firewalld stop ,後來實踐證實這一步並沒有必要

3.查看ssh 是否被安裝,一般情況下centos7都是已經安裝好了ssh-server的,查看的命令如下

rpm -qa | grep ssh

一般會顯示結果爲

然後找到/etc/ssh目錄下的sshd_config文件,修改一些參數(看起來這一步還是有必要的,但是後面使用的第二種方法並不需要這些設置也可以正常ssh登陸)

4開啓sshd服務,命令爲(一般都默認開啓的)

service sshd start

可以用 ps -e|grep sshd 命令驗證是否成功開啓

然而,經過上述辦法後,還是無法使用ssh連接虛擬機

然後便有了第二種辦法

方法二

1,首先在virtualbox設置網絡爲“網絡地址轉換(NAT)”,如下圖

然後設置端口轉發如圖

主機端口可以隨意設置,我這裏爲了方便起見設置爲22,因爲ssh默認端口爲22,後續ssh訪問就不需要 加 -p 參數了。

然後在網絡配置中可以設置虛擬機的外地址(ip與dns服務器設置不一致時會導致登陸非常緩慢,不知道什麼原因,修改成一樣的之後就恢復正常了)

然後開啓虛擬機,啓動linux系統,就可以通過命令

ssh [email protected]
#或者
ssh [email protected] 
#root可以是你的linux用戶名

與虛擬機建立連接了
 

推薦使用第二種方法

 

第三種方法

簡述一下就是將網絡連接方式改成橋接網卡

然後把linux的ip改成與主機ip在同一網段內

例如我的ip是 192.168.1.48

我將我的linux 的ip設置新增字段如下

BOOTPROTO=static  
IPADDR=192.168.1.102
NETMASK=255.255.255.0
#已存在的字段則修改,不存在的則新增

然後使用ssh也可以愉快的玩耍了

 

小tips

最後介紹一種後臺使用命令開啓無界面的虛擬機的辦法,

爲了方便起見,我們先在系統環境設置裏將虛擬機安裝路徑添加進去(這個就不贅述了,例如我的安裝路徑是 E:\VirtualBox)

Virtual Box的管理叫叫VBoxManage.exe,我們後面會使用它來操作虛擬機的開啓與關閉

然後方便起見我們使用 ln -s 命令對VBoxManage.exe建立軟鏈,無法使用ln命令可以安裝(windows下推薦使用 git bash代替默認CMD工具)建立軟鏈命令如下

$ ln -s  /e/VirtualBox/VBoxManage.exe /e/VirtualBox/vbm

然後啓動虛擬機(Kevyn King是我的虛擬機名)

vbm startvm Kevyn\ King --type headless

然後可以用ssh 命令連接虛擬機了

最後,關閉虛擬機,使用命令

vbm controlvm  Kevyn\ King poweroff

VBoxManage命令很豐富,具體可以 -help 查看詳細說明

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章