国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

SSH協(xié)議公鑰登錄的配置與應(yīng)用

2016-11-23 01:42:12劉韜
關(guān)鍵詞:用戶名私鑰公鑰

劉韜

(廣東石油化工學(xué)院,廣東茂名525000)

SSH協(xié)議公鑰登錄的配置與應(yīng)用

劉韜

(廣東石油化工學(xué)院,廣東茂名525000)

分析了早期的網(wǎng)絡(luò)協(xié)議和應(yīng)用存在的安全問(wèn)題,探討了SSH協(xié)議的兩種安全認(rèn)證方式的特點(diǎn),通過(guò)使用SSH協(xié)議的公鑰認(rèn)證方式遠(yuǎn)程登錄系統(tǒng),提高網(wǎng)絡(luò)系統(tǒng)的遠(yuǎn)程登錄的安全性和便利性。

SSH協(xié)議;公鑰加密;遠(yuǎn)程登錄

1 SSH協(xié)議簡(jiǎn)介

早期的各種網(wǎng)絡(luò)服務(wù)和協(xié)議,如FTP(文件傳輸協(xié)議)、POP(郵局協(xié)議)和Telnet協(xié)議等,本質(zhì)上都存在著較嚴(yán)重的安全缺陷,主要表現(xiàn)為數(shù)據(jù)以未加密的明文形式傳輸,導(dǎo)致使用相關(guān)協(xié)議的用戶名、密碼和其他用戶數(shù)據(jù)容易受到中間人攻擊[1]。所謂的中間人攻擊即有另外一臺(tái)主機(jī)冒充真正的服務(wù)器接收用戶發(fā)送給服務(wù)器的數(shù)據(jù),然后再冒充用戶將數(shù)據(jù)發(fā)送給服務(wù)器,或者是完全相反的過(guò)程[2]。中間人攻擊可以很容易地竊取用戶到服務(wù)器之間傳輸?shù)臄?shù)據(jù),導(dǎo)致用戶信息泄露,甚至可導(dǎo)致服務(wù)器系統(tǒng)訪問(wèn)權(quán)限泄露等嚴(yán)重安全事故[3]。

為了解決早期的網(wǎng)絡(luò)服務(wù)和協(xié)議帶來(lái)的各種安全問(wèn)題,芬蘭一家公司的研究員Tatu Yl nen于1995年設(shè)計(jì)開發(fā)了SSH(Secure Shell)協(xié)議。使用SSH協(xié)議,用戶可以在不安全的網(wǎng)絡(luò)上進(jìn)行安全通信,數(shù)據(jù)在傳輸過(guò)程中是加密的,同時(shí)MD5和SHA-1等算法的使用避免了數(shù)據(jù)在傳輸過(guò)程中被篡改和源/目的地址的偽造,確保了數(shù)據(jù)的完整性。SSH協(xié)議還能識(shí)別數(shù)據(jù)發(fā)送者和接收者身份,防止攻擊者仿冒SSH服務(wù)端身份,避免中介人攻擊和重定向請(qǐng)求的攻擊。SSH這些強(qiáng)大的安全特性使得用戶數(shù)據(jù)的安全傳輸能得到極大的保證。

SSH協(xié)議強(qiáng)大的安全性主要是依賴于非對(duì)稱加密(公開密鑰加密)技術(shù)。在此基礎(chǔ)上,使用SSH協(xié)議登錄系統(tǒng)可以通過(guò)密碼認(rèn)證和公鑰認(rèn)證兩種方式進(jìn)行。

1)客戶端請(qǐng)求連接SSH服務(wù)器,服務(wù)器發(fā)送其公鑰給客戶端。

2)客戶端使用服務(wù)器返回的公鑰,加密自己的通訊密鑰(非用戶密鑰),然后發(fā)給服務(wù)器。

3)服務(wù)器使用自己的私鑰解密通訊密鑰,至此,雙方已建立安全的通訊信道。

4)客戶端將用戶名和密碼加密后發(fā)送給服務(wù)器進(jìn)行驗(yàn)證,通過(guò)驗(yàn)證后用戶即可進(jìn)行其他操作。

