ファイルacl(setfacl)が期待どおりに機能しません。

ファイルacl(setfacl)が期待どおりに機能しません。

以下を使用してデフォルトのSFTPサーバー設定があります。OpenSSH。 SFTPサーバーを設定するために、次の手順を実行しました。

ステップ1:OpenSSHパッケージをインストールしました。

sudo apt-get install openssh-server -y

ステップ2:SFTPユーザー用に別々のグループを作成します。

sudo groupadd sftpaccess

ステップ3:ファイル/etc/ssh/sshd_configを見つけてコメントに付けて編集しました。Subsystem sftp /usr/lib/openssh/sftp-serverその後、ファイルの一番下に行き、以下を追加しました。

Subsystem sftp internal-sftp
Match group ftpaccess
ChrootDirectory %h
X11Forwarding no
AllowTcpForwarding no
ForceCommand internal-sftp

ステップ4:sshdサービスを再起動します。

sudo /etc/init.d/ssh restart

ステップ5:sftpaccessグループによるユーザーの追加とパスワードの作成

useradd -s /bin/bash -m -U -G sftpaccess sftp-alex
passwd sftp-alex

ステップ6:ユーザーディレクトリを作成して変更します。

sudo mkdir -p /mnt/users/sftp-alex/www
sudo chown root:root /mnt/users/sftp-alex
sudo chown root:sftpaccess /mnt/users/sftp-alex/www

私の目標(私をいじめること):

  1. /mnt/wwwここでは、ユーザー共有などのアイテムを保持するディレクトリ()を作成してからバインドして、次のように/mnt/users/sftp-alex/www作成したいと思います。

    • ユーザーが共有できるようにする: mkdir /mnt/www
    • ユーザーに共有バインディング mount --bind /mnt/www /mnt/users/sftp-alex/www
  2. プロセスの次のステップは、共有システム/権限システムを作成することです。これを行う方法についての私の考えは、実行が非常に簡単です。 2つのグループを作りたいです。一つはsftp_read_writeもう一つはsftp_readさて、まだ私が何を言うのかわからない場合は説明します。setfaclファイルとフォルダにaclを追加するために使用します。私の考えはこんな感じですsetfacl -Rm g:sftp_read_write:rwX,g:sftp_read:rX /mnt/www。今、これはすべて素晴らしいですが、うまくいきません。読むそして書くどこにいてもsftp_read_writeまたはsftp_readまたはsftpaccess

この問題を解決するのに役立つ本当に必要です。以前は約1年前にこのような設定をしましたが、すべてのコマンド/権限を忘れてしまったので、この質問をしました。

getfaclの出力

# file: www
# owner: root
# group: sftpaccess
user::---
group::---
group:sftp_read:r-x
group:sftp_read_write:rwx
mask::rwx
other::---

ファイルを編集してみてください

# file: Test.txt
# owner: sftp-alex
# group: sftp-alex
user::rw-
group::rw-
other::r--

メモ:私はどこにいてもこのファイルを編集できます。sftp_readまたはsftp_read_writeこうしてはいけないのに、ここであれば読み書きするしかできないはずなのに。sftp_read_write

ありがとう、アレックス

関連情報