CentOS 6
Sponsored Link

制限付きシェルを使う - rbash
2011/07/11
 
特定のコマンドしか使えない制限付きユーザーを作成します。業務上、ある特定の操作は行わせたいが、 それ以外の行動は一切させたくない場合に有効です。
[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.
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
--- localhost ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2157ms
rtt min/avg/max/mdev = 0.008/0.020/0.045/0.017 ms    
# 実行できた
 
Tweet