
Samba ファイル サーバーを稼働させていますが、異なる権限を持つ複数のユーザー アカウントを作成する方法を知りたいです。たとえば、現時点では smbusr というユーザーがいますが、共有に ssh すると、読み取り、書き込み、実行、さらには samba ディレクトリから移動して実際のコンピューターで操作を行うことができます。これは、IP を公開して友人や家族にサーバーを使用させたいのですが、何でもできるようにはしたくないので、これはよくありません。
Samba 共有ディレクトリ (およびすべてのサブディレクトリ) でユーザーをロックしたいと思います。最終的には、(smbusr_R、smbusr_RW、smbguest_R、smbguest_RW) などの複数のプロファイルが必要になります。
これに関連してもう 1 つ質問があります。他の Unix マシンから接続するには SSH が最適な方法でしょうか? VPN はどうでしょうか? または、次のようにマウントするだけでもよいでしょう。
mount -t ext3 -o user=username //ipaddr/share /mnt/mountpoint
上記のマウント コマンドは VPN と同じものですか? 本当に混乱しています。
皆さん、助けてくれてありがとう。何かファイルを見たい場合や、さらに情報が必要な場合はお知らせください。
編集: これが私の samba 共有定義です:
[SAMBA]
path = /samba
browseable = yes
guest ok = no
read list = smbusr_RO
write list = smbusr
編集2: smb.conf ファイル全体は次のとおりです:
答え1
はい、Samba は現在 ACL をサポートできます。グローバル セクションに数行記述し、共有ごとに許可および拒否される ACL のリストを指定します。ただし、ext ファイルシステムはデフォルトで ACL を実行しないため、ACL をサポートするには、基盤となるファイルシステムのアクセス許可にいくらかの調整が必要になる場合があります。
チュートリアルはこちらです:http://aisalen.wordpress.com/2007/08/10/acls-on-samba/ より
SMB.conf ファイルの一般的なリファレンス:http://www.samba.org/samba/docs/man/manpages-3/smb.conf.5.html
編集: 共有構成を次のように変更してみてください。OS グループの前には '@' が必要であり、書き込みリストは読み取り権限を意味しないことに注意してください。そのため、両方のグループを読み取りリストに追加してください。
これらをグローバルに追加します:
invalid users = root
valid users = @smbusers, @smbusers_RO
create mask = 02775
directory mask = 02770
[SAMBA]
comment = Debian File Server With Read Write
invalid users=nobody,nobody
valid users=@smbusr,@smbusr_RO
path = /samba
browseable = yes
guest ok = no
read list = @smbusr,@smbusr_RO
write list = @smbusr
writeable=yes
また、設定ファイルの整合性を確認するには、「sudo testparm -s」を実行します。
ファイルシステムの権限に関しては、chown -R を実行して、ファイルの所有者を 'root:smbusers' に設定できます。これにより、グループの権限で書き込み権限を制御し、その他の権限で読み取り権限を制御できます (smb は読み取り権限が 'smbusers_RO' にのみ付与されるようにします)。次に、共有に作成されたすべての新しいフォルダーが :smbusers によって所有され、すべての smbusers がそれらにアクセスできるように、SetGID を使用することをお勧めします。
chown -R root:smbusers /samba
chmod -R 2775 /samba