制限付きシェルを使う - rbash2011/05/09 |
特定のコマンドしか使えない制限付きユーザーを作成します。業務上、ある特定の操作は行わせたいが、
それ以外の行動は一切させたくない場合に有効です。
|
|
[1] | bash のシンボリックリンクを rbash という名前で作成します。 |
[root@dlp ~]# ln -s /bin/bash /opt/rbash
|
[2] | rbash がデフォルトシェルのテストユーザーを作成してみます。 例として使えるコマンドは ping のみにしてみます。 |
[root@dlp ~]# useradd cern -s /opt/rbash [root@dlp ~]# passwd cern [root@dlp ~]# mkdir /home/cern/bin [root@dlp ~]# ln -s /bin/ping /home/cern/bin/ping [root@dlp ~]# chown root. /home/cern/.bash_profile [root@dlp ~]# chmod 755 /home/cern/.bash_profile
[root@dlp ~]#
vi /home/cern/.bash_profile # PATHを以下のように変更する PATH=$HOME/bin |
[3] | テストユーザーでログインして試してみます。 |
[cern@dlp ~]$ -rbash: cd: restricted # 拒否された [cern@dlp ~]$ -rbash: ls: command not found # コマンドなし [cern@dlp ~]$ ping localhost
PING localhost (127.0.0.1) 56(84) bytes of data.
--- localhost ping statistics ---64 bytes from localhost (127.0.0.1): icmp_seq=1 ttl=64 time=0.045 ms 64 bytes from localhost (127.0.0.1): icmp_seq=2 ttl=64 time=0.008 ms 64 bytes from localhost (127.0.0.1): icmp_seq=3 ttl=64 time=0.008 ms 3 packets transmitted, 3 received, 0% packet loss, time 2157ms rtt min/avg/max/mdev = 0.008/0.020/0.045/0.017 ms # 実行できた
|