婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > Ubuntu環(huán)境下SSH的安裝及使用詳解

Ubuntu環(huán)境下SSH的安裝及使用詳解

熱門標簽:coreldraw地圖標注 百應電銷機器人靠譜嗎 營銷電銷機器人招商 遼寧電銷平臺外呼系統(tǒng)軟件 如何在各種地圖標注自己的地址 信陽銷售外呼系統(tǒng)招商 菏澤crm外呼系統(tǒng)價格 物超所值的400電話申請 申請400電話號碼多少錢

SSH是指Secure Shell,是一種安全的傳輸協(xié)議,Ubuntu客戶端可以通過SSH訪問遠程服務器 。

SSH的簡介和工作機制

SSH簡介

傳統(tǒng)的網(wǎng)絡服務程序,如:ftp、POP和telnet在本質上都是不安全的,因為它們在網(wǎng)絡上用明文傳送口令和數(shù)據(jù),別有用心的人非常容易就可以截獲這些口令和數(shù)據(jù)。而且,這些服務程序的安全驗證方式也是有其弱點的,就是很容易受到“中間人”(man-in-the-middle)這種方式的攻擊。所謂“中間人”的攻擊方式,就是“中間人”冒充真正的服務器接收你傳給服務器的數(shù)據(jù),然后再冒充你把數(shù)據(jù)傳給真正的服務器。服務器和你之間的數(shù)據(jù)傳送被“中間人”一轉手做了手腳之后,就會出現(xiàn)很嚴重的問題。

從前,一個名為Tatu Yl?nen的芬蘭程序員開發(fā)了一種網(wǎng)絡協(xié)議和服務軟件,稱為SSH(Secure SHell的縮寫)。通過使用SSH,你可以把所有傳輸?shù)臄?shù)據(jù)進行加密,這樣“中間人”這種攻擊方式就不可能實現(xiàn)了,而且也能夠防止DNS和IP欺騙。還有一個額外的好處就是傳輸?shù)臄?shù)據(jù)是經(jīng)過壓縮的,所以可以加快傳輸?shù)乃俣取SH有很多功能,雖然許多人把Secure Shell僅當作Telnet的替代物,但你可以使用它來保護你的網(wǎng)絡連接的安全。你可以通過本地或遠程系統(tǒng)上的Secure Shell轉發(fā)其他網(wǎng)絡通信,如POP、X、PPP和FTP。你還可以轉發(fā)其他類型的網(wǎng)絡通信,包括CVS和任意其他的TCP通信。另外,你可以使用帶 TCP包裝的Secure Shell,以加強連接的安全性。除此之外,Secure Shell還有一些其他的方便的功能,可用于諸如Oracle之類的應用,也可以將它用于遠程備份和像SecurID卡一樣的附加認證。

SSH的工作機制

SSH分為兩部分:客戶端部分和服務端部分。

服務端是一個守護進程(demon),他在后臺運行并響應來自客戶端的連接請求。服務端一般是sshd進程,提供了對遠程連接的處理,一般包括公共密鑰認證、密鑰交換、對稱密鑰加密和非安全連接。

客戶端包含ssh程序以及像scp(遠程拷貝)、slogin(遠程登陸)、sftp(安全文件傳輸)等其他的應用程序。

他們的工作機制大致是本地的客戶端發(fā)送一個連接請求到遠程的服務端,服務端檢查申請的包和IP地址再發(fā)送密鑰給SSH的客戶端,本地再將密鑰發(fā)回給服務端,自此連接建立。剛才所講的只是SSH連接的大致過程,SSH 1.x和SSH 2.x在連接協(xié)議上還有著一些差異。

