FTP接続する際のユーザーとグループ設定
共用のレンタルサーバーを使用する時には気にならないが、VPSや専用サーバーを使う際にFTPユーザーをどう用意、使用するのかイマイチよく分かっていなかった。そのあたりの対処法をメモ。
今までは
今まではapacheユーザーにパスワードを設定して、そのままFTPユーザーとして使用するという方法で乗り切っていた。ただ、他社の専用サーバーでFTPアカウントを貰ったりすると当然、apacheユーザーではなかった。また、パーミッションやらグループあたりの設定が必要なんだろうけど、その辺があやふやだった。
ユーザーの作成とグループ設定
別途ユーザーを作ってapacheグループを入れるのが一般的っぽい。SSH接続して以下で対応する。
#ユーザー作成 useradd test_user #パスワードをかける passwd test_user #ユーザーをapacheグループに入れる usermod -g apache test_user
ファイルをアップロードできない
FTP接続して適当なディレクトリを開き、テストファイルをアップロードしようとしても、「553 Could not create file.」のエラー表示が出て、アップロードできなかった。パーミッションを見ると「755」になっているのでグループ部分の書き込み権限がないのが原因だと思われる。SSH接続して対象ディレクトリに対して書き込み権限を与えた。
chmod 775 /ver/www/html/hoge
アップロード後に気になる点
アップロードが完了し、ファイル情報を確認したところユーザーとグループは当然「test_user」になっていた。パーミッションは「604」だった。ブラウザから接続すると正常に表示されたが、その際にどのユーザーで該当のファイルにアクセスしているのかが気になった。調べたところapacheユーザーでファイルにアクセスしている模様。該当ファイルのパーミッションは「604」なので、その他にあたる「4」の部分が適用されるよう。テストでパーミッションを「770」にすると閲覧できなくなり、「774」にすると閲覧できた。
逆にapacheユーザーでファイルを作成した場合は、所有者自身に読み込み権限がいる為「4xx」にする必要があるみたい。
その他
しばらくこのユーザーを使ってみて、問題なければ今度はディレクトリ制限のあるユーザーを作ってみたいので宿題とする。
参考
http://www.atmarkit.co.jp/ait/articles/1612/14/news022.html
https://norm-nois.com/blog/archives/2649
http://yinm.hatenadiary.jp/entry/2017/01/22/200537
関連記事
-
-
CentOS6で公開鍵認証設定
本番稼動しているVPSサーバーでSSHの接続ログをかなり久しぶりに見ると、不正ロ ...
-
-
yumで既にインストールされているか確認する
新しくインストールする前に既に入っているか どうか確認したかった。 yum li ...
-
-
MySQL/Apacheの再起動
忘れないようにメモ。 ■MySQL service mysqld restart ...
-
-
Class ‘DOMDocument’ not foundエラーの対処
PHPでphpQueryというライブラリを利用しようとすると「Fatal err ...
-
-
サーバー監視レポートメールを受信する(Logwatch)
サーバーの各種ログを整形してメールで送ってくれる Logwatchというものがあ ...
-
-
CentOS6系から7系に(KAGOYAからIndigoに)移行した際のメモ
CentOS6系から7系に、さらにKAGOYAのVPSからWebARENA In ...
-
-
WordPressでメモリを節約しつつ高速化する設定方法
メモリ1GのVPSを借りてWordpress以外にも、ちょいちょいものを置いてい ...
-
-
久しぶりにVPSでサーバー構築して詰まった点
DTIのVPSで久しぶりに初期化→再構築する機会があった。その際に詰まった部分の ...
-
-
サーバ内でバージョン確認方法のまとめ
OSやApacheのバージョンを確認する際にいつもググっていたので、調べやすいよ ...
-
-
suとsu -の違い
スーパーユーザーになる際にsuだけ打っていたけど su -の方がいろいろ出来るか ...