跳到主要內容

Ubuntu某些用戶無法通過SSH遠程登陸問題

· 閱讀需 2 分鍾

網上看到很多博客都是解決root用戶無法登陸的,也不知道是不是因為是虛擬主機自動配置好的原因,我的ubuntu直接可以root登陸。這裡也貼一下root用戶無法登陸的解決方案。

修改ssh配置文件:

vi /etc/ssh/sshd_config

找到PermitRootLogin yes,去掉注釋;或者把no改為yes;沒有則添加。

但是我的問題並不是這個,我的root用戶可以登陸。但我之前創建的一個新用戶newuser,通過puTTY登陸時提示:

error: server unexpectly closed network connection!

網上找了一些不多的解決方案(更多是解決root用戶不能登陸的),其中有一個:

修改/etc/ssh/sshd_config配置文件,配置<AllowUsers newuser root>。

很遺憾,失敗。

後來靈機一動,查看了/etc/passwd文件,對比發現newuser和root的最大區別:

root的用戶組是root,而newuser之前為了設置ftp的特殊訪問權限(不限制目錄)而設置成了ftp用戶組,然後為了增加權限給添加到了root組(其實好像沒有鬼用,還是修改sudoer給sudo權限來得有用),所以newuser的用戶組為,root,ftp。

鬼使神差(死馬當活馬)地,把newuser添加到了newuser用戶組,然後訪問,哈,竟然成了!

不過,好像每個用戶最多只能屬於兩個組,所以現在ftp用戶組被擠下去了,就只能把root組去掉而重新設置了ftp組。

另外,之前在/etc/ssh/sshd_config文件添加了行<AllowUsers newuser root>,注釋掉後發現並不影響(也對,不然之前沒有的時候root為什麼可以登陸),應該是ubuntu默認Allow all user了。


1/15/2018

後來才知道,【1】處所謂的把ftp擠下去了才是重點。並不是要用戶組和用戶名相同才能登陸,而是用戶組不能包含ftp。可能是為了限制ftp用戶的權限吧。

之所以知道這個是因為後來手賤把ftp用戶組添加上去了......然後......嗝。

取消了ftp用戶組,果然又可以了!

之前說了添加ftp用戶組是為了方便特殊權限的ftp訪問,其實我在vstpd.conf中配置了特殊訪問用戶列表(默認文件/etc/vsftpd.chroot_list),取消了ftp用戶組後並沒有任何影響(不知道和配置的那個東西有沒有關系)。