[セキュリティ]
sudoを使えば特定のユーザ(グループ)に、そのユーザ権限では実行できないコマンドの実行権限を与えることができます。sudoの設定は/etc/sudoersにて行いますが、viで開くと危険なのでvisudoコマンドを使用します。/etc/sudoersをみると以下のような書式があるかと思います。
root ALL=(ALL) ALL
上記の例では、rootユーザがすべてのホストALLにおいて、すべてのユーザ権限にて(ALL)、すべてのコマンドを実行できることを表します。
[例]
ユーザusernameはホストlocalhostにおいてすべてのユーザ権限で以下のコマンドを実行できる。
※コマンドはフルパスで記述すること
username localhost=(ALL) /usr/sbin/visudo,/usr/sbin/service
※パスワードなしにsudoを実行できるようにするには以下のようにすればよい
username server.ksknet.net=root NOPASSWD:/usr/sbin/visudo,/usr/sbin/service
グループに許可する場合は%グループ名とする
[例]
%groupname server.ksknet.net=(ALL) NOPASSWD:/usr/sbin/visudo,/usr/sbin/service
sudoを実行した時のログを取るには以下のようにしてログファイル名を記入します。
Defaults logfile=/var/log/sudolog
sudo -l
Password: (パスワードを入力)
User username may run the following commands on this host:
(ALL) /usr/sbin/visudo
(ALL) /usr/sbin/service
一回パスワードが受け付けられると、一定時間の間は再度パスワードを入れずにsudoを実行できます。
パスワード入力を標準入力からうけつけるには-Sオプションをつければよい
広告
