web-dev-qa-db-ja.com

samba-別のユーザーのホームディレクトリで共有するとアクセス許可が拒否される

私のマシンには2人のユーザーequahhosterがいます。

test1にsamba共有/home/equahを作成しました。これはユーザーequahから問題なくアクセスできます。

また、test2に共有/smbtestを作成し、所有権をユーザーequahに変更しました。これには、equahからもアクセスできます。

しかし、共有test3/home/hoster/sharetestに作成して接続しようとすると、nautilusはFailed to mount Windows share: Permission deniedでプロンプトを表示します。これが機能したいものです。

ls -lは、記述されたディレクトリに関する次の詳細を示します。

drwx------ 14 equah equah 4096 Sep  8 20:09 /home/equah
drwxr-xr-x 2 equah equah 4096 Sep  8 20:33 /smbtest
drwxrwxrwx 3 equah equah 4096 Sep  8 20:44 /home/hoster/sharetest
drwx------ 19 hoster hoster 4096 Sep  8 20:20 /home/hoster

また、アクセスコントロールシステムがhosterホームディレクトリに権限を適用していることも確認しました。これを削除して、これがエラーかどうかを確認しましたが、成功しませんでした。

現在、samba 4.8.5-1を使用してArch Linuxの新規インストールを使用しています。

私のsamba構成(/etc/samba/smb.conf)には以下が含まれます:

[global]
   workgroup = EQGROUP
   server string = eq-Host samba server
   server role = standalone server
   log file = /var/log/samba/%m.log
   max log size = 50
   dns proxy = no 

[test1]
   comment = test
   path = /home/equah
   valid users = equah

[test2]
   comment = test
   path = /smbtest
   valid users = equah

[test3] # <== Not Working ?
   comment = test
   path = /home/hoster/sharetest
   valid users = equah

難しいのは、一部の権限設定では、ログインしているsambaユーザーが、親ディレクトリが別のユーザーによって所有されているディレクトリのコンテンツにアクセスできない場合があることです。 /home/hoster/sharetest/testで共有を作成し、両方の所有権をsharetest/testからequahに変更するのは難しいですが、testフォルダーのみを共有することもできません

4
TheEquah

ここには、古典的な所有権/権限の問題があります。 /home/hoster/sharetestへのアクセスをequahにのみ許可するようにSAMBAに指示しましたが、基礎となるファイルシステムの権限はそのユーザー(drwx------ 19 hoster hoster 4096 Sep 8 20:20 /home/hoster)へのアクセスを拒否します。

ディレクトリへのequahアクセスを許可します。

chmod a+x /home/hoster

または、equahによるアクセスをhosterによって強制的に実行する

# add to smb.conf share definition
force user = hoster

一般に、この種の問題はlog level = 3を使用して診断でき、SAMBAサーバーのログファイルを確認できます。

5
roaima