Linuxで一時的に管理者(root)にスイッチする

宮崎智広 この記事の監修:宮崎智広(Linux実務・教育歴20年以上・受講者3,100名超)
「複数のメンバーがいる環境でrootパスワードを共有したくない。sudoで安全に管理者操作できないか?」

su コマンドでは管理者パスワードが必要ですが、sudo コマンドを使えば一般ユーザーのパスワードで一時的に管理者権限を行使できます。rootパスワードを共有せずに安全な権限管理が実現します。

この記事では、sudo の設定方法(visudo)と実際の使い方、セキュリティ上の注意点を解説します。

【この記事でわかること】

・sudo はrootパスワードを共有せずに管理者権限のコマンドを実行できる仕組み
・/etc/sudoers の編集には必ず visudo を使う(vi の直接編集は危険)
・パスワードキャッシュはデフォルト5分間有効
・NOPASSWD 設定は利便性が上がる反面、セキュリティリスクも高まるため慎重に


「このままじゃマズい」と感じていませんか?
参考書を開く気力もない、同年代に取り残される不安——
でも安心してください。プロのエンジニアはコマンドを暗記していません。
「現場で使える型」を効率よく使いこなしているだけです。
図解60P/登録10秒/解除も3秒 / 詳細はこちら

su と sudo の違い

su(switch user):rootパスワードを使ってrootシェルに切り替える。全員にrootパスワードを渡す必要がある
sudo:一般ユーザーのパスワードで、許可されたコマンドだけを管理者権限で実行する。rootパスワードを共有しなくて済む

事前準備:/etc/sudoers を visudo で編集する

sudo を使えるようにするには、/etc/sudoers に許可設定を追加します。直接 vi で編集すると構文エラー時にログインできなくなるリスクがあるため、必ず visudo を使ってください。

# root で visudo を実行 [root@server ~]# visudo # ユーザー pakira に sudo を許可する場合 pakira ALL=(ALL) ALL # グループ pakira 全員に sudo を許可する場合(% はグループを意味する) %pakira ALL=(ALL) ALL # パスワードなしで sudo を許可する場合(セキュリティリスクに注意) %pakira ALL=(ALL) NOPASSWD: ALL

sudo コマンドの基本的な使い方

# root しか読めないファイルを sudo で読む [pakira@server ~]$ tail /var/log/messages tail: '/var/log/messages' を読み込み用でオープンできません: 許可がありません [pakira@server ~]$ sudo tail /var/log/messages [sudo] password for pakira: # 自分(pakira)のパスワードを入力 Dec 19 03:14:24 server kernel: ...

sudo -s でrootシェルに入る

# rootシェルに一時的に切り替え [pakira@server ~]$ sudo -s [sudo] password for pakira: [root@server pakira]# # rootシェルに入れた # 作業終了後は exit で戻る [root@server pakira]# exit [pakira@server ~]$

実務Tips:sudoの実行履歴を確認する

sudo の実行は /var/log/secure(RHEL系)または /var/log/auth.log(Debian系)に記録されます。

# sudo の実行ログを確認(RHEL系) [root@server ~]# grep sudo /var/log/secure | tail -20 Jan 01 10:00:00 server sudo: pakira : TTY=pts/0 ; PWD=/home/pakira ; USER=root ; COMMAND=/usr/bin/tail /var/log/messages

本記事のまとめ

やりたいこと コマンド
sudo の設定ファイルを編集 visudo
管理者権限でコマンドを実行 sudo コマンド
rootシェルに切り替え sudo -s
sudo の実行ログを確認 grep sudo /var/log/secure
sudo の許可設定確認 sudo -l

Linuxの権限管理を体系的に学んで安全なサーバー運用を実現しませんか?

sudo の正しい設定と運用は、Linuxサーバーセキュリティの根幹です。rootパスワードの共有なく安全な運用を実現しましょう。
現場で通用する安全なLinuxサーバー構築の「型」を体系的に身につけたい方へ、『Linuxサーバー構築入門マニュアル(図解60P)』を完全無料でプレゼントしています。

「独学の時間がもったいない」「プロから直接、現場の技術を最短で学びたい」という本気の方には、2日で実務レベルのスキルが身につく【初心者向けハンズオンセミナー】も開催しています。

無料メルマガで学習を続ける

Linuxの実践スキルをメールで毎週お届け。
登録は1分、解除もいつでも可。

登録無料・いつでも解除できます

暗記不要・1時間後にはサーバーが動く

3,100名以上が実践した「型」を無料で公開中

プロのエンジニアはコマンドを暗記していません。
「現場で使える型」を効率よく使いこなしているだけです。
その「型」を図解60Pにまとめた入門マニュアルを、完全無料でプレゼントしています。

登録10秒/合わなければ解除3秒 / 詳細はこちら

Linux無料マニュアル(図解60P) 名前とメールで30秒登録
宮崎 智広

この記事を書いた人

宮崎 智広(みやざき ともひろ)

株式会社イーネットマーキュリー代表。現役のLinuxサーバー管理者として15年以上の実務経験を持ち、これまでに累計3,100名以上のエンジニアを指導してきたLinux教育のプロフェッショナル。「現場で本当に使える技術」を体系的に伝えることをモットーに、実践型のLinuxセミナーの開催や無料マニュアルの配布を通じてLinux人材の育成に取り組んでいる。

趣味は、キャンプにカメラ、トラウト釣り。好きな食べ物は、ラーメンにお酒。休肝日が作れない、酒量を減らせないのが悩み。最近、ドラマ「フライトエンジェル」を観て涙腺が崩壊しました。