LoginSignup
3
1

More than 3 years have passed since last update.

CentOS6のSambaでSMB2を有効にしてパスなし参照フォルダを設定した手順

Last updated at Posted at 2020-02-10

以下をやりましたので記事とします。

  • CentOS 6系で
  • samba 3.6を使って
  • SMB2も有効にした(元々はSMB1だった)

最近は古いサーバの延命的なSomethingもやっていて、この記事もその一環のネタです。
CentOS6はWikiによると 2020-11-30 にEOLとなりますが、古い社内共有サーバの1台がCentOS6で稼働していまして、それでも クライアント側はセキュリティ面などからSMB1は利用不可としたい という要望がありました。

設定値

/etc/samba/smb.confを以下の様に変更しました。

[global]
         max protocol = SMB2

         security = user
         map to guest = Bad User

設定のポイント

  • max protocol = SMB2
    • これに関してはすぐに記事が見つかり、設定を入れたのですがクライアントはSMB1で接続してしまい、一向に効果がありませんでした
  • security = user
    • デフォルトの値ですが重要です。弊社の既存環境では security = share が設定されており、これはdeplicatedなパラメータです。security = shareの目的はパスワードなしで共有フォルダを参照させるためでしたが、これを行うとSMB1しか動作しない様で大ハマりしました
  • map to guest = Bad User
    • security = user をしつつ、フォルダをパスワードなしで誰でも参照させたい場合に必要です。後述する記事に当たるまで全く対応方法がわからず困りました

その他

環境

具体的には以下の環境です。

  • CentOS release 6.10 (Final)
  • samba-common-3.6.23-53.el6_10.x86_64

参考記事

以下の記事で map to guest = Bad User を知り大変助かりました。
* ubuntuforum.org - (Samba) Warning: security=share is deprecated

SMBのバージョンを調べる方法

クライアント側にWiresharkを入れて、 smb or smb2 のフィルタで見れば一発です。
もう少し具体的にいうと
1. クライアントから Negotiate Protocol RequestRequested Dialects で話せるSMB一覧を送る
2. サーバ側から Negotiate Protocol Response が来て
   * SMB1の場合 Selected Index フィールドが NT LM 0.12 の様になりました
   * SMB2の場合 Dialect: SMB 2.0.2 の様になりました

SMB1しかできないパケキャプ結果

image.png

SMB2に成功したパケキャプ結果

image.png

以上、もうすぐ役目を終えるCentOS6のSambaの設定でした。個人としても大変お世話になったCentOS6の長きにわたる活躍に敬意を表します。

3
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
1