1)客戶手動(dòng)生成密鑰對(duì)后,將公鑰上傳到服務(wù)器上(一般存放在~/.ssh/authorized_keys文件中)。

2)用戶登錄服務(wù)器時(shí),客戶端發(fā)送包含用戶名、公鑰和公鑰算法的認(rèn)證請(qǐng)求給服務(wù)器端。

3)服務(wù)器對(duì)認(rèn)證請(qǐng)求進(jìn)行檢查,通過(guò)后即完成登錄。

2 SSH協(xié)議使用的相關(guān)配置

在絕大多數(shù)的Linux發(fā)行版中,一般都預(yù)裝了SSH協(xié)議所必備的端軟件,主要包括了OpenSSL和OpenSSH,如果用戶當(dāng)前使用的Linux發(fā)行版不包含這兩個(gè)軟件,可自行安裝。下面以客戶端和服務(wù)器端都是CentOS 6.7系統(tǒng)的情況為例,對(duì)SSH協(xié)議使用的相關(guān)配置進(jìn)行介紹。

SSH服務(wù)是以SSH daemon的方式來(lái)啟動(dòng)的。SSH daemon又稱SSH守護(hù)進(jìn)程,通常簡(jiǎn)稱為sshd,一般在Run Level3(具備網(wǎng)絡(luò)功能的多用戶模式)和Run Level5(具備網(wǎng)絡(luò)功能的多用戶圖形界面模式)這兩個(gè)運(yùn)行級(jí)別中是默認(rèn)啟用的,如果因?yàn)槟承┰虮辉O(shè)為默認(rèn)不啟用的話,可以通過(guò)命令:

chkconfig sshd on在當(dāng)前運(yùn)行級(jí)別下默認(rèn)啟用

sshd,或者通過(guò)命令:service sshd start臨時(shí)啟動(dòng)sshd。如果啟動(dòng)過(guò)程未出現(xiàn)錯(cuò)誤提示,則sshd已成功運(yùn)行。

對(duì)SSH協(xié)議的客戶端主機(jī)而言,并不需要特別的配置,只需要確保安裝了OpenSSL和OpenSSH這兩個(gè)軟件即可??赏ㄟ^(guò)以下命令來(lái)測(cè)試SSH客戶端:

ssh服務(wù)器端IP地址

如果命令執(zhí)行后返回的提示不是“-bash:ssh: command not found”則表明SSH協(xié)議的相關(guān)軟件已經(jīng)正確安裝并可正常使用。

3 SSH公鑰登錄的配置

盡管SSH協(xié)議的安全性較高,但在使用中有很多的用戶使用的還是安全性相對(duì)較弱的密碼認(rèn)證方式。密碼認(rèn)證方式的另外一個(gè)缺陷就是當(dāng)密碼較復(fù)雜的時(shí)候,用戶有較高的輸錯(cuò)密碼的可能,而在某些特殊場(chǎng)合下(如Hadoop集群部署)要求的無(wú)密碼跳轉(zhuǎn)等特性無(wú)法在密碼認(rèn)證方式中使用。因此,很多生產(chǎn)環(huán)境中都要求使用公鑰認(rèn)證方式進(jìn)行SSH登錄。

在客戶端執(zhí)行以下命令:

ssh-keygen-t rsa

執(zhí)行此命令后,系統(tǒng)提示要生成公鑰與私鑰的文件名,直接回車則為默認(rèn)的id_rsa.pub和id_rsa,存放在~/.ssh目錄下。然后系統(tǒng)提示輸入用于加密私鑰的密碼,可為空,但為確保安全應(yīng)該輸入一個(gè)強(qiáng)度較高的密碼,再次輸入密碼確認(rèn)后公鑰和私鑰就生成了。

編輯/etc/ssh/sshd_config文件以更改服務(wù)器端的SSH安全配置參數(shù),主要有以下幾項(xiàng):

1)PermitRootLogin設(shè)為no,禁用root用戶遠(yuǎn)程登錄,推薦但非必需。

2)StrictModes設(shè)為no,不讓sshd服務(wù)用戶的home目錄和相關(guān)文件的權(quán)限,如果用戶將這些目錄和文件的權(quán)限設(shè)置錯(cuò)誤有可能導(dǎo)致用戶無(wú)法登錄。

