解決xshell連接不上阿里雲服務器問題


 最近購買了阿里雲服務器准備玩玩,但是使用xshell連接阿里雲服務器時,系統一直提示“Connection established. To escape to local shell, press 'Ctrl+Alt+]'. Connection closing...Socket close. Connection closed by foreign host. Disconnected from remote host(ALIYUN) at 15:05:08. Type `help' to learn how to use Xshell prompt.”(具體如圖1所示),百度搜尋無果,最后只能求助阿里雲服務人員,特此記錄一下解決過程。

圖1

      首先從網上查到說是需要檢查安全組配置,檢查ssh的端口號(22)是否開放,但是我已經開放成功了,還是連接不上。端口開放具體可見下圖(圖2、圖3、圖4)

圖2

 圖3

圖4

  然后網上還有說是需要加IP 白名單,先把IP白名單加起來。IP白名單添加可見附件截圖(圖5、圖6)

圖5

圖6

  網上查到很多解決方法但是都沒有用,最后還是客服人員幫忙解決問題的。原因是我在安裝mysql時,誤將sshd的群組和用戶給修改為mysql導致的,最后只需要將sshd的群組和用戶修改為root即可。  可通過 chomd 711 sshd 修改。具體可見圖7

 

 

 

如果出現Missing privilege separation directory: /var/empty/sshd 解決辦法

 

玖芯科技 昨天在整理服務器的文件時,刪了一些沒用的空文件夾。並把自己新電腦的公鑰配在服務器上。然后嘗試ssh登錄服務器的時候出問題了:
ssh_exchange_identification: Connection closed by remote host


我擦,登不上去了。我剛開始以為是我公鑰配錯了,但既沒讓我輸入私鑰密碼,也沒讓我輸入用戶登錄密碼。這就有點奇怪了。還好雲服務器控制台有VNC登錄這棵救命稻草。
但是把幾個配置文件反復檢查了幾遍都沒啥問題,算了還是重啟一下sshd服務,結果連sshd都起不來
[root@host:~]# service sshd restart
Stopping sshd:                                             [  OK  ]
Starting sshd: Missing privilege separation directory: /var/empty/sshd
                                                           [FAILED]


原來有個/var/empty/sshd文件夾丟失了
查了一下manual:
/var/empty/sshd
chroot(2) directory used by sshd during privilege separation in the pre-authentication phase.
The directory should not contain any files and must be owned by root and not group or world-writable.


/var/empty/sshd目錄會在身份認證時用到,這個目錄必須是空的,並且必須歸root用戶所有,其他用戶不能有寫權限。

最后得出的教訓是:不清楚的文件夾不要亂刪。


免責聲明!

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



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