LoginSignup
0
0

More than 1 year has passed since last update.

リモートサーバーでのシェルをrbashに変更してJenkinsからSSHしたときに実行できるコマンドを制限する

Posted at

JenkinsからSSHしてリモートサーバーでコマンド実行したりしているのですが、ユーザー権限で使えるコマンドは自由に実行できてしまうので、一応安全のために利用できるコマンド制限しておこうと思います。

Linuxでコマンドを制限する場合は rbash が使えるようです。

bash にシンボリックリンクをはって rbash をシェルとして使えるようにする。

# ln -s /bin/bash /bin/rbash
# echo /bin/rbash >> /etc/shells

Jenkinsユーザーのシェルを rbash に変更。

# usermod -s /bin/rbash jenkins

利用できるコマンドはホームディレクトリの bin ディレクトリのみのコマンドに制限。

# echo "PATH=\$HOME/bin" > /home/jenkins/.bash_profile
# echo "PATH=\$HOME/bin" > /home/jenkins/.bashrc

利用できるコマンドを設定。(例えば git だけにする)

# mkdir /home/jenkins/bin
# ln -s /bin/git /home/jenkins/bin/

ユーザー自身で設定を変えられないようにパーミッション変更。

# chown root:root /home/jenkins/.bash_profile
# chown root:root /home/jenkins/.bashrc
# chown -R root:root /home/jenkins/bin

設定は以上です。

Jenkinsから余計なコマンドが実行できないことを確認しておきましょう。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0