3)RSAAuthentication和PubkeyAuthentication都設(shè)為yes,允許用戶使用RSA算法和公鑰認(rèn)證。

4)PasswordAuthentication設(shè)為no,禁止使用密碼登錄,只允許公鑰登錄,以保證安全性。

修改完配置文件后,需要執(zhí)行以下命令重啟sshd服務(wù)以應(yīng)用新的配置:

在客戶端執(zhí)行以下命令:

ssh-copy-id-i~/.ssh/id_rsa.pub用戶名@服務(wù)器IP

通過(guò)執(zhí)行此命令時(shí),客戶端將提示是否將服務(wù)器的公鑰指紋加入可信列表(默認(rèn)為~/.ssh/known_hosts),選yes后系統(tǒng)提示輸入服務(wù)器端的密碼(用戶名已在命令參數(shù)中指定),輸入正確的密碼后系統(tǒng)將生成的客戶端公鑰文件(~/.ssh/id_rsa.pub)上傳至指定用戶名的服務(wù)器IP,并將客戶端公鑰文件的內(nèi)容添加至服務(wù)器端的~/.ssh/authorized_keys文件中,讓服務(wù)器信任客戶端的公鑰。

在客戶端上執(zhí)行命令:

ssh用戶名@服務(wù)器IP

系統(tǒng)提示輸入用于加密私鑰的密碼(如無(wú)私鑰密碼則不會(huì)有此提示),輸入后回車,此時(shí)已經(jīng)成功地使用公鑰方式登錄了服務(wù)器。

即使將服務(wù)器端的密碼更改了,在客戶端仍然能正常地使用公鑰方式登錄服務(wù)器。這意味著即使服務(wù)器端的密碼非常復(fù)雜,用戶也可以使用相對(duì)簡(jiǎn)單的私鑰密碼登錄。這也是SSH協(xié)議同時(shí)具備較高的安全性和便利性的體現(xiàn)之一。

要在服務(wù)器端撤銷某個(gè)客戶端的公鑰登錄權(quán)限,則應(yīng)在客戶端打開公鑰文件(默認(rèn)為~/. ssh/id_rsa.pub),復(fù)制文件內(nèi)容,然后在服務(wù)器端編輯~/.ssh/authorized_keys,查找剛剛復(fù)制的內(nèi)容,刪除相應(yīng)的行即可。

4 SSH公鑰登錄的應(yīng)用

在客戶端執(zhí)行命令:

scp本地路徑用戶名@服務(wù)器IP:遠(yuǎn)程路徑

例如:

scp/root/test.php root@192.168.1.254:/var/www/html/

此命令將/root/test.php文件通過(guò)SSH協(xié)議復(fù)制到192.168.1.254的/var/www/html目錄下。使用密碼認(rèn)證而不是公鑰認(rèn)證登錄遠(yuǎn)程主機(jī)的話需要輸入冗長(zhǎng)的密碼才能完成復(fù)制任務(wù),但使用公鑰認(rèn)證則快捷得多。如果要復(fù)制整個(gè)目錄的內(nèi)容則應(yīng)加上參數(shù)-r,如下所示:

scp-r/root/test-dir/root@192.168.1.254:/var/www/

此命令將/root/test-dir/整個(gè)目錄的內(nèi)容(包含子目錄和文件)復(fù)制到192.168.1.254的/var/www/目

錄下。

在Linux系統(tǒng)中,用戶經(jīng)常需要讓系統(tǒng)自動(dòng)地、非交互式地執(zhí)行某些任務(wù),例如半夜的時(shí)候自動(dòng)打包備份某個(gè)目錄,整個(gè)過(guò)程不需要人工參與。在本地執(zhí)行這樣的任務(wù),可以通過(guò)編輯/etc/crontab文件來(lái)讓crond服務(wù)自動(dòng)地進(jìn)行,然而要在遠(yuǎn)程服務(wù)器上做同樣的事情,也可以通過(guò)本地crond服務(wù)加上公鑰認(rèn)證遠(yuǎn)程登錄來(lái)完成。

