Home > Linux | プログラムミング その他 > パスワード入力なしで sudo コマンドを実行する方法

パスワード入力なしで sudo コマンドを実行する方法

以下の方法は、サーバの運用方法とセキュリティを考慮して参考程度に。

一般ユーザが root(または別のユーザ) の権限を使ってコマンドを実行することができる sudo コマンドは、通常その対象ユーザのパスワードの入力を求められるが、PHPやPerlスクリプトなどで sudo を使いたい場合などはパスワードを知っていても入力できず実行ができない(対話式のため)。

system("sudo hogehoge");

この sudo コマンドのパスワード入力を解除する方法は、/etc/sudoers を編集するだけ。

/etc/sudoers

ただしこのファイルを編集するには当然 root 権限が必要なので、su で root になっておく必要がある(もしくは sudo )。

#vi /etc/sudoers

root ALL=(ALL) ALL
zaru ALL=(ALL) NOPASSWD:ALL #zaruユーザはパスワード入力を必要としない
piyo ALL=(ALL) PASSWD:ALL #piyoユーザはパスワード必須

通常は、パスワード入力必須なので PASSWD とは記述しなくてもOK。パスワード入力を解除したいユーザにのみNOPASSWDを設定しよう。

記述ルール

この権限の記述ルールは単純。

  • ユーザ ホスト = (権限) コマンド

ALLとすれば、全てのホスト・コマンド。/sbin/ とすれば /sbin/以下のコマンド。/sbin/shutdown とすれば shutdown コマンドを指定することができる。


Comments:0

コメントフォーム:コメントはお気軽にご利用くださいませ。

画像の中に見える文字を入力してください。

Trackbacks:0

TrackBack URL for this entry
http://blog.tofu-kun.org/mt-tb.cgi/318
Listed below are links to weblogs that reference
パスワード入力なしで sudo コマンドを実行する方法 from Webプログラマー+WebデザイナーなZARU日記

Home > Linux | プログラムミング その他 > パスワード入力なしで sudo コマンドを実行する方法

ブログパーツ
Search
Feeds

Return to top