Linux遠(yuǎn)程登錄和無密碼登錄的方法

這篇文章主要講解了“Linux遠(yuǎn)程登錄和無密碼登錄的方法”,文中的講解內(nèi)容簡單清晰,易于學(xué)習(xí)與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“Linux遠(yuǎn)程登錄和無密碼登錄的方法”吧!

呼蘭網(wǎng)站建設(shè)公司創(chuàng)新互聯(lián)建站,呼蘭網(wǎng)站設(shè)計(jì)制作,有大型網(wǎng)站制作公司豐富經(jīng)驗(yàn)。已為呼蘭上千提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\外貿(mào)網(wǎng)站制作要多少錢,請找那個(gè)售后服務(wù)好的呼蘭做網(wǎng)站的公司定做!

一、遠(yuǎn)程登錄方法

SSH 是一種安全通道協(xié)議 , 主要用來遠(yuǎn)程登錄。在 RHEL   5 系統(tǒng)中使用的是 OpenSSH 服務(wù)器由 openssh , openssh-server 等軟件包提供的 ( 默認(rèn)已經(jīng)安裝 ) ,并以將 sshd 添加為標(biāo)準(zhǔn)的系統(tǒng)服務(wù)。 使用方法如下:

代碼如下:


$ ssh host
$ ssh <a href="mailto:username@host">username@host</a>
$ ssh -p 222 <a href="mailto:username@host">username@host</a>


-p: 指定訪問端口 ; 如果省略該參數(shù) , 則默認(rèn)訪問 SSH 服務(wù)的默認(rèn)端口 22;
如果是第一次登錄對方主機(jī) , 則系統(tǒng)會(huì)出現(xiàn)一下提示 :

代碼如下:


The authenticity of host 'host(192.168.0.21)' can't be established.
RSA key fingerprint is 98:2e:d7:e0:de:9f:ac:67:28:c2:42:2d:37:16:58:4d.
Are you sure you want to continue connecting (yes/no)?

這段話是說,無法確認(rèn) host 主機(jī)的真實(shí)性,只知道它的公鑰指紋,問你還想繼續(xù)連接嗎?
輸入 yes 之后,系統(tǒng)會(huì)出現(xiàn)一句提示,表示 host 主機(jī)已經(jīng)得到認(rèn)可。

代碼如下:

Warning: Permanently added 'host, 192.168.0.21 ' (RSA) to the list of known hosts.

然后要求輸入密碼:

代碼如下:


$ Password: (enter password)


此時(shí),如果秘密正確,就可以登錄了。

二、無密碼登錄方法

在信任環(huán)境下,如果每次遠(yuǎn)程登錄時(shí),都要輸入密碼,感覺太浪費(fèi)時(shí)間了,尤其是密碼很復(fù)雜、維護(hù)的服務(wù)器比較多的情況下。
于是有了正常需求:不用輸入密碼即可實(shí)現(xiàn)遠(yuǎn)程登錄。
實(shí)現(xiàn)步驟如下:

1 、本地生成 一對秘鑰文件 ( 公鑰和私鑰 ) ;

代碼如下:


$ ssh-keygen
# 以上命令等價(jià)于  ssh-keygen -t rsa
#-t: 指定密鑰的類型 , 默認(rèn)為 SSH-2  的 rsa 類型 ;


運(yùn)行上面的命令后,系統(tǒng)會(huì)出現(xiàn)一系列提示,可以一路回車。 特別說明 ,其中有一個(gè)問題是, 要不要對私鑰設(shè)置口令( passphrase ) ,如果擔(dān)心私鑰的安全,可以設(shè)置一個(gè)。運(yùn)行結(jié)束以后,會(huì)在  ~/.ssh/  目錄下新生成兩個(gè)文件: id_rsa.pub 和 id_rsa 。前者公鑰,后者是私鑰。
2 、將公鑰傳送到遠(yuǎn)程主機(jī) host 上面 ;

代碼如下:

$ ssh-copy-id <a href="mailto:user@host">user@host</a>

經(jīng)過以上兩步之后,就可以實(shí)現(xiàn)無密碼遠(yuǎn)程登錄了 ( 遠(yuǎn)程主機(jī)將用戶的公鑰保存在 ~/.ssh/authorized_keys 文件中 ) 。

三、常見問題:

1、 生成密鑰并上傳至遠(yuǎn)程主機(jī)后,仍然無法實(shí)現(xiàn)無密碼登錄?
打開遠(yuǎn)程主機(jī)的  /etc/ssh/sshd_config  這個(gè)文件,以下幾行取消注釋。

代碼如下:


#RSAAuthentication=yes
#PubkeyAuthentication=yes
#AuthorizedKeysFile=.ssh/authorized_keys

然后,重啟遠(yuǎn)程主機(jī)的 ssh 服務(wù)。

代碼如下:


#ubuntu 系統(tǒng)
$ service ssh restart
#debian 系統(tǒng)
$ /etc/init.d/ssh restart


2 、執(zhí)行 ssh-copy-id  命令時(shí),遠(yuǎn)程服務(wù)器的 SSH 服務(wù)端口不是 22 ,如下:

代碼如下:

