Ubuntu +最新のSambaバージョン、シンボリックリンクはWindowsにマウントされた共有で動作しなくなりました


14

Ubuntu 9.10 Linuxボックスの最新ソフトウェアをapt-get(apt-got?)しましたが、sambaがアップデートに含まれていることに気付きました。

インストール後、Linuxボックスにドライブとしてマウントすると、ホームディレクトリのシンボリックリンクが機能しなくなります。更新を行う数秒前に文字通り機能しました。私の通常のディレクトリはすべて正常に動作します。コマンドラインでディレクトリリストを表示すると、すべてのファイル、ディレクトリ、およびリンクにまったく同じ権限がありますが、これは私が得るエラーです:

Location is not available
L:\LinkDir is not accessible.
Access is denied.

私はフォーラムを見て、smb.confのこのオプションを見ました

follow symlinks = yes
wide symlinks = yes
unix extensions = no

私はそれらを入れましたが、効果はありませんでした。誰もまだこの問題を抱えていますか?

回答:


19

Sambaに最近のセキュリティ問題がありました(2010年2月5日)。安全でないデフォルト構成を悪用したゼロデイ攻撃とされています。このトピックに関するUbuntuフォーラムの投稿によると、「ワイドリンク」オプションはデフォルトでnoになりました

明らかに、これらの以前の指示以降にオプションの名前が変更されたようです。

これをsmb.confファイルのグローバルセクションに追加すると、問題が修正されます。

follow symlinks = yes
wide links = yes
unix extensions = no

smb.confを保存した後、必ずSambaを再起動してください。

sudo /etc/init.d/samba restart

1
私は、推奨構成を置くことだと思うfollow symlinksし、wide linksセキュリティ上の理由から、(代わりに世界の)共有のセクションで。unix extensions下のuser36732で指摘したようにディレクティブはグローバルセクションに行く必要があります。
マシュー

私にはうまくいきませんでした。raspberrypi ubuntuのsambaサーバー:Arch Linuxのcifsマウント。
ネックトウィ

2

私もそうは思わなかったが、これは私を助けた。mu Ubuntuには2つのSamba共有があります。両方の共有でシンボリックリンクを使用しますが、1つの分散(共有)でシンボリックリンクは機能していましたが、別の分散(共有)で機能していませんでした。

Linux上のリンクをたどるのに問題はありませんでしたが、Windowsでは動作しませんでした。

/ dataディレクトリと/ data2ディレクトリにそれぞれ2つのpuTTyウィンドウを並べて使用し、同じコマンドln -s / data3 / Mydataを発行することもできます。

Mydataディレクトリは、Winボックス上のマップされたドライブの両方に表示されますが、ある場合には機能しますが、別の場合には「アクセスが拒否されました」エラーが表示されます。

「unix extensions = no」でうまくいきましたが、なぜかわかりません...


0

私も同じ問題を抱えていましたが、私にとっては、smb.confの[global]セクションに「unix extensions = no」を入れることで問題は解決しました。これは、Sambaがユーザーが接続する共有を認識する前に解析されるため、グローバルセクションのunix拡張フラグ(すべての共有に対して有効)に入れることが重要です。[ワイドリンク]オプションは、適用される共有に移動できます。

この振る舞いに噛まれた人々への単なる発言であり、将来同様の出来事を避けたい:sambaチームはディストリビューションのバグトラッカーを読みませんが、独自のリストを持っています:

samba-technical@lists.samba.org

サンバチームは、このバグの影響を受けるのはごく少数の人々であり、他の人が声を聞かせる場合にのみ確信できるという印象の下に住んでいます。よろしければ、samba-technical @ lists.samba.orgにメモをドロップしてください

おかげで、

アラン


0

NB:別の質問に答えるためにこれをすでに投稿していますが、リンクのみを投稿する場合、私の(非常に短い!)返信はこの最初の質問に対するコメントに変換され(上記参照)、わずかに見えなくなりました。それで、可視性のために、再び完全な答えがあります:

Sambaクライアントが共有パス外のシンボリックリンクをたどることができるようにするには、Samba構成で必要なものは次のとおりです。

[global]
allow insecure wide links = yes
unix extensions = no

[myShare]
wide links = yes

(もちろん、Samba共有定義自体に加えて)。これは* nixクライアントにとっては理論的には十分です。

注意:デフォルトでは「yes」になっているため、「follow symlinks」ディレクティブは不要です。

Windowsクライアントに関しては、そのようなリンクをたどるために1つの設定がまだありません。そうするには :

  1. 管理者権限を持つWindowsシェルを開きます
  2. 実行:

    fsutil behavior set SymlinkEvaluation L2L:1 R2R:1 L2R:1 R2L:1
    
  3. 再起動して設定をリロードする

注意:Windowsレジストリを編集しても同じ結果が得られます。以下のリンクをご覧ください

ソース:

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.