ssh(secure shell--加密遠程登錄管理服務器) ,是一種安全的傳輸協議,主要用於給遠程登錄會話的數據進行加密,保證數據傳輸的安全。Ubuntu客戶端可以通過SSH訪問遠程服務器。SSH的簡介和工作機制可參看上篇文章 SSH簡介及工作機制。
SSH分客戶端 openssh-client 和服務端 openssh-server。
如果你只是想登陸別的機器的SSH只需要安裝 openssh-client(ubuntu默認安裝了,如果沒有則sudo apt-get install openssh-client),如果要使本機開放SSH服務就需要安裝 openssh-server。
1 安裝ssh客戶端
Ubuntu缺省已經安裝了ssh client,沒有則執行以下命令安裝:
sudo apt-get install ssh 或者 sudo apt-get install openssh-client
按缺省生成id_rsa和id_rsa.pub文件,分別是私鑰和公鑰。
2 安裝ssh服務端
在兩台主機上(Ubuntu 16.04)上都安裝和配置ssh。
一、更新源列表
sudo apt-get update
二、安裝服務器
sudo apt-get install openssh-server
三、查看ssh服務是否啟動
sudo apt-get install openssh-server
輸出顯示有sshd,說明ssh服務已經啟動,如果沒有啟動,輸入"sudo service ssh start"-->回車-->ssh服務就會啟動。
3 ssh配置
通過修改配置文件/etc/ssh/sshd_config,可以改ssh登錄端口和禁止root登錄。打開配置文件並修改:
sudo gedit /etc/ssh/sshd_config
把配置文件中的"PermitRootLogin without-password"加一個"#"號,把它注釋掉-->再增加一句"PermitRootLogin yes"-->保存,修改成功。("PermitRootLogin yes"的含義是允許root用戶登錄)
配置完成后重啟ssh服務:
sudo service ssh restart
4 開啟ssh服務
在終端敲入以下命令:
sudo service ssh star
再執行查看ssh服務狀態的命令:
sudo service ssh status
如果出現以下提示:
ssh start/running, process 890
說明你的ssh服務已經啟動了。如果失敗來的話,那試着卸載一下(看第六步:卸載ssh服務)再安裝(第二部:安裝ssh服務)。
5 使用ssh服務
在兩台主機(UBuntu16.04)都安裝了ssh客戶端和服務端之后,在作為ssh客戶端的主機上執行以下命令,來遠程控制作為ssh服務端(zhilan: 192.168.0.125)的主機:
sudo ssh zhilan@192.168.0.125
6 SSH常用命令
#停止服務
sudo service ssh stop
#啟動服務
sudo service ssh start
#重啟服務
sudo service ssh restart
#登錄 (zhilan為192.168.0.125機器上的用戶,需要輸入密碼。)
#常用格式:ssh [-llogin_name] [-p port] [user@]hostname
ssh zhilan@192.168.0.125
#斷開連接
exit
7 卸載ssh服務
如果你用的是redhat,fedora,centos等系列linux發行版,那么敲入以下命令:
sudo yum remove ssh
如果你使用的是debian,ubuntu,linux mint等系列的linux發行版,那么敲入以下命令:
sudo apt-get –purge remove ssh
然后就會提示卸載完成。