FileZillaを使用してアクセスするWebサーバー(Apache2)があります。
私のWebサーバーには、/ var / wwwにバインドしたdir / home / admin / wwwがあります。FTPでアクセスできます。これは完璧に機能します!
しかし、Webサーバーを再起動するたびに、何度もバインドする必要があります。これらのマップを常にバインドする必要があるとWebサーバーに言うことはできませんか?また、すべての権限を毎回リセットする必要がありますが、何が問題ですか?
FileZillaを使用してアクセスするWebサーバー(Apache2)があります。
私のWebサーバーには、/ var / wwwにバインドしたdir / home / admin / wwwがあります。FTPでアクセスできます。これは完璧に機能します!
しかし、Webサーバーを再起動するたびに、何度もバインドする必要があります。これらのマップを常にバインドする必要があるとWebサーバーに言うことはできませんか?また、すべての権限を毎回リセットする必要がありますが、何が問題ですか?
回答:
より良い、より安全なソリューション(インターネットが管理者のホームフォルダーにアクセスすることに不安を感じる!)は、/にwebrootフォルダーを作成することです。
ターミナルタイム!
cd /
sudo mkdir /webroot
sudo groupadd webdev
sudo usermod -a -G webdev yourusername
sudo chown www-data:webdev /webroot/
ここで、Apacheを、Apache構成の下部にある新しいドキュメントルート/ webrootにポイントします。これはここにあります:/etc/apache2/apache2.conf
sudo nano /etc/apache2/apache2.conf
保存にCTRL-O、慣れていない場合はCTRL-Xでnanoを終了します。
単純に置き換えるDocumentRoot /var/www/
と/webroot/
今すぐウェブファイルをウェブルートにコピーします。
sudo /etc/init.d/apache2 reload
これでApacheが再起動し、すべての構成がロードされているはずです。
これにより、ルートにwebrootというディレクトリが作成され、apache2が所有します。グループの所有者は、新しいグループwebdevであり、これにユーザーがメンバーとして追加されます(これにより、グループが置き換えられることはありません!)。これにより、FTPでファイルを編集できます。
これは、1つのWebサイトのApacheサーバー用の非常にシンプルなソリューションです。複数のサイトを実行する予定がある場合は、さらに作業が必要です(たとえば、webrootでサイトごとに個別のフォルダーを作成する)
これの利点は、誰かが脆弱性を見つけた場合、ホームフォルダーではなくwebrootフォルダーにロックされることです!また、これ以上ユーザーがサイトを変更できるようにする必要がある場合は、そのユーザーをwebdevグループに追加できます。sudo usermod -a -G theirusername webdev
お役に立てれば!
敬具