Samba 4.0の最新動向(2014/03/01 OSC 2014 Tokyo/Spring)

15
Samba 4.0最新動向 日本Sambaユーザ会 たかはしもとのぶ(髙橋基信) [email protected]

Transcript of Samba 4.0の最新動向(2014/03/01 OSC 2014 Tokyo/Spring)

Page 1: Samba 4.0の最新動向(2014/03/01 OSC 2014 Tokyo/Spring)

Samba 4.0の最新動向

日本Sambaユーザ会

たかはしもとのぶ(髙橋基信) [email protected]

Page 2: Samba 4.0の最新動向(2014/03/01 OSC 2014 Tokyo/Spring)

2

Samba 4.X系列とは Active Directory(以下AD)のドメインコントロー

ラ(以下DC)機能を実装したSambaの最新版現在の最新版はSamba 4.1.5(2014/02/21)

Samba 4.1系列最初の4.1.0は2013/10/11リリース

Sambaのサポートポリシー9か月毎に新系列をリリース

最新系列(4.1):フルサポート

1つ前(4.0):メンテナンスサポート

2つ前(3.6):セキュリティ修正のみサポート

6週間毎目途で、パッチリリース 4.1.5は、4.1系列で5回目のパッチリリース

Page 3: Samba 4.0の最新動向(2014/03/01 OSC 2014 Tokyo/Spring)

3

Samba 4.X系列の特徴 ADのドメインコントローラ機能とそれ以外でバイ

ナリが分離されているADのドメインコントローラ機能→sambaバイナリ

その他機能→レガシーバイナリ(smbd/nmbd/winbindd)

sambaバイナリとレガシーバイナリは共存不可

ファイルサーバなど、ドメインコントローラ以外の機能については、レガシーバイナリが推奨

※レガシーバイナリという用語はわたしの造語です

Page 4: Samba 4.0の最新動向(2014/03/01 OSC 2014 Tokyo/Spring)

4

レガシーバイナリとは 前バージョン(3.6系列)までと同等

ADのメンバサーバ、ファイル/プリンタサーバ、SambaドメインのDCなどとして従来通り使用できる

設定方法は従来と基本的に変わらず→Samba 3.X系列の知識で設定可能

Windowsの機能強化があれば、地道に追従ADメンバサーバとしての機能は一通り対応済

Windows自身にOSとして目立った機能強化がない

Page 5: Samba 4.0の最新動向(2014/03/01 OSC 2014 Tokyo/Spring)

5

レガシーバイナリの動向 主な変更点(4.0)

security = share/serverが廃止 元々Windows 9x由来の機能であり、サポートが困難に

SMB2.1(大半の機能)、SMB3.0(主要機能)サポート

CTDBによるクラスタ機能が正式サポート

主な変更点(4.1)→主に2012対応クライアント側のSMB2.1/3.0サポート

ファイル共有プロトコルの最新バージョンをSambaサーバだけではなく、smbclientなどクライアントでも使用可能

smbclient -mSMB3

Page 6: Samba 4.0の最新動向(2014/03/01 OSC 2014 Tokyo/Spring)

6

レガシーバイナリの動向ネットワーク上の暗号化転送サポート

SMB3の機能である暗号化転送をサポート smbclient -mSMB3 -e

サーバ上でのファイルコピーサポート クライアントからの操作で同一サーバ内でファイルコピー

を行う際の効率が向上 例えば、ある共有にあるファイルAを同じ共有内にファイルBとし

て複製する際など

SWATの廃止 平文パスワードしか対応しておらずセキュリティが脆弱

Web管理ツールは様々なアドオンもあり、Samba本体としてサポートする必然性が低い

Page 7: Samba 4.0の最新動向(2014/03/01 OSC 2014 Tokyo/Spring)

7

sambaバイナリとは ADのドメインコントローラに特化

nmbd、smbd、winbinddを包含した単一プロセス

DCとして必要なサービスの大半を単独で実装 Kerberos(Heimdal Kerberosをソースに取り込み)

LDAP(独自実装) OpenLDAPの使用は考慮されていない(alpha15以降)

→OpenLDAPではADが必要とする機能をサポートできないため→ただし、現状OpenLDAP側と協力して再サポートを模索中

別プロダクトと連携して実現している機能 DNS(BIND)→内蔵DNSが標準だが、大規模環境では

BIND連携推奨、NTP(ntpd)

スクリプティング(Python) ← Pythonがないとビルド不可

Page 8: Samba 4.0の最新動向(2014/03/01 OSC 2014 Tokyo/Spring)

8

参考:DNS、NTPの連携方式 DNSとして以下の3種類の方式をサポート

NTPは必須ではないが、時刻同期は必須 ntpd 4.2.6以降は、AD互換の署名NTPを実装

設定を行うことで、時刻同期を許可するクライアントを同一ADのクライアントに制限可能

方式 概要 特徴

Samba内蔵 ・DNSサーバはSamba内蔵

・ゾーン情報はADから取得

・設定が簡単

・基本的な機能のみ実装

BIND9DLZモジュール

・DNSサーバはBIND9・ゾーン情報はADから取得※BIND9のDLZ機能を使用

・複雑、大規模環境への適用が可能

・DLZ機能に対応したBIND 9.7以降が必要

BIND9静的

ファイル

・DNSサーバはBIND9・ゾーン情報はBIND9のゾーンファイルから取得

・複雑、大規模環境への適用が可能

・Sambaの設定変更に伴うゾーン情報の更新を手作業で行う必要がある

