文章目錄
1.【必要性】
兩臺電腦間通過SSH配置,建立客戶端和服務器端的通信,應用的場合。
1)嵌入式板子(LINUX)上做開發時,沒有屏幕或者屏幕太小,不便調試;
2)做DL的經常需要在一臺電腦(本地主機)上寫代碼,另一臺電腦(服務器,計算力強)上進行訓練爲了在local主機下也可以隨時跑程序,調代碼,同時省流量而且迅速;
2.【ssh命令連接步驟】
step1:SSH程序的安裝
確保在服務器上安裝好了openssh-server程序,在本地主機上安裝好了openssh-client程序。
sudo apt install openssh-client #本地主機運行此條,實際上通常是默認安裝client端程序的
sudo apt install openssh-server #服務器運行此條命令安裝
step2:服務器啓動ssh服務
以下命令都只針對服務器端(server only)。
一般服務器上安裝ssh完成後,會自動啓動ssh服務,並且默認隨系統啓動,如果沒有,請手動啓動:
sudo /etc/init.d/ssh start #服務器啓動ssh-server服務
停止或重啓命令:
sudo /etc/init.d/ssh stop #server停止ssh服務
sudo /etc/init.d/ssh restart #server重啓ssh服務
#####注意:
爲了保證嵌入式板子每次開機都可以自啓動ssh,需要進行如下配置:
sudo vi /etc/rc.local
在exit 0語句前加入: /etc/init.d/ssh start ,然後:wq保存並退出即可。
step3:查詢服務器的ip地址
在服務器終端運行以下命令:
ifconfig
在返回信息中找到自己的ip地址, 從我的返回信息中看到,我的ip地址(inet地址)是:192.168.1.114。
step4:在本地主機端ssh遠程登錄服務器
這一步需要知道服務器的用戶名(我的服務器名字是egg)及IP地址。
在本地主機上運行以下命令:
[email protected]
#或
ssh -l egg 192.168.1.114
如果需要調用圖形界面程序
ssh -X [email protected]
注意:
若服務器的SSH服務沒有開啓在22端口,那麼SSH鏈接時則需要用-p指定端口,若端口號指定爲50,則:
ssh -p 50 [email protected]
step5:退出遠程登錄
用Ctrl+D或者
exit
3.報錯及解決辦法(刪除原有known_hosts):
報錯1:若在ssh連接時,出現如下報錯:
問題描述
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that the RSA host key has just been changed.
The fingerprint for the RSA key sent by the remote host is
ea:24:31:8d:03:07:36:db:2f:74:15:5d:58:67:a3:5b.
Please contact your system administrator.
Add correct host key in /var/root/.ssh/known_hosts to get rid of this message.
Offending key in /var/root/.ssh/known_hosts:1
RSA host key for 192.168.1.114 has changed and you have requested strict checking.
Host key verification failed.
解決辦法
則,刪除原有known_hosts,方法爲:
ssh-keygen -R 192.168.1.114 # 要連接的服務器端的ip地址
報錯2:Permission denied, please try again.
問題描述
$ ssh [email protected]
[email protected]'s password:
Permission denied, please try again.
解決辦法
修改要訪問的服務器中的sshd_config配置文件,方法爲:
- 打開該配置文件:
vim /etc/ssh/sshd_config
- 然後做如下更改:
將 PermitRootLogin without-password 改爲 PermitRootLogin yes - 最後重啓 SSH:
sudo service ssh restart