[Apache]/home/user以下にコンテンツを配置した際の403 Forbiddenを解決した話

2020年4月2日

TL;DR

  • /home/userフォルダのパーミッションを700から755に変更しました。
  • 755ならssh接続もできました。(777にしたら接続できなくなるので注意です。)

詳細

やりたかったこと

  • Apacheを入れたCentOSのサーバの/home/user/somedirにコンテンツを配置し、ブラウザで表示する
  • /home/userにはSSH公開鍵でログインする

やったこと

httpd.confの編集

$ sudo vi /etc/httpd/conf/httpd.conf

DocumentRoot "/home/user/somedir"
<Directory "/home/user/somedir">
    Options Indexes FollowSymlinks
    AllowOverride None
    Require all granted
</Directory>
  • 上記設定の他にも、AllowOverride Allにしてみたり…

対象ディレクトリの権限確認

$ chmod 755 /home/user/somedir

解消されず…

上記試した限りでは解消されませんでした。

/home/userディレクトリの権限を変更で解決

/home/userディレクトリの権限を755に変更するとあっさり解決しました。

$ chmod 755 /home/user

まとめ

今回もあるあるミスでした。
/home/userディレクトリの権限をゆるくするのは、SSH接続ができなくなるリスクがあると、よく知らずに避けていたのが良くなかったです。
リスクは適切に把握して、実際どうなのか調べることが非常に大事だと学びました…

参考