SSH被設計成為工作于自己的基礎之上而不利用超級服務器(inetd),雖然可以通過inetd上的tcpd來運行SSH進程,但是這完全沒有必要。啟動SSH服務器后,sshd運行起來并在默認的22端口進行監(jiān)聽(你可以用 # ps -waux | grep sshd 來查看sshd是否已經(jīng)被正確的運行了)如果不是通過inetd啟動的SSH,那么SSH就將一直等待連接請求。當請求到來的時候SSH守護進程會產(chǎn)生一個子進程,該子進程進行這次的連接處理。

但是因為受版權和加密算法的限制,現(xiàn)在很多人都轉而使用OpenSSH。OpenSSH是SSH的替代軟件,而且是免費的,

SSH是由客戶端和服務端的軟件組成的,有兩個不兼容的版本分別是:1.x和2.x。用SSH 2.x的客戶程序是不能連接到SSH 1.x的服務程序上去的。OpenSSH 2.x同時支持SSH 1.x和2.x。

SSH分客戶端openssh-client和openssh-server

如果你只是想登陸別的機器的SSH只需要安裝openssh-client(ubuntu有默認安裝,如果沒有則sudoapt-get install openssh-client),如果要使本機開放SSH服務就需要安裝openssh-server。

一、安裝客戶端

Ubuntu缺省已經(jīng)安裝了ssh client。

sudo apt-get install ssh 或者 sudo apt-get installopenssh-client
ssh-keygen 

(按回車設置默認值)

按缺省生成id_rsa和id_rsa.pub文件,分別是私鑰和公鑰。

說明:如果sudo apt-get insall ssh出錯,無法安裝可使用sudo apt-get install openssh-client進行安裝。

假定服務器ip為192.168.1.1,ssh服務的端口號為22,服務器上有個用戶為root;

用ssh登錄服務器的命令為:

>ssh –p 22 root@192.168.1.1
>輸入root用戶的密碼

二、安裝服務端

Ubuntu缺省沒有安裝SSH Server,使用以下命令安裝:

sudo apt-get install openssh-server

然后確認sshserver是否啟動了:(或用“netstat -tlp”命令)

ps -e|grep ssh

如果只有ssh-agent那ssh-server還沒有啟動,需要/etc/init.d/ssh start,如果看到sshd那說明ssh-server已經(jīng)啟動了。 

如果沒有則可以這樣啟動:

sudo/etc/init.d/ssh start

事實上如果沒什么特別需求,到這里 OpenSSH Server 就算安裝好了。但是進一步設置一下,可以讓 OpenSSH 登錄時間更短,并且更加安全。這一切都是通過修改 openssh 的配置文件 sshd_config 實現(xiàn)的。

三、SSH配置

ssh-server配置文件位于/etc/ssh/sshd_config,在這里可以定義SSH的服務端口,默認端口是22,你可以自己定義成其他端口號,如222。然后重啟SSH服務:

sudo /etc/init.d/sshresart

通過修改配置文件/etc/ssh/sshd_config,可以改ssh登錄端口和禁止root登錄。改端口可以防止被端口掃描。

sudo cp/etc/ssh/sshd_config /etc/ssh/sshd_config.original
sudochmod a-w /etc/ssh/sshd_config.original

編輯配置文件:

gedit /etc/ssh/sshd_config

找到#Port 22,去掉注釋,修改成一個五位的端口:Port 22333

找到#PermitRootLogin yes,去掉注釋,修改為:PermitRootLogin no

配置完成后重起:

sudo/etc/init.d/ssh restart

四、SSH服務命令

停止服務:sudo /etc/init.d/ssh stop

啟動服務:sudo /etc/init.d/ssh start

重啟服務:sudo /etc/init.d/sshresart

斷開連接:exit

登錄:sshroot@192.168.0.100 

 root為192.168.0.100機器上的用戶,需要輸入密碼。

五、SSH登錄命令

常用格式:ssh [-llogin_name] [-p port] [user@]hostname

更詳細的可以用ssh -h查看。

舉例

不指定用戶:ssh 192.168.0.1

指定用戶:

ssh -l root 192.168.0.1
ssh root@192.168.0.1 

如果修改過ssh登錄端口的可以:

ssh -p 22333 192.168.0.111
ssh -l root -p 22333 216.230.230.105
ssh -p 22333 root@216.230.230.105

六、提高登錄速度

在遠程登錄的時候可能會發(fā)現(xiàn),在輸入完用戶名后需要等很長一段時間才會提示輸入密碼。其實這是由于 sshd 需要反查客戶端的 dns 信息導致的。可以通過禁用這個特性來大幅提高登錄的速度。首先,打開 sshd_config 文件:

sudo nano /etc/ssh/sshd_config

找到 GSSAPI options 這一節(jié),將下面兩行注釋掉:

#GSSAPIAuthentication yes #GSSAPIDelegateCredentials no然后重新啟動 ssh 服務即可:

sudo /etc/init.d/ssh restart

再登錄試試,應該非常快了吧

七、利用 PuTTy 通過證書認證登錄服務器

SSH 服務中,所有的內容都是加密傳輸?shù)模踩曰居斜WC。但是如果能使用證書認證的話,安全性將會更上一層樓,而且經(jīng)過一定的設置,還能實現(xiàn)證書認證自動登錄的效果。

