運用のためにログインできないユーザを作成する場合ありますよね。
メールユーザとか、アプリケーション実行ユーザとか、

ログインできないユーザを作成する場合は、useradd コマンドでオプション -s でログインシェルを/sbin/nologin に変更し、ユーザを作成します。

# useradd -s /sbin/nologin <ユーザ名>

 

また、既に存在しているユーザをログイン不可にする場合は、usermod コマンドでログインシェルシェルを/sbin/nologin に変更します。

# usermod -s /sbin/nologin <ユーザ名>

 

念のため、ログインシェルが無事変更されているかを確認してみましょう。
現在のログインシェルは、/etc/passwd に記載されています。

# cat /etc/passwd | grep hoge
ユーザ名:x:88:88::/home/ユーザ名:/sbin/nologin

/sbin/nologin が記載されていればログインできないユーザです。

 

なお、ログイン不可のユーザを、ログイン可能にするにはログインシェルを/bin/bash に戻すことでログイン可能となります。

# usermod -s /bin/bash <ユーザ名>

 

[対象]
CentOS 5.x
CentOS 6.x