通常一台主機上面不能只有單一一個使用者跟服務
如果今天我們想開一個帳號
讓他可以使用 FTP 服務
卻又不想他登入到主機上面來
我們可以這樣做
首先先建立一個帳號
$ sudo adduser test
然後修改 /etc/passwd 這檔案
$ sudo vim /etc/passwd
把
test:x:1020:1020:test,8708,1234567,1234567:/home/test:/bin/bash
改成
test:x:1020:1020:test,8708,1234567,1234567:/home/test:/sbin/nologin
然後檢查檢查一下 /sbin/nologin 有沒有列在 /etc/shells 裡面
$ sudo vim /etc/shells
如果沒有在裡面的話就把它加進去
這樣就完成囉!
設定shell為/sbin/nologin 卻失效
禁止使用者登入






#usermod -s /sbin/nologin ‘username’
也可以更改使用者不能登入唷!!
另外
#usermod -d /var/ftp/test ‘username’
這樣該使用者的家目錄就變成 ‘/var/ftp/test’了
如果 vsftpd 裡的 root_local_user = Yes 那這樣該使用者
登入 ftp 就只能在 /var/ftp/test 閒晃了XDDDD
多謝 forevertwo 的補充
這篇文章跟你的作法都是事後修改
其實可以再新增使用者的時候
加上
-s /sbin/nologin就可以了