プロクラ(クラウドAIロボット、詳しい役)SabaKore

セキュリティ

【セキュリティ】権限は最小限に:rootで作業し続けてはいけない理由

2026年8月17日

レン(新米インフラエンジニア)・疲れた

レン

毎回sudoって打つの面倒だから、ずっとrootで作業してるんだけど…ダメ?
ウィルスン(セキュリティの番人)

ウィルスン

…フフフ、ぜひそのまま続けてほしいものだ。rootは何でもできる権限。もしキミが動かしているアプリに1つでも穴があれば、ワタシはその穴からrootの力を丸ごと手に入れられる。サーバーごと乗っ取り放題なのだよ。
レン(新米インフラエンジニア)・調べ中

レン

ひぇ…!じゃあ一般ユーザーだとどうなるの?
プロクラ(クラウドAIロボット、詳しい役)・教える

プロクラ

被害を『その範囲だけ』に閉じ込められるんだ。これがセキュリティの基本原則、最小権限の原則。普段は権限の小さい一般ユーザーで作業して、管理者権限が必要なときだけsudoで一時的に借りる。そうすれば、万一侵入されても攻撃者ができることが限られる。

守りは「重ねる」のが基本

攻撃

ファイアウォール

不要な入口を塞ぐ

SSH鍵認証

総当たりを無効化

OS更新

既知の穴を埋める

サーバー

1つ破られても次の層で止まる。どれか1つでは不十分

アプリを動かすユーザーも分ける

プロクラ(クラウドAIロボット、詳しい役)・教える

プロクラ

Webサーバーやアプリも、専用の権限の低いユーザーで動かすのが定石だよ。nginxならwww-dataユーザー、といった具合にね。アプリがrootで動いていると、アプリの脆弱性がそのままサーバー全体の乗っ取りに直結してしまう。

ファイル権限の基本

  • 設定ファイルや鍵ファイルは chmod 600(本人だけ読み書き可)
  • SSHの ~/.ssh ディレクトリは chmod 700
  • Webで公開するファイルに 777 は絶対に使わない(誰でも書き換え可能になる)
  • 「とりあえず777」で権限エラーを回避するのは、穴を開けているのと同じ
ウィルスン(セキュリティの番人)

ウィルスン

その『とりあえず777』…ワタシが探し回っているものの一つだ。書き込み可能なディレクトリを見つければ、そこに悪意あるファイルを置いて実行させられる。面倒でも、必要な権限だけを与えるのだ。

サーバーの外にも同じ考え方が要る

プロクラ(クラウドAIロボット、詳しい役)・教える

プロクラ

最小権限は、Linuxのユーザーだけの話ではないよ。外部サービスの鍵やアカウントにも、そのまま当てはまる。
  • APIキーは、必要な操作だけができるものを発行する
  • 読み取りだけで足りるなら、書き込みの権限を付けない
  • データベースの接続ユーザーに、テーブルを消す権限を与えない
  • デプロイ用の鍵は、そのリポジトリだけに使えるものにする
  • 共同作業者には、必要な範囲だけを渡す
プロクラ(クラウドAIロボット、詳しい役)・分析中

プロクラ

「全部できる鍵を1つ作って、あちこちで使い回す」のが一番危ない。漏れたときに失うものが最大になるうえ、どこから漏れたのかも分からなくなる。

権限を見直すきっかけを作る

  • 一時的に広げた権限は、その日のうちに戻す
  • 作業が終わったアカウントと鍵は、そのタイミングで消す
  • 年に数回、誰が何にアクセスできるかを一覧で確認する
  • 「念のため」で付けた権限は、たいてい不要のまま残っている
レン(新米インフラエンジニア)・できた

レン

サーバーの中だけじゃなくて、鍵やアカウントにも同じ考え方なんだね。

あわせて読みたい

→ コラム記事をすべて見る