私は何度も試しましたが、UnixでSMB共有に対する権限を取得できませんでした。最小限のDebianファイルサーバー、GUIなし、SSHのみがあります...
私はいつもSMBですべての権限を設定すると思っていましたが、わかりましたが、Windowsで設定しましたか? https://www.youtube.com/watch?v=QhwOyLtArw0
たぶん、私はRagnarにディスクルートへのアクセスとフルアクセス権を与え、私のWindowsワークステーションですべてのフォルダを作成して権限を設定するだけで十分でしょうか?
2人のユーザーが欲しい:RagnarとHarald
私のディスクを「レコード」と「メディア」と呼びます。
記録(sdb1 | /mnt/records)
- TV 記録 Harald
- TV 記録
- 次へ
アーカイブ(sdc1 | /mnt/archiv)
- Harald
--- モトローラタブレット
- バックアップ
--- PC1
--- PC2
-メディア
---音楽
---ミュージックビデオ
---電子ブック
Haraldは「録画/テレビ録画Harald」を表示でき、読み取り、書き込み、削除の権限が必要です。
Haraldは「Archiv / Harald」を表示でき、読み取り、書き込み、および削除権限が必要です。
Haraldは「アーカイブ/メディア」を表示できる必要があり、読み取り権限のみが必要です。
私を訪問する友人は「アーカイブ/メディア」を見ることができ、読書権限だけが必要です。
ラグナはどこでもすべてを報告できるはずです。
これまで私がしたこと:
~# sudo apt install samba
~# sudo useradd Ragnar -s /usr/sbin/nologin
~# sudo smbpasswd -a Ragnar
~# sudo useradd Harald -s /usr/sbin/nologin
~# sudo smbpasswd -a Harald
~# sudo nano /etc/samba/smb.conf
[global]
workgroup = WORKGROUP
log file = /var/log/samba/log.%m
max log size = 1000
logging = file
panic action = /usr/share/samba/panic-action %d
server role = standalone server
obey pam restrictions = yes
[Records]
comment = Disk 1
path = /mnt/records
browsable = yes
read only = no
create mask = 0666
directory mask = 0777
force user = Ragnar
force group = Ragnar
hide files = /lost+found/
~# sudo chown Ragnar /mnt/records
~# sudo service smbd restart
Windowsで「ロギング」共有のセキュリティを見てみましょう。
全員:特殊権限
ルート(Unix Group\root):特殊権限
Ragnar(HECTOR\Ragnar):特殊権限
どういうわけかグループを変更する必要がありますか?
Ragnarとすべての読み取りと書き込みに対する「特殊権限」は、「すべての権限」を表示するのではなく、一般的なものですか?
ここで、ロギングからファイルを生成し、Windowsのセキュリティを見てみましょう。
全員:読み取り、書き込み
Ragnar(Unix Group\Ragnar): 読み取り、書き込み
Ragnar(HECTOR\Ragnar): 読み取り、書き込み
だからラグナも「完全な制御」を持っていません...
何が変わるべきですか?
または、今Windowsにサブフォルダを作成し、ここで権限を設定する必要がありますか?
紛失や発見されたコンテンツを完全に隠す方法はありますか?
エクスプローラが「隠しファイルを表示」に設定されている場合は、Windowsで引き続き表示できます。
私のAndroidデバイスでも見ることができます。
それでは、AndroidにIPC $フォルダがありますか?
編集の
紛失+発見(アクセス拒否)のため、履歴内のフォルダ/ファイル内のすべての人を削除することはできません。
編集
私は1つを作成し、sudo chown -R Ragnar:Ragnar /mnt/records
今誰の権限を削除することができます。
ところで、ハラルドは記録を読み書きできますか? ? ?
答え1
読むことから始めます。https://www.samba.org/samba/docs/
なぜなら、Linuxにはあなたが知っておくべきいくつかのハンドルがあり、Samba Server
あなたが必要とするものを達成する方法がいくつかあるかもしれません。
しかし、簡単に言うと
- Linuxの下にインストールされます
samba server
。最小説明するサンバ機能しなければならないすべてのLinuxで動作 /etc/samba/smb.conf
次のように編集少なくとも次のような
# smb.conf file sample
[global]
security = user
passdb backend = tdbsam
[scratch]
path = /scratch
read only = No
guest ok = No
- samba.orgでandの
security
説明を読んでくださいpassdb
。ただし、これは基本機能を設定します。地元のLinuxアカウントが存在し、アカウント名が有効でなければなりません。ラグナそしてハラルド]どの返品接続しているコンピュータに関係なく、アカウント名でなければなりません。接続されているコンピュータと接続されているコンピュータのアカウントパスワードが同じ場合サンバコードSambaサーバーをホストしているLinuxシステムからの接続を許可します。 - あなたはする必要があります
smbpasswd -a ragnar
smbpasswd -a harald
- 選択を満たすためにLinuxシステムでSambaサーバーをホストしてください
passdb backend
...私たちが使用するSambaパスワードは次のとおりです。その他のローカルアカウントのパスワードよりも重要です/etc/passwd
。詳細な手順については、Sambaのドキュメントをお読みください。ただし、これは、guest ok = yes
特定の共有へのアクセスをすべての人に許可するまで、特定のアカウント名に対するLinuxファイル/フォルダの権限に基づいてデフォルトのアクセスセキュリティを設定します。smb.conf
scratch
smb.conf の例では、example というフォルダのみを共有しました。
- 他のすべての具体的な質問については答えることが難しいです。申し訳ありません。
- たとえば、アカウント名が
harald
LinuxのSambaサーバー上にある場合は、この操作を実行します。そしてクライアントシステムではそしてLinuxサーバーがsmbpasswd
接続クライアントのアカウントパスワードと一致するharald
と、Linuxシステムで機能するすべてがSamba接続を介して影響を受け、Sambaで定義されているユーザーとグループに基づいてデフォルトのファイル/フォルダ権限を使用できます。 Linux [サンバ]サーバー。harald
harald
私はいつもSMBですべての権限を設定すると思いましたが、Windowsで設定したことがわかりました。
必ずしもそうではありません。できるクライアント(Windowsコンピュータ)で設定されますが、ファイル/フォルダの権限はSambaサーバーから来ます。したがって、まずLinuxファイルシステムの権限であり、Sambaサーバーから読み取られ、クライアントに渡されます。つまり、(Server Message Block)プロトコルをSMB
理解する必要がありますSMB
。矛盾がある場合(たとえば、guest ok == yesで、WindowsアカウントがLinux [samba]サーバーに存在しない場合)、nobody
権限がに設定されていることがわかります。
- Samba ドキュメントを読む
Map to Guest
- さまざまなレベルのアクセスと制限に対応するには、他の多くの調整が必要です。
obey pam restrictions
- 私はそれを削除するか、
no
これがあなたの現在の理解のレベルを越えるので全く別の動物であるとsamba
言うことを提供します。PAM
nologin
Linuxアカウントがまだこれらのアカウントへのsamba smbアクセスを許可しているかどうかはわかりません。まず、Linuxアカウントを作成して完全にharald
有効ragnar
にしてから、すべてがnologin
正常に機能している場合は、このアカウントを変更してください(sshを防ぐため)。 だから私がそう言う理由pam=no
は、pamの制限に従い、アカウントにログインしないとSambaアクセスがブロックされる可能性があると言われたからです。。