$ ssh-copy-id <a href="mailto:nameB@machineB">nameB@machineB</a>
ssh: connect to host machineB port 22: Connection refused


則使用如下命令:

代碼如下:


$  ssh-copy-id "-p 22000 <a href="mailto:nameB@machineB">nameB@machineB</a>"


四、補(bǔ)充內(nèi)容:

代碼如下:


$  ssh-copy-id -i ~/.ssh/id_rsa.pub <a href="mailto:root@192.168.0.2">root@192.168.0.2</a>
$  ssh-copy-id -u eucalyptus -i  /home/ eucalyptus/.ssh/id_rsa.pub  <a href="mailto:eucalyptus@remote_host">eucalyptus@remote_host</a>
#-u : 給 eucalyptus 用戶 設(shè)置 無密碼登陸
# -i : 當(dāng)沒有值傳遞時(shí)或   ~/.ssh/identity.pub  文件不可訪問 ( 不存在 ) ,ssh-copy-id 將顯示 如下錯(cuò)誤
/usr/bin/ssh-copy-id: ERROR: No identities found


SSH 提供兩種方式的登錄驗(yàn)證:
1 、密碼驗(yàn)證:以服務(wù)器中本地系統(tǒng)用戶的登錄名稱,密碼進(jìn)行驗(yàn)證。
2 、秘鑰對驗(yàn)證:要求提供相匹配的秘鑰信息才能通過驗(yàn)證。通常先在客戶機(jī)中創(chuàng)建一對秘鑰文件 ( 公鑰和私鑰 ) ,然后將公鑰文件放到服務(wù)器中的指定位置。
注意:當(dāng)密碼驗(yàn)證和私鑰驗(yàn)證都啟用時(shí),服務(wù)器將優(yōu)先使用秘鑰驗(yàn)證。

五、SSH服務(wù)的配置文件 :

sshd 服務(wù)的配置文件默認(rèn)在 /etc/ssh/sshd_config ,正確調(diào)整相關(guān)配置項(xiàng),可以進(jìn)一步提高 sshd 遠(yuǎn)程登錄的安全性。

配置文件的內(nèi)容可以分為以下三個(gè)部分:

代碼如下:


#SSH服務(wù)器監(jiān)聽的選項(xiàng)
#監(jiān)聽的端口
Port 22
#使用SSH V2協(xié)議
Protocol 2
#監(jiān)聽的地址為所有地址
ListenAdderss 0.0.0.0
#//禁止DNS反向解析
UseDNS no</p> <p>#用戶登錄控制選項(xiàng)
#是否允許root用戶登錄
PermitRootLogin no
#是否允許空密碼用戶登錄
PermitEmptyPasswords no
#登錄驗(yàn)證時(shí)間(2分鐘)
LoginGraceTime 2m
#最大重試次數(shù)
MaxAuthTries 6
#只允許user用戶登錄,與DenyUsers選項(xiàng)相反
AllowUsers user</p> <p>#登錄驗(yàn)證方式
#啟用密碼驗(yàn)證
PasswordAuthentication yes
#啟用秘鑰驗(yàn)證
PubkeyAuthentication yes
#指定公鑰數(shù)據(jù)庫文件
AuthorsizedKeysFile .ssh/authorized_keys


查看 SSH 服務(wù)狀態(tài)命令: /etc/init.d/sshd status
重新啟動(dòng) SSH 服務(wù)命令: /etc/init.d/sshd restart
查看 ssh 軟件的版本號命令: $ ssh -V 
OpenSSH_3.9p1, OpenSSL 0.9.7a Feb 19 2003  # 表明該系統(tǒng)正在使用 OpenSSH
ssh: SSH Secure Shell 3.2.9.1 (non-commercial version) on i686-pc-linux-gnu  # 表明該系統(tǒng)正在使用 SSH2
當(dāng)遠(yuǎn)程主機(jī)的公鑰被接受以后,它就會(huì)被保存在文件 $HOME/.ssh/known_hosts 之中。下次再連接這臺主機(jī),系統(tǒng)就會(huì)認(rèn)出它的公鑰已經(jīng)保存在本地了,從而跳過警告部分,直接提示輸入密碼。
每個(gè) SSH 用戶都有自己的 known_hosts 文件,此外系統(tǒng)也有一個(gè)這樣的文件,通常是 /etc/ssh/ssh_known_hosts ,保存一些對所有用戶都可信賴的遠(yuǎn)程主機(jī)的公鑰。

感謝各位的閱讀,以上就是“Linux遠(yuǎn)程登錄和無密碼登錄的方法”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對Linux遠(yuǎn)程登錄和無密碼登錄的方法這一問題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是創(chuàng)新互聯(lián),小編將為大家推送更多相關(guān)知識點(diǎn)的文章,歡迎關(guān)注!

本文題目:Linux遠(yuǎn)程登錄和無密碼登錄的方法
轉(zhuǎn)載來源:http://muchs.cn/article34/ipigpe.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站排名、微信小程序品牌網(wǎng)站制作、關(guān)鍵詞優(yōu)化、服務(wù)器托管、網(wǎng)頁設(shè)計(jì)公司

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)頁設(shè)計(jì)公司