• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于Linux平臺下SSH安全遠(yuǎn)程登錄的研究

      2018-09-12 09:52:02◆閆
      關(guān)鍵詞:遠(yuǎn)程管理私鑰公鑰

      ◆閆 梅

      ?

      基于Linux平臺下SSH安全遠(yuǎn)程登錄的研究

      ◆閆 梅

      (山西機(jī)電職業(yè)技術(shù)學(xué)院 山西 046000)

      由于服務(wù)器的特殊性能需求,Linux操作系統(tǒng)在服務(wù)器上得到廣泛的應(yīng)用。SSH作為一個免費的遠(yuǎn)程管理網(wǎng)絡(luò)設(shè)備和服務(wù)器的工具,為遠(yuǎn)程管理設(shè)備提供了安全的服務(wù),借助于SSH遠(yuǎn)程管理設(shè)備,可以避免遠(yuǎn)程傳輸數(shù)據(jù)過程中存在的信息泄露問題。若對服務(wù)器的SSH配置不恰當(dāng),也可能被黑客竊取到敏感的數(shù)據(jù)信息。本文通過部署SSH服務(wù),對遠(yuǎn)程管理過程中存在的安全問題進(jìn)行了研究,詳細(xì)分析了密鑰對驗證的過程,為用戶遠(yuǎn)程訪問服務(wù)器提供安全性的參考。

      Linux操作系統(tǒng);SSH;遠(yuǎn)程登錄;數(shù)據(jù)安全

      0 引言

      服務(wù)器由于具有承擔(dān)服務(wù)并且保障服務(wù)的重要作用,因此在網(wǎng)絡(luò)性能、安全性、可管理性上有嚴(yán)格的要求,在性能、穩(wěn)定性、安全性等方面,Linux OS有著其他系統(tǒng)無法比擬的強(qiáng)大優(yōu)勢,因此Linux操作系統(tǒng)在服務(wù)器上有著廣泛的應(yīng)用。

      由于服務(wù)器經(jīng)過配置完成后放置在網(wǎng)絡(luò)機(jī)房內(nèi),當(dāng)管理服務(wù)器時,一般通過遠(yuǎn)程管理的方式實現(xiàn)對服務(wù)器的日常管理。在Linux OS平臺下,可借助于telnet、FTP等對服務(wù)器進(jìn)行遠(yuǎn)程管理,telnet在數(shù)據(jù)傳輸過程中信息以明文的方式來傳輸數(shù)據(jù),若黑客監(jiān)聽并截獲到傳輸過程中的數(shù)據(jù),導(dǎo)致所傳輸?shù)拿舾袛?shù)據(jù)被截獲,帶來安全問題,因此選擇更為安全的遠(yuǎn)程登錄協(xié)議尤為重要。SSH為Secure Shell Client的縮寫,是一種基于傳輸層和應(yīng)用層上的安全協(xié)議,由于SSH對遠(yuǎn)程傳輸過程中的信息進(jìn)行了數(shù)據(jù)加密,因此SSH可以解決數(shù)據(jù)在網(wǎng)絡(luò)上明文傳輸?shù)膯栴},有效地避免數(shù)據(jù)在傳輸過程中被監(jiān)聽或截取,客戶端可安全地遠(yuǎn)程管理網(wǎng)絡(luò)設(shè)備或服務(wù)器。

      1 SSH的工作原理

      SSH采用的是客戶端/服務(wù)器的工作模式,通過使用非對稱加密算法來實現(xiàn)對傳輸數(shù)據(jù)的加密,服務(wù)器端有一個sshd的守護(hù)進(jìn)程,用于在后臺運行并對客戶端發(fā)起的連接請求進(jìn)行響應(yīng),提供對遠(yuǎn)程登錄的處理;客戶端借助于應(yīng)用程序來登錄服務(wù)器。SSH具體工作過程如下圖1所示。

      圖1 工作過程

      (1)客戶端Client向服務(wù)器Server發(fā)出登錄請求。

      (2)服務(wù)器Server在接收到客戶端Client的登錄請求后,響應(yīng)請求同時將自身的公鑰轉(zhuǎn)發(fā)給Client。

      (3)客戶端Client使用Server端的公鑰對用戶名和密碼等敏感的數(shù)據(jù)信息進(jìn)行加密,并將加密的數(shù)據(jù)信息發(fā)送給服務(wù)器Server端。

      (4)服務(wù)器Server在接收到加密的數(shù)據(jù)后,用自身的私鑰對加密的數(shù)據(jù)進(jìn)行解密,獲取到客戶端發(fā)送的數(shù)據(jù)信息。

      (5)服務(wù)器Server端將加密的信息解密后,對解密后的信息進(jìn)行身份的驗證,并將驗證的結(jié)果返回給Client。

      2 SSH遠(yuǎn)程登錄的實現(xiàn)

      在Linux平臺下借助于SSH實現(xiàn)遠(yuǎn)程管理網(wǎng)絡(luò)設(shè)備或服務(wù)器,需要在客戶端和服務(wù)器端做出相應(yīng)的配置。

      2.1 服務(wù)器端的配置

      若要通過SSH協(xié)議來遠(yuǎn)程管理服務(wù)器,需通過部署配置sshd服務(wù)程序,sshd是一個守護(hù)進(jìn)程,用于在后臺運行并響應(yīng)來自客戶端的連接請求,sshd是基于SSH協(xié)議開發(fā)的一款遠(yuǎn)程管理服務(wù)程序,流行的Linux發(fā)行版本一般會默認(rèn)安裝SSH協(xié)議。

      (1)服務(wù)器端SSH協(xié)議的開啟

      ①查看sshd守護(hù)進(jìn)程是否啟動

      一些Linux發(fā)行版本默認(rèn)狀態(tài)下SSH處于關(guān)閉狀態(tài),若使用SSH則需提前開啟。以管理員身份登錄Linux服務(wù)器,通過netstat -atpn |grep 22命令來查看sshd進(jìn)程是否開啟,22是SSH協(xié)議對應(yīng)的端口號,用于監(jiān)聽客戶端的連接請求,如圖2所示,輸入命令后沒有輸出,說明sshd守護(hù)進(jìn)程沒有開啟。

      圖2 sshd進(jìn)程未開啟

      ②開啟并重啟SSH服務(wù)

      若sshd守護(hù)進(jìn)程未開啟,則需通過service sshd start命令開啟sshd守護(hù)進(jìn)程,通過service sshd restart重新啟動SSH服務(wù),啟動過程如下所示。

      [root@sv Desktop]# service sshd start

      Starting sshd: [ OK ]

      [root@sv Desktop]# service sshd restart

      Stopping sshd: [ OK ]

      Starting sshd: [ OK ]

      ③再次驗證sshd守護(hù)進(jìn)程是否啟動

      再次通過netstat -atpn |grep 22命令來檢驗SSH是否成功啟動,SSH成功啟動后如下圖3所示,發(fā)現(xiàn)存在22號監(jiān)聽端口,說明sshd守護(hù)進(jìn)程已經(jīng)啟動。

      圖3 sshd守護(hù)進(jìn)程開啟

      注:若在以上操作完成后仍無法開啟ssh,必要時關(guān)閉防火墻,通過/etc/init.d/iptables.stop命令來關(guān)閉防火墻。

      (2)更改服務(wù)器端的網(wǎng)絡(luò)參數(shù)

      類似于Windows下主機(jī)之間的通信,Linux主機(jī)要實現(xiàn)與網(wǎng)絡(luò)中不同PC的通信,需要配置正確的網(wǎng)絡(luò)參數(shù),網(wǎng)路配置通常包括主機(jī)名、IP地址、子網(wǎng)掩碼、默認(rèn)網(wǎng)關(guān)等。在Linux平臺下,TCP/IP的網(wǎng)絡(luò)配置信息分別存儲相關(guān)的配置文件中,有/etc/sysconfig/network、網(wǎng)卡配置文件、/etc/hosts、/etc/resolv.conf以及/etc/host.conf等文件。

      ①/etc/sysconfig/network

      該文件主要用于設(shè)置基本的網(wǎng)絡(luò)配置參數(shù),包括主機(jī)名稱、網(wǎng)關(guān)等,設(shè)置HOSTNAME=helloa GATEWAY=192.168.21.1,修改后的信息如圖4所示。

      圖4 /etc/sysconfig/network文件

      ②/etc/sysconfig/network/ifcfg-ethx

      該文件用于設(shè)置網(wǎng)卡的名稱、IP地址、子網(wǎng)掩碼、DNS等信息,設(shè)置網(wǎng)卡的IP地址、網(wǎng)關(guān)及DNS的地址信息分別為:IPADDDR=192.168.21.2 NETMASK=255.255.255.0

      GATEWAY=192.168.21.1 dns1=8.8.8.8

      圖5 /etc/sysconfig/network/ifcfg-ethx文件

      ③重啟網(wǎng)絡(luò)服務(wù)

      對配置文件修改以后,應(yīng)該通過service network restart重新啟動網(wǎng)絡(luò)服務(wù),使配置文件生效。

      [root@sv network-scripts]#service network restart

      shutting down interface eth1: Device state:3 (disconnected)

      [OK]

      Shutting down loopback interface: [OK]

      Bringing up loopback interface: [OK]

      Bringing up interface eth1:Active connecting state:activated

      Active connetion

      path:/org/freedeaktop/NetworkManager/ActiveConnection/1

      [OK]

      2.2 客戶端通過SSH遠(yuǎn)程管理服務(wù)器

      通過ssh遠(yuǎn)程連接到server端,首次通過客戶端遠(yuǎn)程訪問服務(wù)器,系統(tǒng)會提示是否繼續(xù)連接,客戶端如果接受遠(yuǎn)程服務(wù)器的公鑰,則輸入yes,隨后系統(tǒng)會要求輸入服務(wù)器的登錄密碼,如下顯示了登錄的過程。

      [root@localhost -]#ssh 192.168.21.2

      The authenticity of host ‘192.168.21.2(192.168.21.2)’can not be established RSA key fingerprint is d4:3f:0d:f6:de:25:d9:29:28:25:5e:

      f3:f3:e2:9da7.

      Are you sure you want to continue connecting (yes/no)? yes

      Warning:Permanently added ‘192.168.21.2’(RSA) to the list of known hosts.

      root@192.168.21.2’s password:

      [root@sv -]#

      第二次及以后遠(yuǎn)程登錄服務(wù)器時,不會再提示是否繼續(xù),直接提示輸入服務(wù)器的登錄密碼,如下所示。不會提示是否繼續(xù)是因為相關(guān)的公鑰信息已經(jīng)保存在客戶端的known_hosts文件中,如下所示。

      [root@localhost etc]# ssh 192.168.21.2

      root@192.168.21.2’s pasword:

      Last login:Tue May 22 15:21:39 2018 from 192.168.21.128

      [root@sv -]#

      查看公鑰信息,如圖6所示。

      圖6 known_hosts文件

      3 SSH的安全認(rèn)證

      通過SSH遠(yuǎn)程訪問服務(wù)器端的過程本來是安全的,但在具體實施的過程中存在了以下的安全問題:如果有人偽裝成服務(wù)器,截獲了客戶端的登錄請求,偽裝者將其公鑰發(fā)給客戶端,客戶端并不清楚其接收到的信息是否來自于真實的服務(wù)器端,于是使用接收到的偽裝者的公鑰對其傳輸?shù)臄?shù)據(jù)進(jìn)行加密,并將加密后的信息傳輸給偽裝者,偽裝者使用自身的私鑰對接收到的信息進(jìn)行解密,獲取到客戶端傳輸?shù)拿舾行畔ⅲ瑤戆踩珕栴}。

      通過對服務(wù)器密鑰對的驗證,核對客戶的私鑰、服務(wù)器端的公鑰是否匹配,達(dá)到解決上述“偽裝者”的問題,具體實施過程如下。

      3.1 服務(wù)器端

      在/etc/ssh/sshd_config文件下的PubkeyAuthention用來設(shè)置是否開啟公鑰驗證,如果采用公鑰驗證的方式登錄服務(wù)器,需要開啟此PubkeyAuthention選項。對sshd_config文件配置完成后,需通過service sshd restart重新啟動SSH服務(wù),使配置文件生效。

      3.2 客戶端

      (1)創(chuàng)建密鑰對;

      通過ssh-keygen -t [rsa|dsa]成密鑰文件和私鑰文件,私鑰文件、公鑰文件分別存儲在id_rsa、id_rsa.pub文件中。在創(chuàng)建密鑰對的過程中,系統(tǒng)會提示是否設(shè)置私鑰口令,為了安全考慮,最好設(shè)置一個私鑰口令,具體操作如下所示。

      [root@localhaost Desktop]#ssh-keygen -t rsa //使用rsa算法進(jìn)行加密

      Generating public/private rsa key pair.

      Enter file in which to save the key (/root/.ssh/id_rsa):

      Enter passphrase (empty for no passphrase):

      Enter same passphrase again:

      Your identification has been saved in /root/.ssh/id_rsa.

      Your public key has been saved in /root/.ssh/id_rsa.pub.

      The key fingerprintis:27:a0:ce:e7:59:f6:7b:90:b1:15:8f:36:76:

      d3:41:36

      root@localhost.localdomain

      The key's randomart image is:

      (2)上傳公鑰文件到服務(wù)器;

      通過sh-copy-id將生成的客戶端產(chǎn)生的公鑰文件上傳至服務(wù)器端,私鑰文件保存在客戶端,如下所示。

      [root@localhost -]# ssh-copy-id yanmei@192.168.21.2

      yanmei@192.168.21.2’s pasword:

      Now try logging into the machine,with “ssh ‘yanmei@192.168.

      21.2’ and check in:

      .ssh/authorized_keys to make sure we huven’t added extra keys that you weren’t expecting.

      (3)從服務(wù)器端驗證是否上傳成功;

      從服務(wù)器端查看公鑰是否上傳成功,如下所示。

      [root@sv Desktop]#su yanmei

      [yanmei@sv Desktop]$cd -

      [yanmei@sv -]$cd .ssh

      [yanmei@sv .ssh]$ll

      total 4

      -rw-------.1 yanmei yanmei 408 2018-05-23 11:15 authorized_keys

      公鑰信息保存在/ssh/ authorized_keys文件中,查看公鑰信息如下圖7所示。

      圖7 authorized_keys文件

      (4)重新啟動SSH服務(wù);

      (5)客戶端遠(yuǎn)程登錄服務(wù)器,系統(tǒng)提示的不再是輸入用戶登錄的口令,而是對密鑰對進(jìn)行認(rèn)證。

      [root@localhost -]# ssh yanmei@192.168.21.2

      Enter passphrase for key ‘/root/.ssh/id_rsa’:

      Last login:Wed May 23 10:11:52 2018 from 192.168.21.128

      [yanmei@sv - ]$

      由于私鑰只有客戶端自己知道,所以偽裝者即便獲取到口令,也無法實現(xiàn)遠(yuǎn)程登錄服務(wù)器。

      4 結(jié)論

      通過在linux平臺上對SSH遠(yuǎn)程登錄安全技術(shù)的實驗,驗證了通過對SSH密鑰對驗證的配置,可以避免“偽裝者”的攻擊,實現(xiàn)安全的遠(yuǎn)程管理服務(wù)器并提供安全的網(wǎng)絡(luò)服務(wù),有效地防止敏感信息在傳輸過程中的泄露,為服務(wù)器的安全運行和管理提供保障。

      [1]楊春龍.SSH協(xié)議在資源監(jiān)控系統(tǒng)數(shù)據(jù)傳輸中的應(yīng)用[J].軟件,2013.

      [2]胡家芬.基于SSH的Linux遠(yuǎn)程管理機(jī)制研究[J].福建電腦,2012.

      [3]張倩莉, 喬治錫.基于SSH的Linux系統(tǒng)遠(yuǎn)程登錄研究[J].計算機(jī)時代,2016.

      [4]張國防.基于SSH協(xié)議的Linux遠(yuǎn)程管理[J].計算機(jī)安全,2014.

      [5]王曉玲.Linux平臺下基于OpenSSH的安全遠(yuǎn)程登錄服務(wù)的設(shè)計與實現(xiàn)[J].信息與電腦(理論版),2014.

      [6]陳立德.基于Linux系統(tǒng)網(wǎng)站的布署與管理[J].廣州航海高等??茖W(xué)校學(xué)報,2010.

      [7]陳禮華,熊齊邦.基于TELNET/SSH的Linux主機(jī)監(jiān)視系統(tǒng)[J].計算機(jī)應(yīng)用,2004.

      [8]姜大慶.Linux系統(tǒng)與網(wǎng)絡(luò)管理[M].中國鐵道出版社,2009.

      猜你喜歡
      遠(yuǎn)程管理私鑰公鑰
      比特幣的安全性到底有多高
      基于改進(jìn)ECC 算法的網(wǎng)絡(luò)信息私鑰變換優(yōu)化方法
      GSM-R網(wǎng)絡(luò)SIM卡遠(yuǎn)程管理技術(shù)方案研究
      一種基于混沌的公鑰加密方案
      一種基于虛擬私鑰的OpenSSL與CSP交互方案
      被忽視的遠(yuǎn)程管理模塊
      HES:一種更小公鑰的同態(tài)加密算法
      SM2橢圓曲線公鑰密碼算法綜述
      Radmin在服務(wù)器遠(yuǎn)程管理中的應(yīng)用
      西門子全新遠(yuǎn)程管理平臺使遠(yuǎn)程訪問安全簡便
      智能制造(2015年8期)2015-10-15 19:28:18
      潍坊市| 隆林| 蚌埠市| 五原县| 准格尔旗| 监利县| 成武县| 汝南县| 彝良县| 犍为县| 延边| 桃园市| 西藏| 体育| 库尔勒市| 尼玛县| 惠州市| 聊城市| 固始县| 竹山县| 收藏| 华宁县| 武穴市| 兴化市| 星座| 公主岭市| 博客| 句容市| 三都| 连平县| 溧阳市| 房山区| 道孚县| 阜新市| 加查县| 福建省| 沙湾县| 横峰县| 南投县| 双峰县| 贺兰县|