Linux SSH 無法登陸

wengtf發表於2012-11-13

通過KVM登陸伺服器,檢查messages日誌發現如下錯誤:

/var/empty/sshd must be owned by root and not group or world-writable.

 

##以下是網上流傳的解決辦法:

1、通過物理終端進入到linux上,手工檢查ssh發現沒執行

-bash-2.05b# /etc/init.d/sshd status

sshd is stopped

2、檢查日誌或者手工啟動服務,發現報告許可權錯誤。

-bash-2.05b# /etc/init.d/sshd start

Starting sshd/var/empty/sshd must be owned by root and not group or world-writable.

[FAILED]

-bash-2.05b#

使用rpm -V 命令可檢查到ssh的軟體包正常,但某個目錄的屬主錯誤。

-bash-2.05b# rpm -V openssh-server

S.5…… c /etc/ssh/sshd_config

……U…… /var/empty/sshd

-bash-2.05b#

經檢視發現這個目錄的屬主不是root,所以啟動ssh報錯

-bash-2.05b# ls -ld /var/empty/sshd/

d——x——x——x 2 vu00106 root 1024 Feb 2 2005 /var/empty/sshd/

-bash-2.05b#

修改為root屬主,啟動成功

-bash-2.05b# chown root /var/empty/sshd/

-bash-2.05b# /etc/init.d/sshd start

Starting sshd: [ OK ]

-bash-2.05b#

 

至此問題修復。

 

另外,還可以嘗試:

這個是許可權的問題,可採取以下兩步解決

chown -R root.root /var/empty/sshd

chmod 744 /var/empty/sshd

service sshd restart

就可以解決上述的問題。

 

##個人必須補充:既然這問題報了許可權問題,SO 方向是對的

chown -R root.root /var/empty/sshd #這個沒有問題

chmod 777 /var/empty/sshd ,#但有網友為了圖方便,其實就是個錯誤

賦予777後的許可權是 drwxrrwxrwx ,比原來的目錄許可權(跟好的伺服器比較)是drwxr-xrwx,中間使用者組沒有寫許可權,所以如果你給了777許可權後,就無法啟動sshd服務,通過報錯資訊 not group or world-writable.也給了提示,當然網友的最後2步解決方式確實解決了此問題,但這裡提醒隨意的網友,給777許可權的時候還是要慎重。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/22907091/viewspace-749081/,如需轉載,請註明出處,否則將追究法律責任。

相關文章