一、遠程連接工具SSHSecure的使用
實際開發中,Linux服務器都在其他的地方,我們要通過遠程的方式去連接遠程linux系統並操作它,Linux遠程的操作工具有很多,企業中常用的有Puttty、secureCRT、SSH Secure等。在這裏我使用SSHSecure工具進行遠程連接服務器,該工具是免費的圖形化界面及命令行窗口集一身的遠程工具。安裝包如下:
安裝後,會出現兩個圖標:
點擊圖形化界面圖標:
進入界面:
關於遠程工具亂碼的解決:
使用遠程工具進行連接時,如果linux有中文文件或目錄,顯示時會出現亂碼,原因是linux編碼是UTF-8,而遠程工具默認是當前系統本地編碼即GBK。所以解決方案是統一兩者編碼就OK了,但是該SSH Secure工具不能設置編碼,所以通過修改linux的系統編碼的方式進行統一編碼。
在linux的/etc/sysconfig目錄下有一個i18n的文件代表linux的系統編碼
將其從UTF-8修改成GBK重現連接linux即可:
二、遠程服務器端開啓ssh服務
1、首先以Ubuntu系統爲例作爲遠程服務器系統(注意linux系統開發板或者虛擬機中的linux系統都可以看做是一個遠程服務器系統),查看遠程服務器是否已安裝或啓用了ssh服務,執行:
ps -e |grep ssh
1.1、看到ssh-agent和sshd,則說明服務器安裝了ssh服務;然後查看是否ssh服務已經啓動,執行:service sshd status,若發現顯示的是stopoing的狀態,執行:service sshd start;然後執行命令netstat -tnl 查看是否開啓成功,如果開啓成功,22端口會顯示在listening的狀態。
1.2、在客戶端(window系統PC機爲例),win+R執行cmd命令,利用ping+服務器地址,看是否能ping通,若是ping通了則利用SSHSecure工具進行連接遠程服務器步驟。
1.3、可能出現的現象:
- 查看客戶端和服務器的地址
- 檢查服務器防火牆是否開啓,service iptables status ,發現防火牆開啓了,於是執行命令:service iptables stop 進行關閉;
- 在服務器端執行vi /etc/ssh/sshd_config,文件的末尾添加如下內容:
Ciphers aes128-cbc,aes192-cbc,aes256-cbc,aes128-ctr,aes192-ctr,aes256-ctr,3des-cbc,arcfour128,arcfour256,arcfour,blowfish-cbc,cast128-cbc
MACs hmac-md5,hmac-sha1,umac-64@openssh.com,hmac-ripemd160,hmac-sha1-96,hmac-md5-96
KexAlgorithms diffie-hellman-group1-sha1,diffie-hellman-group14-sha1,diffie-hellman-group-exchange-sha1,diffie-hellman-group-exchange-sha256,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group1-sha1,[email protected]
- 保存文件,並且重啓SSH,執行:service sshd restart
- 再次點擊"connect",若反覆提示輸入password對話框則打開 /etc/ssh/sshd_config,按照如下更改
- 再次點擊“connect”,可以正常傳輸文件了。
2、如圖若看到只有ssh-agent 這個是ssh-client客戶端服務,沒有sshd,則說明服務器沒有安裝ssh-server,則進行安裝
ssh-server服務,執行:
sudo apt install openssh-server
開始安裝,輸入yes回車
3、執行完了就代表安裝完成了
4、然後再執行
ps -e |grep ssh
發現多了sshd,遠程連接本電腦就已經啓用了
5、然後我們通過其他電腦或服務器連接本電腦執行 ssh '你的用戶名'@‘你的ip’,然後輸入yes,然後輸入密碼,就成功連接了
6、當然也重新執行第一部分的操作,利用客戶端連接遠程服務器。
參見:
https://blog.csdn.net/danielzhou888/article/details/76135934
https://www.cnblogs.com/ray-guan/p/9463350.html
https://www.cnblogs.com/wangwust/p/9747223.html