Centos7之修改ssh端口和秘鑰登錄


一、修改SSH默認端口22

1、修改/etc/ssh/sshd_config文件中的Port參數,首先將原來#Port=22這行的#號去掉,另起一行同樣鍵入Port=2345。然后保存退出。

2、systemctl  restart sshd服務,然后測試2345端口是否開啟,一定要先驗證新端口是否可以連接(這里如果不行的話,檢查SELinux設置、iptables防火牆設置、firewalld防火牆設置,最直接的方法是直接關閉)

3、最后如果新端口2345能夠順利連接,就可以再去/etc/ssh/sshd_config配置文件中,將Port=22端口加上#號注釋掉,別忘記了最后重啟一下sshd服務生效。

注意:過程中可以使用netstat -nultp查看端口開放狀態,每一步都要驗證,避免連接失敗,造成不必要的麻煩。

二、使用Xshell進行秘鑰登錄Centos7操作系統

 大概步驟:

  1、首先需要在被連接的Linux服務器上修改/etc/ssh/sshd_config配置文件中的參數,修改完以后,先不要重啟sshd服務。

PasswordAuthentication no        # 不允許密碼驗證登錄
PubkeyAuthentication yes          # 允許公鑰驗證登錄
AuthorizedKeysFile .ssh/id_rsa.pub  # 指定公鑰文件路徑

  2、在Xshell端口生成一對秘鑰,將公鑰復制粘貼到Linux服務器的vim /root/.ssh/authorized_keys中。

  

  

  

  

  

   如果你要登錄用戶家目錄下沒有.ssh目錄,可以通過ssh-keygen命令生成服務端自己的密鑰方式讓系統自動創建目錄,下一步,下一步即可。

  上圖中在下拉框中已經看到了公鑰,然后全選復制,最后將粘貼到Linux服務器的vim /root/.ssh/authorized_keys文件中。這里需要注意,如果上一步紅色字體標注的(Linux服務上未執行ssh-keygen命令話,就找不到/root/.ssh/這個路徑,如果沒有,可以先執行這個命令。)

  然后給這個文件修改權限為600(如果/root/.ssh/下沒有authorized_keys文件,可以手動創建一個。)

chmod 600  /root/.ssh/authorized_keys

  最后,重點是所有設置都完成以后,記得要重啟sshd服務。

systemctl  restart sshd

  3、連接測試

  

  

 

   

  

  

  有時候這里輸入完密碼以后會提示連接失敗,再多試試,密碼容易輸錯。

  

  提醒:

    1、如果要改回原來用密碼登陸的樣子,只改sshd_config配置文件成原樣還不夠,需要把authorized_keys文件清空再重啟sshd服務。

   擴展

  1、為了安全起見,一般情況下都不會開放22端口,哪怕是內網,除非真的沒吃過虧,或者公司安全工程師沒有找過你。

  2、如果一台服務器經常在一台電腦上需要登錄,建議盡量使用秘鑰登錄,這樣等於又上了一把鎖。

  3、還有一種例外比較常見,就是先使用root賬戶創建一個普通用戶,再在/etc/ssh/sshd_config下修改PermitRootLogin參數為no(不允許root直接登錄),這樣的好處就在於普通用戶不會像root用戶權限那么大,要連續知道兩個用戶的名字和密碼更難,安全等級更完善。

    步驟很簡單:

    1、新建一個普通賬戶,例如Mr.lei,記得一定要使用passwd命令給新建的這個用戶加上密碼,否則無法登陸。

    2、修改/etc/ssh/sshd_config配置文件中的PermitRootLogin參數,先去除前面的#號鍵,然后再將后面的yes改成no,保存退出。

    3、重啟sshd服務,使用客戶端嘗試登陸即可。

    

 

 

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM