FreeBSD mount_nullfs/nullfs のため、操作は許可されません。

FreeBSD mount_nullfs/nullfs のため、操作は許可されません。

FreeBSDをローカルWebサーバーとして使用しており、SFTPを使用してプロジェクトファイルにアクセスしたいと思います。ユーザーを作成しましたが、そのユーザーが自分のホームディレクトリに移動できないようにしたいと思います。

ユーザーシェル:/usr/sbin/nologin

ユーザーのホームページ:/usr/home/username

ユーザーとしてSFTP接続を確立できますが、操作のためにプロジェクトファイルにアクセスできるようにする必要があります。

プロジェクトファイルは次の場所にあります。/usr/local/www/nginx/projectname

関連する質問に対する回答に基づいて、以下を試しました。

mount_nullfs /usr/local/www/nginx/projectname /usr/home/username

しかし、これは」許可されていない操作」。

しばらく検索してみましたが、なぜこれがうまくいかないのかわかりません。どうすればいいですか?

編集する:

  • ルートとしてインストールしてみてください
  • ユーザーホームをプロジェクトディレクトリにルートできました。
  • このサーバーはfreenasの刑務所ですが、両方のディレクトリが同じサーバー上にあることに注意する必要があります。

答え1

sshd_configまず、次のものがあるとします。

Port 22

PermitRootLogin no
ChallengeResponseAuthentication no
UsePAM no

Subsystem       sftp    internal-sftp

Match Group sftp
    ChrootDirectory %h
    ForceCommand internal-sftp
    AllowTcpForwarding no
    X11Forwarding no

次に、一般ユーザーとして nullfs マウントを実行するとします。一般ユーザーは通常ファイルシステムをマウントできません。ルートで試してみると私に効果的です。

ルート(sudoまたは)でsuテストしてパスが正しいことを確認してください。それから/etc/fstab

/usr/local/www/nginx/projectname       /usr/home/username     nullfs    rw     0      0

それだけで十分です。

この場合、一般ユーザーが何でもインストールできるようにすることは意味がありません。ただし、必要に応じてこれを設定してvfs.usermount=1ルールを/etc/sysctl.conf追加するだけです。devfs/dev/

最後に、nullfsを使用している場合は、ChrootDirectoryユーザーのホームページを直接設定できます/usr/local/www/nginx/projectname。 nullfsを使用した間接アドレッシングは、追加のセキュリティ層を提供できます。しかし、あなたがあなたのものを信じるなら、sshd_configそれで十分です。

答え2

刑務所の内部にnullfがマウントされるように、刑務所の構成を変更する必要があります。これは通常、セキュリティ上の理由から刑務所では許可されていません。私はそれに反対することをお勧めします。

ホストシステム(/etc/fstab)でnullfsマウントを設定できますが、FreeNASでは設定を保存する方法のため、これはより困難です。

関連情報