Page 9: Samba 4.0の最新動向(2014/03/01 OSC 2014 Tokyo/Spring)

9

sambaバイナリの動向 ADの機能のサポートを拡大していく方向

現状、単一ドメインに閉じた機能はほぼサポート項目 Samba 4.0系列 【参考】Win 2008 R2

フォレスト・ドメイン機能レベル ◎ ◎

FSMO操作 ◎ ◎

サイト △ ◎

信頼関係 △ ◎

マルチフォレスト・ドメイン × ◎

Windows DCの参加 ○(2012/2003等で若干トラブルあり) ◎

RODC △(いろいろトラブルがあるよう…) ◎

ディレクトリ複製(DRS) ○→◎ ◎

ファイル複製(FRS) ×(rsyncなどで別途対応必要) ◎

OUによる権限の委任 ◎ ◎

グループポリシ ◎ ◎

ドメインベースDFS △(ADDSに必要な範囲) ◎

Page 10: Samba 4.0の最新動向(2014/03/01 OSC 2014 Tokyo/Spring)

10

参考:既存のドメインからの移行 Samba3ドメインからの移行

samba-tool domain classicupgrade というコマンドが用意されている インプレースアップグレード前提

アップグレード元のSambaドメインのデータベースにゴミや不整合があると移行に失敗するので移行リハできちんと取り除いておくこと(SID重複など)

Windowsドメインから/への移行Windows同士のドメインコントローラ移行と同様にし

て可能

Page 11: Samba 4.0の最新動向(2014/03/01 OSC 2014 Tokyo/Spring)

11

SambaによるAD管理の方向性 smb.confの設定はあまり必要でない

実はインストーラが生成したままでも使えてしまう

samba-toolやGUIによる動的設定増加AD周りの設定は、ほぼコマンドorGUI

ファイルサーバのアクセス制御もGUIから行うのが基本

良くも悪くも、Windows的スキルが必要→いったん起動すれば、Windowsサーバと同等に管理可能

# Global parameters[global] workgroup = SAMBA40AD3 realm = SAMBA40AD3.SAMBA.LOCAL netbios name = SQUEEZE32-2 server role = active directory domain controller dns forwarder = 192.168.135.2 idmap_ldb:use rfc2307 = yes

[netlogon] path = /usr/local/samba/var/locks/sysvol/samba40ad3.samba.local/scripts read only = No

[sysvol] path = /usr/local/samba/var/locks/sysvol read only = No

スクリプトの生成したsmb.conf例

Page 12: Samba 4.0の最新動向(2014/03/01 OSC 2014 Tokyo/Spring)

12

参考:Samba 4.0によるADの操作 基本的には各種Windows管理ツールから操作

samba-toolによるコマンドライン操作も可能

Page 13: Samba 4.0の最新動向(2014/03/01 OSC 2014 Tokyo/Spring)

13

Sambaが生成したUNIXユーザの管理 メンバサーバ上 →Samba 3.6以前と同じ

Winbindを使ったり、/etc/passwdと対応付けしたり

DC上Winbind機構が必ず動作

UNIXユーザのUID/GIDはデフォルト自動生成 ADのUNIX属性を参照させる設定も可能(Samba 4.1以降)

シェルなどを個別設定できない

# getent passwdroot:x:0:0:root:/root:/bin/bash…SAMBA41AD1\Administrator:*:0:10000::/home/SAMBA41AD1/Administrator:/bin/falseSAMBA41AD1\Guest:*:3000011:3000012::/home/SAMBA41AD1/Guest:/bin/falseSAMBA41AD1\krbtgt:*:3000020:10000::/home/SAMBA41AD1/krbtgt:/bin/falseSAMBA41AD1\samba01:*:3000012:10000:samba 01:/home/SAMBA41AD1/samba01:/bin/false…SAMBA41AD1\ldap-connect:*:3000021:10000::/home/SAMBA41AD1/ldap-connect:/bin/falseSAMBA41AD1\samba07:*:3000022:10000:samba 07:/home/SAMBA41AD1/samba07:/bin/false

Page 14: Samba 4.0の最新動向(2014/03/01 OSC 2014 Tokyo/Spring)

14

Sambaが生成したUNIXユーザの管理シェルやホームディレクトリもUNIX属性を参照させ

たい場合(Samba 3.Xと同等の設定をしたい) ADをLDAPサーバとして扱い、sssdなどでADに存在する

ユーザを自動生成、その際に関連する属性を参照させることで(一応)実現可能

ただし、Winbind機構で生成されるユーザとは別ユーザとして扱われる

# getent passwdroot:x:0:0:root:/root:/bin/bash…messagebus:x:103:104::/var/run/dbus:/bin/falsesamba01:*:10000:10000:samba 01:/home/samba01:/bin/bash…samba06:*:10003:10000:samba 06:/home/samba06:/bin/shSAMBA41AD1\Administrator:*:0:10000::/home/SAMBA41AD1/Administrator:/bin/falseSAMBA41AD1\Guest:*:3000011:3000012::/home/SAMBA41AD1/Guest:/bin/falseSAMBA41AD1\krbtgt:*:3000020:10000::/home/SAMBA41AD1/krbtgt:/bin/falseSAMBA41AD1\samba01:*:10000:10000:samba 01:/home/SAMBA41AD1/samba01:/bin/false…SAMBA41AD1\samba06:*:10003:10000:samba 06:/home/SAMBA41AD1/samba06:/bin/false

Page 15: Samba 4.0の最新動向(2014/03/01 OSC 2014 Tokyo/Spring)

15

ご清聴ありがとうございました