新聞中心
SSH(Secure Shell)是一種能夠以安全的方式提供遠程登錄的協議,也是目前遠程管理Linux系統的首選方式。在此之前,一般使用FTP或Telnet來進行遠程登錄。但是因為它們以明文的形式在網絡中傳輸賬戶密碼和數據信息,因此很不安全,很容易受到黑客發(fā)起的中間人攻擊,這輕則篡改傳輸的數據信息,重則直接抓取服務器的賬戶密碼。

成都創(chuàng)新互聯公司,為您提供重慶網站建設、成都網站制作、網站營銷推廣、網站開發(fā)設計,對服務成都地磅秤等多個行業(yè)擁有豐富的網站建設及推廣經驗。成都創(chuàng)新互聯公司網站建設公司成立于2013年,提供專業(yè)網站制作報價服務,我們深知市場的競爭激烈,認真對待每位客戶,為客戶提供賞心悅目的作品。 與客戶共同發(fā)展進步,是我們永遠的責任!
想要使用SSH協議來遠程管理Linux系統,則需要部署配置sshd服務程序。sshd是基于SSH協議開發(fā)的一款遠程管理服務程序,不僅使用起來方便快捷,而且能夠提供兩種安全驗證的方法:
基于口令的驗證—用賬戶和密碼來驗證登錄;
基于密鑰的驗證—需要在本地生成密鑰對,然后把密鑰對中的公鑰上傳至服務器,并與服務器中的公鑰進行比較;該方式相較來說更安全。
前文曾多次強調“Linux系統中的一切都是文件”,因此在Linux系統中修改服務程序的運行參數,實際上就是在修改程序配置文件的過程。sshd服務的配置信息保存在/etc/ssh/sshd_config文件中。運維人員一般會把保存著最主要配置信息的文件稱為主配置文件,而配置文件中有許多以井號開頭的注釋行,要想讓這些配置參數生效,需要在修改參數后再去掉前面的井號。sshd服務配置文件中包含的重要參數如表9-1所示。
表9-1 sshd服務配置文件中包含的參數以及作用
| 參數 | 作用 |
|---|---|
| Port 22 | 默認的sshd服務端口 |
| ListenAddress 0.0.0.0 | 設定sshd服務器監(jiān)聽的IP地址 |
| Protocol 2 | SSH協議的版本號 |
| HostKey /tc/ssh/ssh_host_key | SSH協議版本為1時,DES私鑰存放的位置 |
| HostKey /etc/ssh/ssh_host_rsa_key | SSH協議版本為2時,RSA私鑰存放的位置 |
| HostKey /etc/ssh/ssh_host_dsa_key | SSH協議版本為2時,DSA私鑰存放的位置 |
| PermitRootLogin yes | 設定是否允許root管理員直接登錄 |
| StrictModes yes | 當遠程用戶的私鑰改變時直接拒絕連接 |
| MaxAuthTries 6 | 最大密碼嘗試次數 |
| MaxSessions 10 | 最大終端數 |
| PasswordAuthentication yes | 是否允許密碼驗證 |
| PermitEmptyPasswords no | 是否允許空密碼登錄(很不安全) |
在RHEL 7系統中,已經默認安裝并啟用了sshd服務程序。接下來使用ssh命令進行遠程連接,其格式為“ssh [參數] 主機IP地址”。要退出登錄則執(zhí)行exit命令。
[root@linuxprobe ~]# ssh 192.168.10.10
The authenticity of host '192.168.10.10 (192.168.10.10)' can't be established.
ECDSA key fingerprint is 4f:a7:91:9e:8d:6f:b9:48:02:32:61:95:48:ed:1e:3f.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '192.168.10.10' (ECDSA) to the list of known hosts.
root@192.168.10.10's password:此處輸入遠程主機root管理員的密碼
Last login: Wed Apr 15 15:54:21 2017 from 192.168.10.10
[root@linuxprobe ~]#
[root@linuxprobe ~]# exit
logout
Connection to 192.168.10.10 closed.如果禁止以root管理員的身份遠程登錄到服務器,則可以大大降低被黑客暴力破解密碼的幾率。下面進行相應配置。首先使用Vim文本編輯器打開sshd服務的主配置文件,然后把第48行#PermitRootLogin yes參數前的井號(#)去掉,并把參數值yes改成no,這樣就不再允許root管理員遠程登錄了。記得最后保存文件并退出。
[root@linuxprobe ~]# vim /etc/ssh/sshd_config
………………省略部分輸出信息………………
46
47 #LoginGraceTime 2m
48 PermitRootLogin no
49 #StrictModes yes
50 #MaxAuthTries 6
51 #MaxSessions 10
52
………………省略部分輸出信息………………再次提醒的是,一般的服務程序并不會在配置文件修改之后立即獲得最新的參數。如果想讓新配置文件生效,則需要手動重啟相應的服務程序。最好也將這個服務程序加入到開機啟動項中,這樣系統在下一次啟動時,該服務程序便會自動運行,繼續(xù)為用戶提供服務。
[root@linuxprobe ~]# systemctl restart sshd
[root@linuxprobe ~]# systemctl enable sshd這樣一來,當root管理員再來嘗試訪問sshd服務程序時,系統會提示不可訪問的錯誤信息。雖然sshd服務程序的參數相對比較簡單,但這就是在Linux系統中配置服務程序的正確方法。大家要做的是舉一反三、活學活用,這樣即便以后遇到了陌生的服務,也一樣可以搞定了。
[root@linuxprobe ~]# ssh 192.168.10.10
root@192.168.10.10's password:此處輸入遠程主機root用戶的密碼
Permission denied, please try again. 當前名稱:創(chuàng)新互聯linux教程:9.2.1配置sshd服務
瀏覽路徑:http://www.dlmjj.cn/article/dhshphs.html


咨詢
建站咨詢
