noexecを使用せずにフォルダをマウントする

noexecを使用せずにフォルダをマウントする

そのオプションなしで単一のフォルダをマウントすることは可能ですか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)。 「他人」がその中のファイルにまったくアクセスする必要がない場合は、ディレクトリの権限を使用してアクセスできます。

関連情報