« 日経クリックにインタビュー記事が載りました | メイン | 雨が降ると電波が入らない »
2007年02月10日
SSH ログインさせないアカウントを作る
POP3 での使用するユーザアカウントがあるので、そのアカウントの SSH ログインを不可にしてみた。
$ usermod -s /bin/false user
ログインシェルに /bin/false を与えるわけですが、サーバの /etc/passwd を見ると /sbin/nologin の方が一般的な気がする。ネットで調べると /bin/false の方が多いのだけど。
$ su - user
をしてみたときの挙動が異なるみたい。
/bin/false
エラーメッセージを表示せず、ユーザのスイッチができない。
/sbin/nologin
This account is currently not available.
とエラーメッセージを表示し、ユーザのスイッチができない。
/etc/shells に記載されているかどうかの違いがあるらしい。記載されていないと FTP でユーザと利用できないみたい。でも、エラーメッセージの有無は関係ないみたい。
ま。サーバの長いものに巻かれろということで、
$ usermod -s /sbin/nologin user
と変更しました。エラーメッセージが出るほうがありがたいし。
CentOS 4 での挙動です。たとえ /sbin/nologin を指定していても、ログイン時に、ユーザがログインシェルを変更する方法があった気がするのだけど、どうやるのだろう?
【関連情報】
・ログイン不可のユーザーアカウントを作成するには
http://www.atmarkit.co.jp/flinux/rensai/linuxtips/533cantloginuser.html
・/sbin/nologin と /bin/false どちらを使うのがスマート?
http://blog.so-net.ne.jp/nekohat/2006-04-04
2007年02月10日 20:09 | Technology
トラックバック
コメント
ログインシェルの変更はchshコマンドでできるのでは?
投稿者 Kazubu : 2007年02月22日 22:10
すいません、見当違いのコメントをしてしまいました。失礼します。
投稿者 Kazubu : 2007年02月22日 22:14