linux遠程連接ssh
⑴ 【linux】SSH 使用密碼/公鑰遠程登錄總結
本文是筆者查閱網上資料做的總結,關於SSH原理,什麼是對稱加密和非對稱加密,本文不過多介紹。這里介紹一下SHH的工作過程、配製方法,可能出現的問題及解決方法。
說明:本文中涉及的例子,SSH客戶端為:本地主機A,SSH伺服器為:伺服器B
SSH協議採用C-S(客戶端-伺服器端)架構進行雙方的身份驗證以及數據的加密。
伺服器端組件監聽指定的埠,負責安全連接的建立、對連接方的身份認證、以及為通過身份認證的用戶建立正確的環境。
客戶端負責發起最初的TCP握手、安全連接的建立、驗證伺服器的身份與之前記錄中的一致、並將自己的驗證信息提供給伺服器。
一個SSH會話的建立過程分為兩個階段。第一階段,雙方溝通並同意建立一個加密連接通道以供後續信息傳輸用。第二階段,對請求接入的用戶進行身份驗證以確定伺服器端是否要給該用戶開放訪問許可權。
當客戶端發起TCP連接時,伺服器端返回信息說明自己支持的協議版本,如果客戶端上支持的協議與之匹配,則連接繼續。伺服器會提供自己的公共主機密鑰(public host key)以讓客戶端確認自己訪問的是正確的機器。
然後,雙方採用一種Diffie-Hellman演算法共同為該會話建立密鑰。每一方的一部分私有數據,加上來自對方的一部分公共數據,通過這種演算法計算,能夠得出完全相同的密鑰用於本次會話。
整個會話的通訊內容都使用該密鑰進行加密。這個階段使用的公鑰/私鑰對與用戶驗證身份用的SSH密鑰是完全無關的。
經典Diffie-Hellman演算法的計算步驟如下:
這個共享密鑰的加密方式被稱為二進制數據包協議(binary packet protocol)。該過程能夠讓雙方平等的參與密鑰生成的過程,而不是由單方掌握。這種共享密鑰生成的過程是安全的,雙方沒有交換過任何未經加密的信息。
生成的密鑰是對稱式密鑰,一方用於加密信息的密鑰等同於另一方用於解密信息的密鑰,而任何第三方由於不持有該密鑰,是無法解密雙方傳遞的內容的。
會話加密通道建立後,SSH開始進入用戶認證階段。
下一步,伺服器驗證用戶身份以決定是否准許其訪問。驗證有不同的方式,選擇的驗證方式取決於伺服器的支持。
最簡單的驗證是密碼驗證:伺服器要求客戶端輸入密碼,客戶端輸入的密碼經過上述的通道加密傳輸給伺服器。
雖然密碼是加密過的,然而該方法仍然不被推薦,因為用戶經常為了省事而使用過於簡單的密碼,而這類密碼很容易就能夠被自動化腳本破解。
最流行的驗證方式是SSH密鑰對,這也是當前最推薦的方式。SSH密鑰對是非對稱密鑰,私鑰和公鑰分別用於不同的功能。
公鑰用於加密,而私鑰用於解密。公鑰可以隨意上傳、共享,因為公鑰的流通並不會危及到私鑰的保密性。
SSH密鑰對的驗證過程起始於上一部分加密通道建立之後,其具體執行步驟如下:
簡單來說,伺服器端用公鑰加密信息,客戶端用私鑰解密信息以證明自己持有私鑰。該過程同時使用了對稱加密和非對稱加密,兩種方式各有自己的功用。
命令如下:
用戶名:為要登錄的伺服器B中已存在的用戶賬戶名
IP地址:為伺服器B的IP地址
-p 埠號:用來指定埠號,默認為22
第一次登錄時,會提示如下提示:
大概意思是說,你正在訪問的主機不能驗證它的真實性,它的RSA key(當前訪問主機的公鑰)指紋是怎樣的,你確定要繼續連接嗎?
輸入yes繼續,會提示,已永久把當前訪問主機的RSA key添加到了已知主機文件(用戶目錄下,.ssh 文件夾中的knwon_hosts文件)中。之後再次 SSH 登錄就不再有該提示了。
接著,輸入登錄賬戶的密碼即可。
SSH 密碼登錄,需要伺服器開啟密碼驗證許可權,編輯伺服器SSH配置命令如下:
在 sshd_config 文件中,Protocol 2 下面 #PasswordAuthentication yes,將前面的#號去掉,保存退出。
公鑰登錄,即免密碼登錄。避免的每次登錄都要輸入的麻煩,也防止了中間人攻擊。是SSH遠程登錄最常用的登錄方式。
提示輸入密鑰對名稱,直接回車,使用默認名稱即可;
提示輸入密碼(使用私鑰時,要輸入密碼),直接回車,不使用密碼即可。
首先,登錄伺服器B,在進行下面的操作。
找到 #PubkeyAuthentication yes,刪除 #號,保存退出。
重啟 ssh 服務
也可指定驗證私鑰:
本地主機A,生成密鑰對後:
sudo vim /etc/selinux/config
⑵ 如何通過ssh遠程登錄linux系統
通過ssh遠程登錄linux系統的方法: 1、在需要遠程訪問的計算機的「新立得」裡面安裝openssh-server。這台計算機是遠程計算機,你當前使用的計算機是本地計算機。如果使用Ubuntu或者其他Linux版本,已經安裝了連接到遠程計算機的軟體。 2、遠程計算...
⑶ linux 怎麼遠程登錄ssh
一般使用命令: ssh 目標地址 即可。 指定用戶: ssh -l root 192.168.0.11或則 ssh [email protected] 如果修改過ssh登錄埠的可以: ssh -p 12333 192.168.0.11 ssh -l root -p 12333 216.230.230.114 ssh -p 12333 [email protected]
⑷ 如何通過ssh遠程登錄linux系統
通過ssh遠程登錄linux系統步驟如下:
1、啟動軟體,點擊快速連接,我們要選擇連接的協議。
⑸ 如何用ssh 遠程登錄linux
ssh是可以代替telnet的一種遠程管理的方式.並且具有安全\快捷等優點的一種服務.
方法一:進入Xwindows,在shell窗口執行setup命令,選擇system
service啟動sshd服務.
方法二:在/etc/ssh/sshd_config文件中,將permitRootLogin
no|yes設置為允許root用戶遠程登錄
/etc/init.d/sshd
start
啟動ssh服務
/etc/init.d/sshd
stop關閉服務
啟動:
service
sshd
start
安裝過程:
1.以root身份登入系統(沒登入系統和沒有足夠的許可權都不能安裝,暈,這不是廢話)
2.檢查安裝系統時是否已經安裝SSH服務端軟體包:
rpm
-qa|grep
openssh
若顯示結果中包含openssh-server-*,則說明已經安裝,直接啟動
sshd服務就可以了(service
sshd
start).(其中*的內容是該包的版本,一般為3.5p1-6)
若無任何顯示,或顯示中不包含openssh-server-*則說明沒有安裝SSH服務端軟體包,
進入第3步
3.找到redhat
9.0
安裝光碟,放入光碟機中並載入光碟機
mount
-t
iso9660
/dev/cdrom
/mnt/cdrom
(載入光碟機命令)
4.查找光碟機中的SSH服務端軟體所在目錄,一般在/mnt/cdrom/RedHat/RPMS/目錄下,
可以先cd到該目錄下再用ls查看,如:ls
openssh*,然後根據上面具體顯示直接安裝
rpm
-ivh
openssh-3.5p1-6
(如果第二步中顯示已經安裝該包就不要安裝)
rpm
-ivh
oeenssh-server-3.5p1-6
5.啟動sshd服務
/etc/rc.d/init.d/sshd
start
netstat
-a
|
more看有沒正常啟動
如果出現:
tcp
0
0
*:ssh
*:*
LISTEN
就說明正常啟動了
6.在windows
下用putty等SSH客戶端軟體連接測試,或直接在linux主機上輸入
ssh
測試,但必須要先安裝linux
下的SSH客戶端軟體包,即
openssh-clients-*,安裝過程和上面的服務端包相同
7.若能成功遠程登入,則說明SSH服務安裝配置成功,
否則很可能就是你的防火牆阻止連接了,重新配置防火牆或乾脆先停掉防火牆
(/etc/rc.d/init.d/iptables
stop)
就可以連接了
或者service
iptables
stop
⑹ linux遠程連接ssh工具有哪些
推薦這四款:
1、putty
putty是最有名的SSH和telnet客戶端,由Simon
Tatham為Windows平台開發。putty是一款開源軟體,提供可用的源代碼並有一批志願者進行開發和支持。
2、secureCRT
secureCRT支持SSH,同時支持Telnet和rlogin協議。secureCRT是一款用於連接運行包括Windows、Unix和VMS的理想工具。通過使用內含的VCP命令行程序可以進行加密文件的傳輸。有流行CRTTelnet客戶機的所有特點,包括:自動注冊、對不同主機保持不同的特性、列印功能、顏色設置、可變屏幕尺寸、用戶定義的鍵點陣圖和優良的VT100、VT102、VT220和ANSI競爭,能從命令行中運行或從瀏覽器中運行。其它特點包括文本手稿、易於使用的工具條、用戶的鍵點陣圖編輯器、可定製的ANSI顏色等。secureCRT的SSH協議支持DES、3DES和RC4密碼和密碼與RSA鑒別。
3、EasySSH
EasySSH是一款便捷的GUI SSH客戶端,提供了一種連接遠程Linux伺服器的快捷工具。
盡管EasySSH沒有提供Putty中提供的大量配置選項,但是它非常易於使用。EasySSH的最佳功能之一是提供標簽式界面,因此你可以打開多個SSH連接並在它們之間快速切換。EasySSH的功能包括:分組、保存用戶名密碼、外觀選項、支持本地和遠程隧道。
4、Xshell
Xshell是一個強大的安全終端模擬軟體,它支持SSH1、SSH2以及Microsoft Windows平台的TELNET協議。xshell通過互聯網到遠程主機的安全連接以及它創新性的設計和特色幫助用戶在復雜的網路環境中享受他們的工作。
⑺ linux遠程連接工具
五個非常好用的Linux遠程連接工具:
第一款:Xshell(https://www.netsarang.com)
Xshell是一個非常強大的安全終端模擬軟體,它支持SSH1,SSH2,以及Windows平台的TELNET協議。Xshell可以在Windows界面下用來訪問遠端不同系統下的伺服器,從而比較好的達到遠程式控制制終端的目的,Xshell非常符合使用習慣,值得推薦。
優點:
①界面設計簡潔,人性化,用起來比較舒服。
②支持標簽,打開多個會話鏈接的時候比較方便。
③可以保存密碼,方便下次直接使用,當然要做好電腦安全防護。
④支持rz和sz命令,這兩個命令在傳輸少量小文件時非常方便。
⑤圖形化支持本地和遠程文件之間的傳輸,方便系統部署和日誌排查。
第二款:winscp(https://winscp.net/eng/docs/lang:chs)
winscp是一個Windows環境下使用SSH的開源圖形化Sftp工具客戶端。同時支持SCP協議,它的主要功能就是在本地與遠程計算機間安全的復制傳輸文件。winscp+putty軟體配套使用。
優點:
①簡潔的圖形用戶界面。
②Windows完美集成。
③完美支持所有常用文件操作。
④可以批處理腳本和命令行方式。
⑤多種半自動、自動的目錄同步方式。
⑥內置文本編輯器。
⑦可以存儲會話信息,方便下次使用。
⑧可將設置存在配置文件中而非注冊表中,適合在移動存儲設備上操作。
第三款:PuTTY(.putty.org/)
PuTTY是SSH和telnet客戶端,最初由Simon
Tatham為Windows平台開發。用MIT許可證授權,包含的組件有:PuTTY、PuTTYgen、PSFTP、PuTTYtel、Plink、PSCP、Pageant,默認登錄協議是SSH,默認的埠為22。PuTTY主要用來遠程連接伺服器,它支持SSH、Telnet、Serial等協議的連接。最常用的是SSH協議,用它來遠程管理Linux伺服器非常方便。
優點:
①完全免費開源。
②跨平台。
③綠色軟體,體積不到1M,不需要安裝,佔用系統資源少。
④完全支持SSH1和SSH2。
第四款:MobaXterm(/mobaxterm.mobatek.net/)
MobaXterm的功能非常全面,幾乎提供了所有重要的遠程網路工具,以及Windows桌面上的Unix命令,登錄之後默認開啟sftp模式。
優點:
①功能非常全,基本上涵蓋了伺服器運維所有功能。
②免費開源。
③豐富的插件。
④超多好用的快捷鍵,效率非常高。
⑤支持多標簽,切換也十分方便。
第五款:FinalShell(http://www.hostbuf.com/)
FinalShell是一體化的伺服器網路管理軟體,不僅是SSH客戶端,FinalShell還是功能強大的開發、運維工具,充分滿足用戶的開發運維需求。
優點:
①跨平台。
②支持內存、CPU性能監控,Ping延遲丟包,Trace路由監控。
③支持rz、sz。
⑻ Linux Windows遠程連接工具的使用SSH(Windows和Linux之間相互傳遞文件)
目錄
一、介紹
二、使用SSH傳輸文件
2.1雙擊SSHClient.exe
2.2打開後的頁面,按下回車會彈出頁面
2.3輸入遠程伺服器ip,輸入密碼
2.4在ssh登錄頁面輸入ip地址 ,填寫完畢用戶名點擊Connect
2.5輸入密碼點擊OK
2.6成功連接
2.7windows向Linux互傳文件
三、傳輸文件
3.1比如傳輸windows網易雲音樂到Linux文件夾demo下
3.2傳輸文件查看
3.3傳輸完畢
2.3.1查看輸入遠程伺服器ip:打開Linux的終端輸入ifconfig,右鍵 ip地址