1
CentOS 7-VSFTPDを介して作成されたディレクトリがSELinuxコンテキストを継承しない
当社にはCentOS 7を搭載したウェブサーバーがあり、お客様はFTP(vsftpd)を介してウェブサイトを管理しています。SELinuxは強制モードです。 問題は、VSFTPDを介して作成/アップロードされたデータが適切なSELinuxコンテキストを継承しないことです。説明させてください。 たとえば、WordPressサイトの場合、サーバーにはそのままの状態で、を使用して表示できるいくつかのルールが既にsemanage fcontext -l |grep '/var/www'あります。 /var/www/html(/.*)?/uploads(/.*)? all files system_u:object_r:httpd_sys_rw_content_t:s0 /var/www/html(/.*)?/wp-content(/.*)? all files system_u:object_r:httpd_sys_rw_content_t:s0 したがって、WordPressサイトをコピーするときに、別のサーバーから/var/www/html/SSHでにあるディレクトリに、フォルダーwp-content/とwp-content/uploads/適切なhttpd_sys_rw_content_tセキュリティコンテキストがあるとしましょう。ただし、これらのフォルダーがFTPを介して作成される場合、それらが取得するコンテキストはhttpd_sys_content_t(rwなし)です。これは、顧客がサーバーにアップロードするサイトは、apacheユーザー/グループに書き込み権限を与えても、それらのディレクトリに書き込むことができないため、WordPress管理者が機能しないことを意味します。そのため、サイトをアップロードするときに、これを修正するためにサポートをリクエストする必要があります。これは関係者全員にとって時間の無駄です。 お客様が自分のサイトをhttpdocsにアップロードしたとします。SSHを使用しmv httpdocs/ httpdocs.2/ && cp -pr httpdocs.2/ httpdocs/ && rm httpdocs.2/ -frて問題が解決した場合、データに問題はありません。 またrestorecon -Rv httpdocs/、問題を修正することもできます。 つまり、質問は、VSFTPDを介して作成/アップロードされたディレクトリに、SSHを介してディレクトリが作成/アップロードされたときに継承されるように、適切なSELinuxコンテキストを継承させるにはどうすればよいですか?