[セキュリティ]


この日記のはてなブックマーク数 このエントリーを含むはてなブックマーク

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オプションをつければよい



広告