そのオプションなしで単一のフォルダをマウントすることは可能ですかnoexec
?正しく実行するには、サーバーのユーザーホームフォルダにあるWebアプリケーションをインストールする必要がある状況があります。noexec
ただし、すべてのユーザーの制限を削除するのではなく、そのユーザーの制限を削除したいだけです。
fstabは次のようになります。
# /dev/sda3 /home ext3 defaults 0 2
UUID=cae3a489-22c1-43d8-aaf1-27306b32ebb0 /home ext3 defaults,noexec 0 2
したがって、noexec
ここから削除すると、すべてのユーザーが実行可能ファイルを実行でき、ユーザーだけが実行可能ファイルを実行できるようにするソリューションが必要ですuser
。
答え1
あなたが欲しいという意味です。削除するnoexec
パーティション全体からディレクトリを削除せずに/ homeのディレクトリを制限しますか?その場合は、インストールディレクトリをバインドしてデフォルトのオプションで再インストールすると効果がある可能性があります。しかし、自分でテストしてみてください。以下は、EXT4を使用して動作しているように見える汚いハッキングです。ただし、webappディレクトリを自分の一番上にバインドマウントできる場合は、よりきれいで安全で優れています。 fstabでマウントが完了したら、シェルスクリプトで実行する必要があります。
mount --bind /home/user/webapp /home/user/webapp
mount /home/user/webapp -oremount,defaults
答え2
Webアプリケーションは以下で実行しないでください。正しく実行するには/home
どうすればよいですか?noexec
そこで何も実行する必要がない場合は、そうしようとしないでください。この場合、フラグはまったく違いはありません。
たとえば、SELinuxタグを使用して目的の制限を適用できますが、簡単ではありません。または、ファイルACLと権限(参照)を使用して、そのファイルを実行できる人を制御できacl(7)
ますsetfacl(1)
。 「他人」がその中のファイルにまったくアクセスする必要がない場合は、ディレクトリの権限を使用してアクセスできます。