見出し画像

392.1 Sambaの概念とアーキテクチャ

主題392:Sambaの基礎
392.1 Sambaの概念とアーキテクチャ

LinuC300の試験範囲である主題390~397まであるうちの「主題392:Sambaの基礎」から「392.1 Sambaの概念とアーキテクチャ」についてのまとめ

  • 重要度:2

  • 説明:
    Sambaの本質的概念を理解していること。また、Samba3とSamba4の主な相違が分かっていること。

  • 主要な知識範囲
    - Sambaデーモンおよびコンポーネントの役割について理解する
    - 異種ネットワークに関する問題について理解する
    - SMB/CIFSで使用される主要なTCP/UDPポートの把握
    - Samba3とSamba4の違いに関する知識

  • 重要なファイル、用語、ユーティリティ:
    - /etc/services
    - Sambaのデーモン smbd、 nmbd、 samba、 winbindd


Sambaデーモンおよびコンポーネントの役割について理解する

manコマンドで参照できるマニュアルによるとSambaには「samba」「smbd」「nmbd」「winbindd」の主要サービスのほか様々な機能が含まれているようです。

samba: Samba3のマニュアル
記述なし

samba: Samba4のマニュアル
SMBクライアントに対してActiveDirectoryの機能を提供する
設定ファイルは smb.conf である。

smbd
SMBクライアントに対してファイル共有機能とプリンタ共有機能などを提供する。
設定ファイルは smb.conf である。

nmbd
NetBIOSによる名前解決、ブラウジングの機能を提供する。
設定ファイルは smb.conf である。

winbindd
Windowsの認証機能とUNIXの認証機能を統合する機能を提供する。
Name Service Switch(NSS)デーモン


異種ネットワークに関する問題について理解する

Windows環境とUNIX環境の主な違い
・文字コードや改行コード
・認証機能の違い


SMB/CIFSで使用される主要なTCP/UDPポートの把握

Server Message Block(SMB)、Common Internet File System(CIFS)で使用されるポート番号

smbd:SMB/CIHS
TCP 139=SMB
TCP 445=CIFS

nmbd
UDP 137=名前解決など
UDB 138=ブラウジングなど

TCP/UDPポート番号とサービス名の対応付けをしているのは /etc/services というファイルです。

[root@rocky9-samba31 ~]#
[root@rocky9-samba31 ~]# grep 139 /etc/services
 :
netbios-ssn     139/tcp                         # NETBIOS session service
netbios-ssn     139/udp
 :
[root@rocky9-samba31 ~]#
[root@rocky9-samba31 ~]# grep 445 /etc/services
 :
microsoft-ds    445/tcp
microsoft-ds    445/udp
 :
[root@rocky9-samba31 ~]#
[root@rocky9-samba31 ~]# grep 137 /etc/services
 :
netbios-ns      137/tcp                         # NETBIOS Name Service
netbios-ns      137/udp
 :
[root@rocky9-samba31 ~]#
[root@rocky9-samba31 ~]# grep 138 /etc/services
 :
netbios-dgm     138/tcp                         # NETBIOS Datagram Service
netbios-dgm     138/udp
 :
[root@rocky9-samba31 ~]#

/etc/services にTCP/UDPポート番号とサービス名が定義されていればnetstatコマンドやssコマンドでポート番号ではなくサービス名で表示される。
(-nオプションを付けるとポート番号のみ表示)

[root@rocky9-samba31 ~]#
[root@rocky9-samba31 ~]# ss -at
State   Recv-Q  Send-Q   Local Address:Port           Peer Address:Port Process
LISTEN  0       50             0.0.0.0:microsoft-ds        0.0.0.0:*
LISTEN  0       50             0.0.0.0:netbios-ssn         0.0.0.0:*
[root@rocky9-samba31 ~]#
[root@rocky9-samba31 ~]# ss -ant
State    Recv-Q   Send-Q     Local Address:Port     Peer Address:Port  Process
LISTEN   0        50               0.0.0.0:445           0.0.0.0:*
LISTEN   0        50               0.0.0.0:139           0.0.0.0:*
[root@rocky9-samba31 ~]#
[root@rocky9-samba31 ~]#
[root@rocky9-samba31 ~]# ss -au
State   Recv-Q  Send-Q    Local Address:Port          Peer Address:Port Process
UNCONN  0       0               0.0.0.0:bootpc             0.0.0.0:*
UNCONN  0       0        192.168.56.255:netbios-ns         0.0.0.0:*
UNCONN  0       0         192.168.56.31:netbios-ns         0.0.0.0:*
UNCONN  0       0            10.0.3.255:netbios-ns         0.0.0.0:*
UNCONN  0       0             10.0.3.99:netbios-ns         0.0.0.0:*
UNCONN  0       0               0.0.0.0:netbios-ns         0.0.0.0:*
UNCONN  0       0        192.168.56.255:netbios-dgm        0.0.0.0:*
UNCONN  0       0         192.168.56.31:netbios-dgm        0.0.0.0:*
UNCONN  0       0            10.0.3.255:netbios-dgm        0.0.0.0:*
UNCONN  0       0             10.0.3.99:netbios-dgm        0.0.0.0:*
UNCONN  0       0               0.0.0.0:netbios-dgm        0.0.0.0:*
[root@rocky9-samba31 ~]#
[root@rocky9-samba31 ~]# ss -anu
State   Recv-Q   Send-Q      Local Address:Port     Peer Address:Port  Process
UNCONN  0        0                 0.0.0.0:68            0.0.0.0:*
UNCONN  0        0          192.168.56.255:137           0.0.0.0:*
UNCONN  0        0           192.168.56.31:137           0.0.0.0:*
UNCONN  0        0              10.0.3.255:137           0.0.0.0:*
UNCONN  0        0               10.0.3.99:137           0.0.0.0:*
UNCONN  0        0                 0.0.0.0:137           0.0.0.0:*
UNCONN  0        0          192.168.56.255:138           0.0.0.0:*
UNCONN  0        0           192.168.56.31:138           0.0.0.0:*
UNCONN  0        0              10.0.3.255:138           0.0.0.0:*
UNCONN  0        0               10.0.3.99:138           0.0.0.0:*
UNCONN  0        0                 0.0.0.0:138           0.0.0.0:*
[root@rocky9-samba31 ~]#

Samba3とSamba4の違いに関する知識

Samba3(2003年9月~2015年3月)
・smbd、nmbd、winbind の3つのプロセスで構成される
・NTドメインのドメインコントローラーが構築できる
・認証にはNTMLv2を使用
・WINSサーバーで名前解決する
・LDAPサーバーと連携できる
・SMB2.0をサポート(Samba3.6~)
・リモート管理ツールにUser Manager for Domains(USRMGR)が利用可能

Samba4(2012年12月~)
・smbd、nmbd、winbind、samba の4つのプロセスで構成される
・ActiveDirectoryドメインのドメインコントローラーが構築できる
・認証にはKerberosを使用
・DNSサーバーで名前解決する
・DNSサーバーとLDAPサーバーの機能が内蔵されている
・SMB2.0、SMB3.0をサポート
・グループポリシーをサポート
・リモート管理ツール Remote Server Administration Tool(RSAT)が利用可能

参考文献

この記事が気に入ったらサポートをしてみませんか?