グループユーザーのホームフォルダを制限してターミナルアクセスを削除する方法を知っていますが、複数のグループで機能させることはできないようです。
2つのグループがあります。
groupA
groupB
私のものsshd_config
Match Group groupa
ChrootDirectory %h
ForceCommand internal-sftp
AllowTcpForwarding no
PermitTunnel no
X11Forwarding no
Match Group groupb
ChrootDirectory %h
ForceCommand internal-sftp
AllowTcpForwarding no
PermitTunnel no
X11Forwarding no
GroupaのユーザーとSFTPを介してサーバーにアクセスするためにCyberduckを使用しようとすると正常に動作します。ただし、groupbのユーザーはアクセスできません。実際に仕事を始めることができませんでしたMatch User userb
。
/home/userb(デフォルトグループはgroupb)の権限:drwx------
オペレーティングシステムのバージョン:Arch Linux
4.4.3-1-ARCH #1 SMP PREEMPT Fri Feb 26 15:09:29 CET 2016 x86_64 GNU/Linux
OpenSSHバージョン
OpenSSH_7.2p1, OpenSSL 1.0.2g 1 Mar 2016
答え1
将来の読者にとって、答えは2つあります。
ユーザーフォルダの権限は755以上でなければなりません(「他の人」がディレクトリを読み込んで実行/入力できるようにするには、実際にはグループ権限は関係ありません)。
drwxr-xr-x
財産権の所有権は不規則です。これらのフォルダ(私の場合は、sshd_config:の変数である/ home / useraフォルダとhome / userbフォルダ)%h
は、ユーザグループが所有する必要があります。所有権root
root
4 drwxr-xr-x 5 root root 4096 27. Okt 15:07 usera/
4 drwxr-xr-x 2 root root 4096 13. Okt 13:35 userb/
これはchroot環境のシンボリックリンクを介してhavicを中断します。これまでは、ユーザーディレクトリのサブフォルダを作成し、それをそのユーザー(rootではない)に所有させることで、バインディングが機能するようにすることができました。次に、/etc/fstab (chroot 環境外の別のディレクトリ) にバインディングを作成します。
例えば
/media/5TB/My-Share /home/usera/My-Share none defaults,bind 0 0
そして/home/usera/My-Share
4 drwxr-s--- 3 usera groupa 4096 5. Mär 15:59 My-Share/