ubuntu下如何安裝使用SSH

bestBT發表於2015-05-11

ubuntu預設並沒有安裝ssh服務,如果通過ssh連結ubuntu,需要自己手動安裝ssh-server。判斷是否安裝ssh服務,可以通過如下命令進行:

xjj@xjj-desktop:~$ ssh localhost

ssh: connect to host localhost port 22: Connection refused

如上所示,表示沒有還沒有安裝,可以通過apt安裝,命令如下:

-desktop:~$ sudo apt-get install openssh-server  

xjj@xjj-desktop:~$ sudo apt-get install openssh-server

系統將自動進行安裝,安裝完成以後,先啟動服務:

@xjj-desktop:~$ sudo /etc/init.d/ssh start  

xjj@xjj-desktop:~$ sudo /etc/init.d/ssh start

啟動後,可以通過如下命令檢視服務是否正確啟動

@xjj-desktop:~$ ps -e|grep ssh   

6212 ?        00:00:00 sshd  

xjj@xjj-desktop:~$ ps -e|grep ssh 6212 ? 00:00:00 sshd

如上表示啟動ok。注意,ssh預設的埠是22,可以更改埠,更改後先stop,

然後start就可以了。改配置在/etc/ssh/sshd_config下,如下所示。

xjj@xjj-desktop:~$ vi /etc/ssh/sshd_config   

# Package generated configuration file   

# See the sshd(8) manpage for details   

# What ports, IPs and protocols we listen for  

Port 22  

# Package generated configuration file

# See the sshd(8) manpage for details

# What ports, IPs and protocols we listen for

Port 22

最後,應該是連線的時候了。請看如下命令:

xjj@xjj-desktop:~$ ssh exceljava@192.168.158.129  

xjj@xjj-desktop:~$ vi /etc/ssh/sshd_config


ps: 附加本機配置的 sshd_config

# What ports, IPs and protocols we listen for
Port 55441             //建議高階口,防止佔用 


PermitRootLogin yes       //能否用root登入。


AllowUsers username   //配置檔案末端加上。


建議reboot一下 而不是 /etc/init.d/ssh restart


設定登入時提示資訊

首先編輯一個檔案,如bannertest.txt,檔案內容自行定義。然後開啟/etc/ssh/sshd_config檔案並查詢下面這樣的行:

#Banner /some/path

#號去掉,然後將bannertest.txt檔案的全路徑替換/some/path,然後儲存,重啟ssh服務。當客戶端登入時,就會看到bannertest.txt檔案中的提示資訊。

9、進行埠對映:

假如公司內網有臺web伺服器,但是隻對內不對外,這樣,外網就無法訪問,可以用ssh進行埠對映來實現外網訪問內網的web伺服器。假如web伺服器名為webserverwebserver可以用ssh訪問到遠端主機remoteserver,登入到webserver,然後用下面命令進行對映

命令格式:

ssh -R 3000:localhost:80 remoteserver

執行完成後,在remoteserver機器上,執行netstat -an | grep 3000檢視有沒有開通3000埠。並執行以下命令觀察是否可以開啟webserver上的網頁

$ w3m http://127.0.0.1:3000

如果能開啟介面,說明對映成功.但是,這隻限於本機訪問web伺服器,即只能remoteserver機器訪問webserver。因為3000埠繫結的是remoteserver機器的127.0.0.1埠。可以編輯remoteserver機器上的/etc/ssh/sshd_config檔案並新增如下內容:

新增 GatewayPorts yes  內容,把監聽埠3000繫結到 0.0.0.0 地址上這樣外部的所有機器都能訪問到這個監聽埠,然後儲存退出。並重啟ssh服務。完成後其它機器就可以在瀏覽器中輸入 http://remoteserver:3000來訪問webserver了。






相關文章