首先修改 sshd_config 文件,開啟證書認證選項:

RSAAuthentication yes PubkeyAuthentication yesAuthorizedKeysFile %h/.ssh/authorized_keys修改完成后重新啟動 ssh 服務。

下一步我們需要為 SSH 用戶建立私鑰和公鑰。首先要登錄到需要建立密鑰的賬戶下,這里注意退出 root 用戶,需要的話用 su 命令切換到其它用戶下。然后運行:

ssh-keygen

這里,我們將生成的 key 存放在默認目錄下即可。建立的過程中會提示輸入 passphrase,這相當于給證書加個密碼,也是提高安全性的措施,這樣即使證書不小心被人拷走也不怕了。當然如果這個留空的話,后面即可實現(xiàn) PuTTy 通過證書認證的自動登錄。

ssh-keygen 命令會生成兩個密鑰,首先我們需要將公鑰改名留在服務器上:

cd ~/.ssh mv id_rsa.pub authorized_keys

然后將私鑰 id_rsa 從服務器上復制出來,并刪除掉服務器上的 id_rsa 文件。

服務器上的設置就做完了,下面的步驟需要在客戶端電腦上來做。首先,我們需要將 id_rsa 文件轉化為 PuTTy 支持的格式。這里我們需要利用 PuTTyGEN 這個工具:

點擊 PuTTyGen 界面中的 Load 按鈕,選擇 id_rsa 文件,輸入 passphrase(如果有的話),然后再點擊 Save PrivateKey 按鈕,這樣 PuTTy 接受的私鑰就做好了。

打開 PuTTy,在 Session 中輸入服務器的 IP 地址,在 Connection->SSH->Auth 下點擊 Browse 按鈕,選擇剛才生成好的私鑰。然后回到 Connection 選項,在 Auto-login username 中輸入證書所屬的用戶名。回到 Session 選項卡,輸入個名字點 Save 保存下這個 Session。點擊底部的 Open 應該就可以通過證書認證登錄到服務器了。如果有 passphrase 的話,登錄過程中會要求輸入 passphrase,否則將會直接登錄到服務器上,非常的方便。 

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

標簽:湖北 泰安 內江 廈門 瀘州 江西 玉樹 江門

巨人網(wǎng)絡通訊聲明:本文標題《Ubuntu環(huán)境下SSH的安裝及使用詳解》,本文關鍵詞  Ubuntu,環(huán)境,下,SSH,的,安裝,;如發(fā)現(xiàn)本文內容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內容系統(tǒng)采集于網(wǎng)絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Ubuntu環(huán)境下SSH的安裝及使用詳解》相關的同類信息!
  • 本頁收集關于Ubuntu環(huán)境下SSH的安裝及使用詳解的相關信息資訊供網(wǎng)民參考!
  • 推薦文章
    主站蜘蛛池模板: 景洪市| 平顺县| 改则县| 景东| 清丰县| 扶风县| 栾城县| 澳门| 岚皋县| 原平市| 防城港市| 河东区| 黄浦区| 锡林浩特市| 定日县| 阜新| 金乡县| 浦城县| 行唐县| 孟州市| 萨迦县| 梁平县| 昌宁县| 沂水县| 阜阳市| 越西县| 禹城市| 张家港市| 红河县| 怀宁县| 东乡| 万年县| 鄂伦春自治旗| 三原县| 上思县| 行唐县| 汉寿县| 红安县| 博客| 江口县| 广宁县|