首先完成客戶端到服務(wù)器端的公鑰認(rèn)證登錄的準(zhǔn)備,但不要設(shè)置私鑰密碼。然后在客戶端上編輯/etc/crontab,加入一行:

03***root/usr/bin/ssh192.168.1.254'/root/backup-important-files.sh'保存后關(guān)閉,現(xiàn)在客戶端就會(huì)在每天凌晨3點(diǎn)以root身份自動(dòng)登錄到192.168.1.254服務(wù)器上,執(zhí)行服務(wù)器上的/root/backup-important-files. sh腳本來(lái)備份重要的文件。整個(gè)過(guò)程完全無(wú)需人工介入,實(shí)現(xiàn)了無(wú)交互的遠(yuǎn)程命令執(zhí)行。

5 結(jié)語(yǔ)

通過(guò)使用SSH協(xié)議,數(shù)據(jù)在傳輸過(guò)程中加密,數(shù)據(jù)完整性也能得到保證,源地址與目的地址的偽造較為困難,很大程度上避免了中介人攻擊和重定向請(qǐng)求攻擊,用戶能夠以較高的安全性訪問(wèn)遠(yuǎn)程主機(jī)。而通過(guò)公鑰認(rèn)證方式使用SSH協(xié)議登錄主機(jī),用戶數(shù)據(jù)的安全性得到了更大的提高,不影響甚至還加強(qiáng)了用戶使用的便利性,不僅實(shí)現(xiàn)了安全與便利的折中,更實(shí)現(xiàn)了安全與便利的雙贏。

[1]孔祥真,徐小龍,邢宏健.Linux操作系統(tǒng)服務(wù)器SSH方式遠(yuǎn)程管理配置[J].網(wǎng)絡(luò)安全技術(shù)與應(yīng)用,2011(2):10-11;18.

[2]楊婧.SSH協(xié)議的研究與應(yīng)用[J].計(jì)算機(jī)與數(shù)字工程,2011(8):112-114.

[3]張國(guó)防.基于SSH協(xié)議的Linux遠(yuǎn)程管理[J].計(jì)算機(jī)安全,2014 (12):37-39.

(編輯:賈娟)

Configuration and Application of SSH Public Key Authentication

Liu Tao
(Guangdong University of Petrochem ical Technology,M aom ing Guangdong 525000)

This paper analyzes the security issues in the early network protocols and applications,discusses the features of two security authenticationmethods by SSH protocol.Remote login with SSH public key authentication enhances the security and the convenience of the systems.

SSH;public key;remote login

TP311.52

A

2095-0748(2016)18-0098-03

10.16525/j.cnki.14-1362/n.2016.18.41

2016-08-24

劉韜(1986—),男,廣東饒平人,碩士,畢業(yè)于華南理工大學(xué),助理實(shí)驗(yàn)師,研究方向:計(jì)算機(jī)技術(shù)。

猜你喜歡
用戶名私鑰公鑰
《護(hù)士進(jìn)修雜志》投稿程序
比特幣的安全性到底有多高
基于改進(jìn)ECC 算法的網(wǎng)絡(luò)信息私鑰變換優(yōu)化方法
一種基于混沌的公鑰加密方案
一種基于虛擬私鑰的OpenSSL與CSP交互方案
機(jī)智的快遞員
HES:一種更小公鑰的同態(tài)加密算法
SM2橢圓曲線公鑰密碼算法綜述
基于格的公鑰加密與證書基加密
LeeB私鑰分發(fā)協(xié)議的改進(jìn)方案
当涂县| 嘉义县| 乌拉特中旗| 宜良县| 休宁县| 玛沁县| 绥棱县| 宣汉县| 松江区| 江门市| 逊克县| 渑池县| 昂仁县| 宁河县| 萍乡市| 遂川县| 韶山市| 黄冈市| 日照市| 阳信县| 松阳县| 遂昌县| 克东县| 元江| 剑河县| 汉寿县| 莲花县| 思茅市| 潮州市| 关岭| 高青县| 高雄市| 徐汇区| 拉孜县| 黔西| 昔阳县| 晋江市| 南昌市| 宝清县| 迁西县| 波密县|