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:1

fujiyan 2009年2月23日 10:02

環境がなくて試せていませんが、こればできれば、一気に悩みが解消されます!

Comment Form

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 コマンドを実行する方法

Profile

zaru

Name : zaru

Webプログラマ+Webデザイナで、Webディレクタやってます。Twitterやっているので、ぜひフォローしてやってくださいませ。Twitter - zaru。また、そのほかのプロフィールについては、iddy - zaruを見てください。

Search
Feeds
Others

Return to page top