パスワードを要求しないようにSambaを共有する方法


20

注:おそらく、最大50の異なるページを読んで、2年間でパブリックSamba共有をセットアップする方法を説明しましたが、何も機能しませんでした。このような設定に必要なRTFMの量はわかりません。

2台のワークステーションのホームサーバーで完全にオープンなパブリックファイル共有をセットアップする必要があります。

セットアップは次のとおりです。

サーバー

  • Debian Wheezy
  • sudo smbd --version私に与えますVersion 3.6.6
  • 共有したい2つのローカルパーティション。古いため、WindowsマシンからNTFSでフォーマットされています。ext * FSにフォーマットすることはできません。なぜなら、それらは他のどこにも(まだ)移動できないデータをたくさん持っているからです。
  • 独創性の欠如から「homeserv」という名前のマシン。

クライアント

  1. Debianテスト(ジェシー)
  2. Windows 7(2つの異なるマシン)。実際、私のマシンはDebian / Windowsデュアルブートであり、妻のマシンはWindowsのみです。

蒸留後の私のsmb.confは次のようになります(逐語的、他には何もありません):

[global]
  workgroup = WORKGROUP
  security = user
  map to guest = Bad User

[disk1]
  comment = Disk 1 on 400GB HDD
  path = /media/disk1
  browsable = yes
  guest ok = yes
  read only = no
  create mask = 0755

[disk2]
  comment = Disk 2 on 400GB HDD
  path = /media/disk2
  browsable = yes
  guest ok = yes
  read only = no
  create mask = 0755

両方のクライアントマシンで、DebianとWindowsの両方で同じ結果が得られます:ログイン/パスワードダイアログ。NOの組み合わせないsecurity = usermap to guest = Bad usersecurity = shareguest ok = yesそして助けましたな。

ネットワークネイバーフッドの共有マシンをクリックすると、Windows 7にログイン/パスワードダイアログが表示されます。smb://homeserv/Debianのファイルパス(任意のファイルブラウザー)に2つのフォルダーが表示されます:disk1およびdisk2意図したとおり、それらを開くと、ログイン/パスワードダイアログが表示されます。

それでは、ログイン/パスワードを入力する必要がないというスキームに欠けているものは何ですか?これは使いやすさの質問です。ファイルジャンクヤードのユーザーベースの認証は作成しません。

回答:


14

OK、自分で答えを見つけました。

これはドキュメントやHOWTOなどから明らかでないので、このことでパスワードを要求されるのは、ゲストユーザーを共有ディレクトリ所有者にマッピングできないためです。

RWをマウントする必要があるNTFSパーティションがあるので、次の設定を使用しました/etc/fstab

/dev/sdb1  /media/disk1  ntfs defaults,noexec,noatime,relatime,utf8,uid=1000,gid=1000 0       2
/dev/sdb2  /media/disk2  ntfs defaults,noexec,noatime,relatime,utf8,uid=1000,gid=1000 0       2

configの最も重要な部分はuidandですgid(たぶんuid、わからないだけです)。これらはjonnie、サーバー上で設定されたユーザーのUIDとGIDに設定されます(明らかにルートではありません)。したがって、ntfs-3gがこれらのディスクをマウントすると、すべてが彼によって所有されます。

その後、このユーザーをSambaレジストリに追加しました(または新しい同一のユーザーを作成してもかまいません):

# smbpasswd -a jonnie

パスワードを求められたので、メインシステムと同じものを入力しました。

その後、force userとにforce group設定を追加しましたsmb.conf

[global]
  workgroup = WORKGROUP
  netbios name = HOMESERV
  security = share

[disk1]
  comment = Disk 1 on 400GB HDD
  path = /media/disk1
  browsable = yes
  guest ok = yes
  read only = no
  create mask = 666
  directory mask = 777
  force user = jonnie
  force group = jonnie

[disk2]
  comment = Disk 2 on 400GB HDD
  path = /media/disk2
  browsable = yes
  guest ok = yes
  read only = no
  create mask = 666
  directory mask = 777
  force user = jonnie
  force group = jonnie

したがって、私に関連する最も重要な設定はでしたforce user

Samba HOWTO提供


1
「明らかにルートではない」。それは実際にはそれほど明白ではありません。Sambaには多数の障害モードがあります。ほとんどの場合、同じエラーメッセージが表示されます。そのため、無駄なGoogle検索に多くの時間を費やしました。1回の検索でさまざまな問題が発生するだけでなく、見つかった回答にも同じ混乱が生じます。rootを使用すると、Linux側のセキュリティが不要になりますが、問題を診断することもできます。ルートとして機能する場合、Linuxレベルでセキュリティの問題があります
。Sambaが

2

構成は短くすることができます:

UNIXユーザーjonnieを作成する

useradd jonnie -s /usr/sbin/nologin

smbuserを作成する

smbpasswd -a jonnie

共有するLinuxディレクトリを作成します

mkdir /mysmbshare

ディレクトリの所有者をjonnieに変更します

chown /mysmbshare jonnie

smb.conf

[global]
  workgroup = MyWorkGroup
  server string = Hello, use me
  security = share
  guest account = jonnie
  passdb backend = tdbsam

[the_public_share]
   path = /mysmbshare
   writable = yes
   printable = no
   public = yes

すべてのファイルはjonnieが所有しており、誰もがファイルにrwアクセスできます。


うん、「ディレクトリの所有者をjonnieに変更する」は、おそらくここで最も重要な部分です。より短い解決策をありがとう!
ヒジャール語

1

Samba共有をオープンにするための手っ取り早い方法は、次のとおりです。

# ----------------------- Standalone Server Options ------------------------
#
# Scurity can be set to user, share(deprecated) or server(deprecated)
#
# Backend to store user information in. New installations should
# use either tdbsam or ldapsam. smbpasswd is available for backwards
# compatibility. tdbsam requires no further configuration.

        security = share
        passdb backend = tdbsam

共有が次のように定義されています:

[export]
   comment = Data Export Directory
   path = /data/export
   read only = no
   public = yes
   browseable = yes
   writeable = yes
   create mask = 666
   directory mask = 777

デーモンを再起動します。

Windows 7クライアントの場合、2014年の時点で、ドメインポリシーを設定する必要がありました。つまり、通信を常に DISABLEにデジタル署名します。


どうやら公開株のドメインポリシーを変更しています...(facepalm)。さて、とにかくありがとうございます。しかし、いいえ、私は今これを試しsmb://homeserv/disk1ましたが、Debianではまだパスワードが必要です。DolphinおよびKrusaderファイルブラウザを使用しました。たぶんそれはKDEの何かでしょう。
ヒジャール人14

ちょっとそれは働いた!:D public = yes777パーミッションがトリックを行いました(Ubuntu 18.04をホ​​ストするWin 10)。幸いなことに私のワークステーション上にあるので、心配する必要はありません
アーサータラソフ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.