PAM、NIS、LDAP、Kerberos、DS、およびSamba 4AD-DC-SMBネットワーク

シリーズの一般的なインデックス: SME向けのコンピュータネットワーク:はじめに

こんにちは友達と友達!

この記事では、FromLinuxコミュニティに別れを告げます。 特別コミュニティのための特別な別れ。 これから私はあなたが知ることができる私の個人的なプロジェクトに参加します http://www.gigainside.com.

投稿の主な目的は、«を提供することです全体像»私たちが自由に使えるフリーソフトウェアによる認証サービスについて。 少なくともそれが私たちの意図です。 したがって、記事を書くという一般的な規則に違反していることがわかっているにもかかわらず、それは長くなります。 システム管理者に感謝していただきたいと思います。

最新の認証システムの多くに共通するプロトコルは、 LDAP、公式サイトにある学習資料に基づいて、慎重に学習するのは怠惰ではありません。 http://www.openldap.org/.

必要なメッセージの客観性を失わないように、以前の記事で扱った側面、またはウィキペディアや他のサイトやインターネット上の記事で簡単に説明にアクセスできる側面について、詳細な定義(またはリンク)を提供しません。与える。 また、ほとんどのシステムは英語の名前で生まれたものであり、システム管理者が元の言語でそれらを同化することは非常に有益であると考えられるため、英語とスペイン語の名前の有効な組み合わせも使用します。.

  • PAM: プラグ可能な認証モジュール。
  • NIS:Network_Information_Service。
  • LDAP:ライトウェイトディレクトリアクセスプロトコル.
  • Kerberos:ユーザー、コンピューター、およびサービスをネットワーク上で一元的に認証し、Kerberosデータベース内の既存のエントリに対して資格情報を検証するためのセキュリティプロトコル。
  • DS:ディレクトリサーバーまたはディレクトリサービス
  • AD-DC:ActiveDirectory-ドメインコントローラー

インデックス

PAM

このタイプのローカル認証に小さなシリーズを捧げます。これは、たとえば、ワークステーションをドメインコントローラーまたはActive Directoryに参加させるときに、広く使用されていることが日常的にわかります。 外部LDAPデータベースに保存されているユーザーを、ローカルユーザーであるかのようにマップします。 Active Directoryのドメインコントローラーに保存されているユーザーを、ローカルユーザーであるかのようにマップします。

NIS

De Wikipedia:

  • ネットワーク情報システム(略称NIS、スペイン語でネットワーク情報システムを意味する)は、コンピュータ間でユーザーやホストの名前などの構成データを分散システムで送信するためにSunMicrosystemsによって開発されたクライアントサーバーディレクトリサービスプロトコルの名前です。ネットワーク上。NISはONCRPCに基づいており、サーバー、クライアント側ライブラリ、およびさまざまな管理ツールで構成されています。

    もともとNISはイエローページまたはYPと呼ばれていましたが、現在でもそれを参照するために使用されています。 残念ながら、その名前はBritish Telecomの商標であり、Sunはその名前を削除する必要がありました。 ただし、YPは、ypservやypbindなどのほとんどのNIS関連コマンドの名前のプレフィックスのままです。

    DNSは限られた範囲の情報を提供しますが、最も重要なのはノード名とIPアドレスの間の対応です。 その他の情報については、そのような専門的なサービスはありません。 一方、インターネットに接続されていない小さなLANのみを管理している場合は、DNSを設定する価値がないようです。 これが、Sunがネットワーク情報システム(NIS)を開発した理由です。 NISは、たとえば、passwdに含まれる情報を配布し、ファイルをネットワーク上のすべてのノードにグループ化するために使用できる汎用データベースアクセス機能を提供します。 これにより、ネットワークは単一のシステムのように見え、すべてのノードに同じアカウントがあります。 同様に、NISを使用して、/ etc / hostsに含まれるノード名情報をネットワーク上のすべてのマシンに配布できます。

    現在、NISは事実上すべてのUnixディストリビューションで利用可能であり、無料の実装もあります。 BSD Net-2は、Sunから寄贈されたパブリックドメインリファレンス実装から派生したものを公開しました。 このバージョンのクライアント部分のライブラリコードはGNU / Linux libcに長い間存在しており、管理プログラムはSwenThümmlerによってGNU / Linuxに移植されました。 ただし、リファレンス実装の時点でNISサーバーがありません。

    Peter Erikssonは、NYSと呼ばれる新しい実装を開発しました。 基本的なNISと拡張バージョンのSunNIS +の両方をサポートします。[1] NYSは、多数のNISツールとサーバーを提供するだけでなく、それらを使用する場合にlibcにコンパイルする必要があるまったく新しいライブラリ関数のセットも追加します。 これには、「host.conf」ファイルで使用されている現在のスキームを置き換えるノード名解決の新しい構成スキームが含まれます。

    GNU / Linuxコミュニティではlibc6として知られているGNUlibcには、ThorstenKukukによって開発された従来のNISサポートの更新バージョンが含まれています。 NYSが提供するすべてのライブラリ機能をサポートし、高度なNYS構成スキームも使用します。 ツールとサーバーは引き続き必要ですが、GNU libcを使用すると、ライブラリにパッチを適用して再コンパイルする手間が省けます。

    .

コンピューターとドメイン名、ネットワークインターフェイスとリゾルバー

  • Debian8「Jessie」のクリーンインストール(グラフィカルインターフェイスなし)から始めます. ドメインswl.fanは「フリーソフトウェアのファン」を意味します。 これより良い名前は何ですか?.
ルート@マスター:〜#ホスト名
マスター
ルート@マスター:〜#ホスト名-f
master.swl.fan

root @ master:〜#ip addr 1:lo: mtu 65536 qdisc noqueue state UNKNOWN group default link / loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever Preferred_lft forever inet6 :: 1/128スコープホストvalid_lftforever Preferred_lft forever 2:eth0: mtu 1500 qdiscpfifo_fast状態UPグループデフォルトqlen1000リンク/エーテル00:0c:29:4c:76:d9 brd ff:ff:ff:ff:ff:ff inet 192.168.10.5/24 brd192.168.10.255スコープグローバルeth0valid_lft forever Preferred_lft forever inet6 fe80 :: 20c:29ff:fe4c:76d9 / 64スコープリンクvalid_lftforever Preferred_lft forever

ルート@マスター:〜#cat /etc/resolv.conf 
swl.fanネームサーバー127.0.0.1を検索します

bind9、isc-dhcp-serverおよびntpのインストール

bind9

root @ master:〜#aptitude install bind9 bind9-doc nmap
ルート@マスター:〜#systemctl status bind9

ルート@マスター:〜#nano /etc/bind/named.conf
"/etc/bind/named.conf.options"を含めます。 "/etc/bind/named.conf.local"を含めます。 "/etc/bind/named.conf.default-zones"を含めます。

ルート@マスター:〜#cp /etc/bind/named.conf.options \ /etc/bind/named.conf.options.original

ルート@マスター:〜#nano /etc/bind/named.conf.options
オプション{ディレクトリ "/ var / cache / bind"; //あなたと話したいネームサーバーの間にファイアウォールがある場合は、//複数のポートが話し合うことができるようにファイアウォールを修正する必要があるかもしれません。 見る http://www.kb.cert.org/vuls/id/800113

        // ISPが安定したネームサーバーに0つ以上のIPアドレスを提供した場合、//それらをフォワーダーとして使用することをお勧めします。 //次のブロックのコメントを解除し、// all-0.0.0.0のプレースホルダーを置き換えるアドレスを挿入します。 //フォワーダー{//XNUMX; //}; // =============================================== = ==================== $ // BINDがルートキーの有効期限が切れていることに関するエラーメッセージをログに記録する場合、//キーを更新する必要があります。 見る https://www.isc.org/bind-keys
        // =============================================== = ===================== $ // DNSSECは必要ありません
        dnssec-いいえを有効にします。
        // dnssec-検証自動; auth-nxdomain no; #RFC1035 listen-on-v6 {any;に準拠}; // localhostおよびsysadminからのチェック用// dig swl.fanaxfr経由//スレーブDNSはありません...今まで
        allow-transfer {localhost; 192.168.10.1; };
}; ルート@マスター:〜#named-checkconf

ルート@マスター:〜#nano /etc/bind/zones.rfcFreeBSD
//共有アドレススペース(RFC 6598)
zone "64.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "65.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "66.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "67.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "68.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "69.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "70.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "71.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "72.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "73.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "74.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "75.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "76.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "77.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "78.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "79.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "80.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "81.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "82.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "83.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "84.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "85.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "86.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "87.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "88.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "89.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "90.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "91.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "92.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "93.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "94.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "95.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "96.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "97.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "98.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "99.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "100.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "101.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "102.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "103.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "104.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "105.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "106.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "107.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "108.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "109.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "110.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "111.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "112.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "113.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "114.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "115.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "116.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "117.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "118.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "119.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "120.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "121.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "122.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "123.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "124.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "125.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "126.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "127.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };

//リンクローカル/ APIPA(RFC 3927、5735、および6303)
ゾーン "254.169.in-addr.arpa" {タイプマスター; ファイル "/etc/bind/db.empty"; };

// IETFプロトコルの割り当て(RFC 5735および5736)
ゾーン "0.0.192.in-addr.arpa" {タイプマスター; ファイル "/etc/bind/db.empty"; };

// TEST-NET- [1-3] for Documentation(RFC 5735、5737および6303)
ゾーン "2.0.192.in-addr.arpa" {タイプマスター; ファイル "/etc/bind/db.empty"; }; ゾーン "100.51.198.in-addr.arpa" {タイプマスター; ファイル "/etc/bind/db.empty"; }; ゾーン "113.0.203.in-addr.arpa" {タイプマスター; ファイル "/etc/bind/db.empty"; };

//ドキュメントのIPv6サンプル範囲(RFC 3849および6303)
ゾーン "8.bd0.1.0.0.2.ip6.arpa" {タイプマスター; ファイル "/etc/bind/db.empty"; };

//ドキュメントとテスト用のドメイン名(BCP 32)
ゾーン「テスト」{タイプマスター; ファイル "/etc/bind/db.empty"; }; ゾーン「例」{タイプマスター; ファイル "/etc/bind/db.empty"; }; ゾーン「無効」{タイプマスター; ファイル "/etc/bind/db.empty"; }; ゾーン "example.com" {タイプマスター; ファイル "/etc/bind/db.empty"; }; ゾーン "example.net" {タイプマスター; ファイル "/etc/bind/db.empty"; }; ゾーン "example.org" {タイプマスター; ファイル "/etc/bind/db.empty"; };

//ルーターベンチマークテスト(RFC 2544および5735)
ゾーン "18.198.in-addr.arpa" {タイプマスター; ファイル "/etc/bind/db.empty"; }; ゾーン "19.198.in-addr.arpa" {タイプマスター; ファイル "/etc/bind/db.empty"; };

// IANA予約済み-旧クラスEスペース(RFC 5735)
ゾーン "240.in-addr.arpa" {タイプマスター; ファイル "/etc/bind/db.empty"; }; ゾーン "241.in-addr.arpa" {タイプマスター; ファイル "/etc/bind/db.empty"; }; ゾーン "242.in-addr.arpa" {タイプマスター; ファイル "/etc/bind/db.empty"; }; ゾーン "243.in-addr.arpa" {タイプマスター; ファイル "/etc/bind/db.empty"; }; ゾーン "244.in-addr.arpa" {タイプマスター; ファイル "/etc/bind/db.empty"; }; ゾーン "245.in-addr.arpa" {タイプマスター; ファイル "/etc/bind/db.empty"; }; ゾーン "246.in-addr.arpa" {タイプマスター; ファイル "/etc/bind/db.empty"; }; ゾーン "247.in-addr.arpa" {タイプマスター; ファイル "/etc/bind/db.empty"; }; ゾーン "248.in-addr.arpa" {タイプマスター; ファイル "/etc/bind/db.empty"; }; ゾーン "249.in-addr.arpa" {タイプマスター; ファイル "/etc/bind/db.empty"; }; ゾーン "250.in-addr.arpa" {タイプマスター; ファイル "/etc/bind/db.empty"; }; ゾーン "251.in-addr.arpa" {タイプマスター; ファイル "/etc/bind/db.empty"; }; ゾーン "252.in-addr.arpa" {タイプマスター; ファイル "/etc/bind/db.empty"; }; ゾーン "253.in-addr.arpa" {タイプマスター; ファイル "/etc/bind/db.empty"; }; ゾーン "254.in-addr.arpa" {タイプマスター; ファイル "/etc/bind/db.empty"; };

// IPv6未割り当てアドレス(RFC 4291)
ゾーン "1.ip6.arpa" {タイプマスター; ファイル "/etc/bind/db.empty"; }; ゾーン "3.ip6.arpa" {タイプマスター; ファイル "/etc/bind/db.empty"; }; ゾーン "4.ip6.arpa" {タイプマスター; ファイル "/etc/bind/db.empty"; }; ゾーン "5.ip6.arpa" {タイプマスター; ファイル "/etc/bind/db.empty"; }; ゾーン "6.ip6.arpa" {タイプマスター; ファイル "/etc/bind/db.empty"; }; ゾーン "7.ip6.arpa" {タイプマスター; ファイル "/etc/bind/db.empty"; }; ゾーン "8.ip6.arpa" {タイプマスター; ファイル "/etc/bind/db.empty"; }; ゾーン "9.ip6.arpa" {タイプマスター; ファイル "/etc/bind/db.empty"; }; ゾーン "a.ip6.arpa" {タイプマスター; ファイル "/etc/bind/db.empty"; }; ゾーン "b.ip6.arpa" {タイプマスター; ファイル "/etc/bind/db.empty"; }; ゾーン "c.ip6.arpa" {タイプマスター; ファイル "/etc/bind/db.empty"; }; ゾーン "d.ip6.arpa" {タイプマスター; ファイル "/etc/bind/db.empty"; }; ゾーン "e.ip6.arpa" {タイプマスター; ファイル "/etc/bind/db.empty"; }; ゾーン "0.f.ip6.arpa" {タイプマスター; ファイル "/etc/bind/db.empty"; }; ゾーン "1.f.ip6.arpa" {タイプマスター; ファイル "/etc/bind/db.empty"; }; ゾーン "2.f.ip6.arpa" {タイプマスター; ファイル "/etc/bind/db.empty"; }; ゾーン "3.f.ip6.arpa" {タイプマスター; ファイル "/etc/bind/db.empty"; }; ゾーン "4.f.ip6.arpa" {タイプマスター; ファイル "/etc/bind/db.empty"; }; ゾーン "5.f.ip6.arpa" {タイプマスター; ファイル "/etc/bind/db.empty"; }; ゾーン "6.f.ip6.arpa" {タイプマスター; ファイル "/etc/bind/db.empty"; }; ゾーン "7.f.ip6.arpa" {タイプマスター; ファイル "/etc/bind/db.empty"; }; ゾーン "8.f.ip6.arpa" {タイプマスター; ファイル "/etc/bind/db.empty"; }; ゾーン "9.f.ip6.arpa" {タイプマスター; ファイル "/etc/bind/db.empty"; }; ゾーン "afip6.arpa" {タイプマスター; ファイル "/etc/bind/db.empty"; }; ゾーン "bfip6.arpa" {タイプマスター; ファイル "/etc/bind/db.empty"; }; ゾーン "0.efip6.arpa" {タイプマスター; ファイル "/etc/bind/db.empty"; }; ゾーン "1.efip6.arpa" {タイプマスター; ファイル "/etc/bind/db.empty"; }; ゾーン "2.efip6.arpa" {タイプマスター; ファイル "/etc/bind/db.empty"; }; ゾーン "3.efip6.arpa" {タイプマスター; ファイル "/etc/bind/db.empty"; }; ゾーン "4.efip6.arpa" {タイプマスター; ファイル "/etc/bind/db.empty"; }; ゾーン "5.efip6.arpa" {タイプマスター; ファイル "/etc/bind/db.empty"; }; ゾーン "6.efip6.arpa" {タイプマスター; ファイル "/etc/bind/db.empty"; }; ゾーン "7.efip6.arpa" {タイプマスター; ファイル "/etc/bind/db.empty"; };

// IPv6 ULA(RFC 4193および6303)
ゾーン "cfip6.arpa" {タイプマスター; ファイル "/etc/bind/db.empty"; }; ゾーン "dfip6.arpa" {タイプマスター; ファイル "/etc/bind/db.empty"; };

// IPv6リンクローカル(RFC 4291および6303)
ゾーン "8.efip6.arpa" {タイプマスター; ファイル "/etc/bind/db.empty"; }; ゾーン "9.efip6.arpa" {タイプマスター; ファイル "/etc/bind/db.empty"; }; ゾーン "aefip6.arpa" {タイプマスター; ファイル "/etc/bind/db.empty"; }; ゾーン "befip6.arpa" {タイプマスター; ファイル "/etc/bind/db.empty"; };

// IPv6非推奨サイト-ローカルアドレス(RFC 3879および6303)
ゾーン "cefip6.arpa" {タイプマスター; ファイル "/etc/bind/db.empty"; }; ゾーン "defip6.arpa" {タイプマスター; ファイル "/etc/bind/db.empty"; }; ゾーン "eefip6.arpa" {タイプマスター; ファイル "/etc/bind/db.empty"; }; ゾーン "fefip6.arpa" {タイプマスター; ファイル "/etc/bind/db.empty"; };

// IP6.INTは非推奨です(RFC 4159)
ゾーン "ip6.int" {タイプマスター; ファイル "/etc/bind/db.empty"; };

ルート@マスター:〜#nano /etc/bind/named.conf.local
////ここでローカル構成を行います////組織で使用されていない場合は//ここに1918ゾーンを追加することを検討してくださいinclude "/etc/bind/zones.rfc1918";
"/etc/bind/zones.rfcFreeBSD"を含めます。

// DNSレコードゾーンの名前、タイプ、場所、および更新権限の宣言////両方のゾーンはMASTERゾーン "swl.fan" {type master; ファイル "/var/lib/bind/db.swl.fan"; }; ゾーン "10.168.192.in-addr.arpa" {タイプマスター; ファイル "/var/lib/bind/db.10.168.192.in-addr.arpa"; };

ルート@マスター:〜#named-checkconf

ルート@マスター:〜#nano /var/lib/bind/db.swl.fan
$ TTL 3H @ IN SOAmaster.swl.fan。 root.master.swl.fan。 (1;シリアル1D;リフレッシュ1H;再試行1W;期限切れ3H); 最小または; 存続時間の負のキャッシュ。 @ IN NSmaster.swl.fan。 @ IN MX 10mail.swl.fan。 @ IN A 192.168.10.5 @ INTXT「フリーソフトウェアのファンのために」; sysadmin IN A 192.168.10.1 fileserver IN A 192.168.10.4 master IN A 192.168.10.5 proxyweb IN A 192.168.10.6 blog IN A 192.168.10.7 ftpserver IN A 192.168.10.8 mail IN A 192.168.10.9

ルート@マスター:〜#nano /var/lib/bind/db.10.168.192.in-addr.arpa
$ TTL 3H @ IN SOAmaster.swl.fan。 root.master.swl.fan。 (1;シリアル1D;リフレッシュ1H;再試行1W;期限切れ3H); 最小または; 存続時間の負のキャッシュ。 @ IN NSmaster.swl.fan。 ; 1 IN PTRsysadmin.swl.fan。 4 IN PTRfileserver.swl.fan。 5 IN PTRmaster.swl.fan。 6 IN PTRproxyweb.swl.fan。 7 IN PTRblog.swl.fan。 8 IN PTRftpserver.swl.fan。 9 IN PTRmail.swl.fan。

ルート@マスター:〜#名前付き-checkzone swl.fan /var/lib/bind/db.swl.fan
ゾーンswl.fan/IN:ロードされたシリアル1 OK
ルート@マスター:〜#named-checkzone 10.168.192.in-addr.arpa /var/lib/bind/db.10.168.192.in-addr.arpa
ゾーン10.168.192.in-addr.arpa/IN:ロードされたシリアル1 OK

ルート@マスター:〜#named-checkconf -zp
ルート@マスター:〜#systemctl restart bind9.service
ルート@マスター:〜#systemctl status bind9.service

Bind9チェック

ルート@マスター:〜#swl.fanaxfrを掘る
root @ master:〜#dig 10.168.192.in-addr.arpa axfr
ルート@マスター:〜#SOAで掘るswl.fan
ルート@マスター:〜#NSswl.fanで掘る
ルート@マスター:〜#MXswl.fanを掘る
ルート@マスター:〜#proxywebホストルート@マスター:〜#nping --tcp -p 53 -c 3 localhost
ルート@マスター:〜#nping --udp -p 53 -c 3 localhost
ルート@マスター:〜#nping --tcp -p 53 -c 3 master.swl.fan
ルート@マスター:〜#nping --udp -p 53 -c 3 master.swl.fan
Npingを開始0.6.47( http://nmap.org/nping )at 2017-05-27 09:32 EDT SENT(0.0037s)UDP 192.168.10.5:53> 192.168.10.245:53 ttl = 64 id = 20743 iplen = 28 SENT(1.0044s)UDP 192.168.10.5:53> 192.168.10.245 .53:64 ttl = 20743 id = 28 iplen = 2.0060 SENT(192.168.10.5s)UDP 53:192.168.10.245> 53:64 ttl = 20743 id = 28 iplen = 3最大rtt:N / A | 最小rtt:N / A | 平均rtt:N / A送信された生のパケット:84(0B)| Rcvd:0(3B)| 失われた:100.00(1%)Npingが完了しました:3.01つのIPアドレスがXNUMX秒でpingされました 

isc-dhcp-server

root @ master:〜#aptitude install isc-dhcp-server
ルート@マスター:〜#nano / etc / default / isc-dhcp-server
#DHCPサーバー(dhcpd)はどのインターフェイスでDHCP要求を処理する必要がありますか? #複数のインターフェイスをスペースで区切ります(例: "eth0 eth1")。
INTERFACES = "eth0"

ルート@マスター:〜#dnssec-keygen -a HMAC-MD5 -b 128 -r / dev / urandom -n USER dhcp-key
ルート@マスター:〜#猫Kdhcp-キー。+ 157 + 51777.private 
秘密鍵形式:v1.3アルゴリズム:157(HMAC_MD5)鍵:Ba9GVadq4vOCixjPN94dCQ ==ビット:AAA =作成:20170527133656公開:20170527133656アクティブ化:20170527133656

ルート@マスター:〜#nano dhcp.key
キーdhcp-キー{
        アルゴリズムhmac-md5;
        秘密 "Ba9GVadq4vOCixjPN94dCQ == ";
}; root @ master:〜#install -o root -g bind -m 0640 dhcp.key /etc/bind/dhcp.key root @ master:〜#install -o root -g root -m 0640 dhcp.key / etc / dhcp /dhcp.key root @ master:〜#nano /etc/bind/named.conf.local
「/etc/bind/dhcp.key」を含めます。

ゾーン "swl.fan" {タイプマスター; ファイル "/var/lib/bind/db.swl.fan";
        allow-update {key dhcp-key; };
}; ゾーン "10.168.192.in-addr.arpa" {タイプマスター; ファイル "/var/lib/bind/db.10.168.192.in-addr.arpa";
        allow-update {key dhcp-key; };
};

ルート@マスター:〜#named-checkconf

ルート@マスター:〜#mv /etc/dhcp/dhcpd.conf /etc/dhcp/dhcpd.conf.original
ルート@マスター:〜#nano /etc/dhcp/dhcpd.conf
ddns-update-style暫定; ddns-更新; ddns-ドメイン名 "swl.fan。"; ddns-rev-domainname "in-addr.arpa。"; クライアントの更新を無視します。 update-optimization false; #Debianの権限で必要になる場合があります。 オプションip-forwardingoff; オプションドメイン名 "swl.fan"; 「/etc/dhcp/dhcp.key」を含めます。 ゾーンswl.fan。 {プライマリ127.0.0.1; キーdhcp-キー; }ゾーン10.168.192.in-addr.arpa。 {プライマリ127.0.0.1; キーdhcp-キー; }共有ネットワークredlocal {サブネット192.168.10.0ネットマスク255.255.255.0 {オプションルーター192.168.10.1; オプションサブネットマスク255.255.255.0; オプションbroadcast-address192.168.10.255; オプションdomain-name-servers192.168.10.5; オプションnetbios-name-servers192.168.10.5; オプションntp-servers192.168.10.5; オプションタイムサーバー192.168.10.5; 範囲192.168.10.30; }}

ルート@マスター:〜#dhcpd -t
インターネットシステムコンソーシアムDHCPサーバー4.3.1Copyright2004-2014インターネットシステムコンソーシアム。 全著作権所有。 詳細については、次のWebサイトをご覧ください。 https://www.isc.org/software/dhcp/
構成ファイル:/etc/dhcp/dhcpd.confデータベースファイル:/var/lib/dh​​cp/dhcpd.leases PIDファイル:/var/run/dhcpd.pid

ルート@マスター:〜#systemctl restart bind9.service 
ルート@マスター:〜#systemctl status bind9.service 

root @ master:〜#systemctl start isc-dhcp-server.service
root @ master:〜#systemctl status isc-dhcp-server.service

ntp

root @ master:〜#aptitude install ntp ntpdate
ルート@マスター:〜#cp /etc/ntp.conf /etc/ntp.conf.original
ルート@マスター:〜#nano /etc/ntp.conf
ドリフトファイル/var/lib/ntp/ntp.driftstatistics loopstats peerstats clockstats filegen loopstats file loopstats type day enable filegen peerstats file peerstats type day enable filegen clockstats file clockstats type day enable server 192.168.10.1 limit -4 default kod notrap nomodify nopeer noquery limit -6デフォルトkodnotrap nomodify nopeernoquery制限127.0.0.1制限:: 1ブロードキャスト192.168.10.255

ルート@マスター:〜#systemctl restart ntp.service 
ルート@マスター:〜#systemctl status ntp.service
ルート@マスター:〜#ntpdate -u sysadmin.swl.fan
27月10日04:01:18769ntpdate [192.168.10.1]:タイムサーバー0.369354オフセットXNUMX秒を調整

ntp、bind9、およびisc-dhcp-serverのグローバルチェック

Linux、BSD、Mac OS、またはWindowsクライアントから、時刻が正しく同期されていることを確認します。 動的IPアドレスを取得し、そのホストの名前が直接および逆引きDNSクエリによって解決されること。 顧客の名前を変更し、すべてのチェックをやり直します。 これまでにインストールされたサービスが正しく機能していることが確実になるまで、先に進まないでください。 DNSとDHCPに関するすべての記事を 中小企業のためのコンピュータネットワーク.

NISサーバーのインストール

ルート@マスター:〜#適性ショーnis
競合:netstd(<= 1.26)説明:ネットワーク情報サービス(NIS)のクライアントとデーモンこのパッケージは、NISドメインをセットアップおよび保守するためのツールを提供します。 もともとイエローページ(YP)として知られているNISは、主にネットワーク内の複数のマシンがパスワードファイルなどの同じアカウント情報を共有できるようにするために使用されます。

root @ master:〜#aptitude install nis
パッケージ構成┌─────────────────────────┤Nis構成├────────────────── ────────┐│このシステムのNIS「ドメイン名」を選択します。 この││マシンを単なるクライアントにしたい場合は、参加したい││NISドメインの名前を入力する必要があります。 ││││または、このマシンをNISサーバーにする場合は、││新しいNIS「ドメイン名」または既存のNIS││ドメインの名前を入力できます。 ││││NISドメイン:││││swl.fan__________________________________________________________________││││ │││└────────────────────────────────────────────── ─────────────────────────────┘  

サービス構成自体が存在しないため、遅延が発生します。 プロセスが完了するまでお待ちください。

ルート@マスター:〜#nano / etc / default / nis
#私たちはNISサーバーですか?もしそうなら、どのような種類(値:false、スレーブ、マスター)ですか?
NISSERVER =マスター

root @ master:〜#nano /etc/ypserv.securenets#securenetsこのファイルは、NISクライアント(およびスレーブサーバー-ypxfrdもこのファイルを使用します)のNISサーバーへのアクセス権を定義します。 このファイルには、ネットマスクとネットワークのペアが含まれています。 #クライアントのIPアドレスは、それらの少なくとも255.255.255.255つと一致する必要があります。 ## 255.0.0.0のネットマスクの代わりに「ホスト」という単語を使用できます。 このファイルでは、ホスト名ではなく、IPアドレスのみが許可されます。 ##ローカルホストのアクセスを常に許可する127.0.0.0 0.0.0.0#この行はすべての人にアクセスを許可します。 調整してください! #0.0.0.0 XNUMX
255.255.255.0 192.168.10.0

root @ master:〜#nano / var / yp / Makefile#passwdファイルをshadowファイルとマージする必要がありますか? #MERGE_PASSWD = true | false
MERGE_PASSWD = true

#グループファイルをgshadowファイルとマージする必要がありますか? #MERGE_GROUP = true | false
MERGE_GROUP = true

NISデータベースを構築します

ルート@マスター:〜#/ usr / lib / yp / ypinit -m
この時点で、NISサーバーを実行するホストのリストを作成する必要があります。 master.swl.fanは、NISサーバーホストのリストにあります。 他のホストの名前を1行にXNUMXつずつ追加し続けてください。 リストが完成したら、次のように入力します。 。 追加する次のホスト:master.swl.fan追加する次のホスト:NISサーバーの現在のリストは次のようになります:master.swl.fanこれは正しいですか? [y / n:y]データベースを構築するのに数分かかります... make [XNUMX]:ディレクトリ '/var/yp/swl.fan'を離れますmaster.swl.fanがNISマスターサーバーとして設定されました。 これで、すべてのスレーブサーバーでypinit -smaster.swl.fanを実行できます。

ルート@マスター:〜#systemctl restart nis
ルート@マスター:〜#systemctl status nis

ローカルユーザーを追加します

ルート@マスター:〜#adduser bilbo
ユーザー `bilbo 'を追加しています...新しいグループ` bilbo'(1001)を追加しています...グループ `bilbo 'を使用して新しいユーザー` bilbo'(1001)を追加しています...ホームディレクトリ `/ home / bilbo 'を作成しています... `/ etc / skel 'からファイルをコピーしています...新しいUNIXパスワードを入力してください:新しいUNIXパスワードを再入力してください:passwd:パスワードが正しく更新されましたbilboのユーザー情報を変更する新しい値を入力するか、Enterキーを押してデフォルトのフルネーム[]:ビルボバギンズの部屋番号[]:職場の電話[]:自宅の電話[]:その他[]:情報は正しいですか? [Y / n]

ルート@マスター:〜#adduserストライドルート@マスター:〜#adduserレゴラス

などがあります。

ルート@マスター:〜#指レゴラス
ログイン:レゴラス名前:レゴラスアーチャーディレクトリ:/ホーム/レゴラスシェル:/ bin / bashログインしたことはありません。 メールはありません。 無策。

NISデータベースを更新します

ルート@マスター:/ var / yp#make
make [1]:ディレクトリ '/var/yp/swl.fan'に入りますpasswd.bynameを更新しています... passwd.byuidを更新しています... group.bynameを更新しています... group.bygidを更新しています... netid.bynameを更新しています。 ..shadow.bynameを更新しています...無視されます-> passwd make [1]とマージされました:ディレクトリ '/var/yp/swl.fan'を離れます

NISオプションをisc-dhcp-serverに追加します

ルート@マスター:〜#nano /etc/dhcp/dhcpd.conf
ddns-update-style暫定; ddns-更新; ddns-ドメイン名 "swl.fan。"; ddns-rev-domainname "in-addr.arpa。"; クライアントの更新を無視します。 update-optimization false; 権威ある; オプションip-forwardingoff; オプションドメイン名 "swl.fan"; 「/etc/dhcp/dhcp.key」を含めます。 ゾーンswl.fan。 {プライマリ127.0.0.1; キーdhcp-キー; }ゾーン10.168.192.in-addr.arpa。 {プライマリ127.0.0.1; キーdhcp-キー; }共有ネットワークredlocal {サブネット192.168.10.0ネットマスク255.255.255.0 {オプションルーター192.168.10.1; オプションサブネットマスク255.255.255.0; オプションbroadcast-address192.168.10.255; オプションdomain-name-servers192.168.10.5; オプションnetbios-name-servers192.168.10.5; オプションntp-servers192.168.10.5; オプションタイムサーバー192.168.10.5;
                オプションnis-domain "swl.fan";
                オプションnis-servers192.168.10.5;
                範囲192.168.10.30; }}

ルート@マスター:〜#dhcpd -t
root @ master:〜#systemctl restart isc-dhcp-server.service

NISクライアントのインストール

  • Debian8「Jessie」のクリーンインストール(グラフィカルインターフェイスなし)から始めます.
root @ mail:〜#hostname -f
mail.swl.fan

ルート@メール:〜#IPアドレス
2:eth0: mtu 1500 qdiscpfifo_fast状態UPグループデフォルトqlen1000リンク/エーテル00:0c:29:25:1f:54 brd ff:ff:ff:ff:ff:ff
    inet 192.168.10.9/24 brd192.168.10.255スコープグローバルeth0

ルート@メール:〜# aptitude インストール nis
ルート@メール:〜# nano /etc/yp.conf ## yp.confypbindプロセスの構成ファイル。 ローカルネット(デフォルト)で#ブロードキャストしてもNISサーバーが見つからない場合は、ここで#NISサーバーを手動で定義できます。 ##このファイルの構文については、ypbindのマニュアルページを参照してください。 ##重要:「ypserver」にはIPアドレスを使用するか、#ホストが/ etc / hostsにあることを確認してください。 このファイルは#XNUMX回だけ解釈され、DNSに到達できない場合、#ypserverを解決できず、ypbindがサーバーにバインドされません。 #ypserver ypserver.network.com ypserver master.swl.fan domain swl.fan

ルート@メール:〜#nano /etc/nsswitch.conf
#/ etc / nsswitch.conf ## GNU Name ServiceSwitch機能の設定例。 # `glibc-doc-reference 'および` info'パッケージがインストールされている場合は、次のことを試してください。# `info libc" Name Service Switch "'このファイルの詳細については。 passwd:compat nis group:compat nis shadow:compat nis gshadow:files hosts:files dns nis network:files protocol:db files services:db files ethers:db files rpc:db files netgroup:nis

ルート@メール:〜#nano /etc/pam.d/common-session
詳細については、#pam-auth-update(8)を参照してください。
セッションオプションpam_mkhomedir.soskel = / etc / skel umask = 077
#これがパッケージごとのモジュールです(「プライマリ」ブロック)

root @ mail:〜#systemctl status nis
root @ mail:〜#systemctl restart nis

セッションを閉じて再開しますが、NISデータベースに登録されているユーザーが master.swl.fan.

ルート@メール:〜#終了
ログアウトメールへの接続が閉じられました。

buzz @ sysadmin:〜$ ssh legolas @ mail
レゴラス@メールのパスワード:ディレクトリ '/ホーム/レゴラス'を作成しています。 Debian GNU / Linuxシステムに含まれているプログラムはフリーソフトウェアです。 各プログラムの正確な配布条件は、/ usr / share / doc / * / copyrightの個々のファイルに記載されています。 Debian GNU / Linuxには、適用法で許可されている範囲で、一切の保証がありません。
レゴラス@メール:〜$ pwd
/ホーム/レゴラス
レゴラス@メール:〜$ 

レゴラスユーザーのパスワードを変更して確認します

レゴラス@メール:〜$ yppasswd 
master.swl.fanのレゴラスのNISアカウント情報を変更します。 古いパスワードを入力してください:legolasmaster.swl.fanでレゴラスのNISパスワードを変更します。 新しいパスワードを入力してください:archerパスワードには、大文字と小文字の両方、または文字以外の文字を含める必要があります。 新しいパスワードを入力してください:Arquero2017新しいパスワードを再入力してください:Arquero2017NISパスワードがmaster.swl.fanで変更されました。

レゴラス@メール:〜$出口
ログアウトメールへの接続が閉じられました。

buzz @ sysadmin:〜$ ssh legolas @ mail
レゴラス@メールのパスワード:Arquero2017

Debian GNU / Linuxシステムに含まれているプログラムはフリーソフトウェアです。 各プログラムの正確な配布条件は、/ usr / share / doc / * / copyrightの個々のファイルに記載されています。 Debian GNU / Linuxには、適用法で許可されている範囲で、一切の保証がありません。 最終ログイン:sysadmin.swl.fanから27年12月51日土曜日50:2017:XNUMX
レゴラス@メール:〜$

サーバーおよびクライアントレベルで実装されたNISサービスは正しく機能します。

LDAP

ウィキペディアから:

  • LDAPは、Lightweight Directory Access Protocol(スペイン語のLightweight / Simplified Directory Access Protocol)の頭字語であり、順序付けられ分散されたディレクトリサービスにアクセスして、環境ネットワーク内のさまざまな情報を検索できるようにするアプリケーションレベルのプロトコルを指します。 LDAPは、照会可能なデータベースと見なされます(ただし、そのストレージシステムは異なる場合があります)。ディレクトリは、論理的かつ階層的な方法で編成された属性を持つオブジェクトのセットです。 最も一般的な例は、アルファベット順に並べられた一連の名前(個人または組織)で構成され、各名前にアドレスと電話番号が付加された電話ディレクトリです。 わかりやすくするために、人の名前、電話番号、住所が書かれた本やフォルダーをアルファベット順に並べたものです。

    LDAPディレクトリツリーは、選択したモデルに応じて、さまざまな政治的、地理的、または組織的な境界を反映する場合があります。 LDAPの現在の展開では、ドメインネームシステム(DNS)名を使用して、階層の上位レベルを構造化する傾向があります。 ディレクトリを下にスクロールすると、人、組織単位、プリンタ、ドキュメント、人のグループ、またはツリー内の特定のエントリ(または複数のエントリ)を表すエントリが表示される場合があります。

    通常、認証情報(ユーザーとパスワード)を保存し、認証に使用されますが、他の情報(ユーザーの連絡先データ、さまざまなネットワークリソースの場所、アクセス許可、証明書など)を保存することもできます。 要約すると、LDAPは、ネットワーク上の一連の情報への統合アクセスプロトコルです。

    現在のバージョンはLDAPv3であり、RFC RFC2251およびRFC2256(LDAPベースドキュメント)、RFC 2829(LDAPの認証方法)、RFC 2830(TLSの拡張)、およびRFC 3377(技術仕様)で定義されています。

    .

長い間、LDAPプロトコル(およびOpenLDAPと互換性があるかどうかに関係なくそのデータベース)は、今日のほとんどの認証システムで最も使用されています。 前のステートメントの例として、LDAPデータベースをバックエンドとして使用してすべてのオブジェクトを格納するシステムの名前(FreeまたはPrivate)を以下に示します。

  • OpenLDAP
  • Apache DirectoryServer
  • Red Hat Directory Server-389 DS
  • Novellディレクトリサービス-eDirectory
  • サン・マイクロシステムズのオープンDS
  • レッドハット アイデンティティ マネージャー
  • 無料IPA
  • SambaNT4クラシックドメインコントローラー。
    このシステムは、Samba 3.xxx + OpenLDAPを使用してTeamSambaによって開発されたことを明確にします。 バックエンド。 マイクロソフトはそのようなものを実装したことはありません。 NT4ドメインコントローラーからActiveDirectoryにジャンプしました
  • Samba 4 ActiveDirectory-ドメインコントローラー
  • ClearOS
  • ゼンティアル
  • UCS Uninvention 企業サーバー
  • Microsoft Active Directoryの

各実装には独自の特性があり、最も標準的で互換性のあるものは OpenLDAP.

Active Directoryは、MicrosoftのオリジナルであろうとSamba 4のオリジナルであろうと、次のようないくつかの主要コンポーネントの結合を構成します。

混同してはいけません ディレクトリサービス oディレクトリサービス Active Directory o ActiveDirectory。 前者はKerberos認証をホストする場合としない場合がありますが、Windowsドメインが提供するMicrosoftネットワークサービスを提供しておらず、Windowsドメインコントローラー自体も持っていません。

ディレクトリサービスまたはディレクトリサービスを使用して、UNIX / LinuxおよびWindowsクライアントとの混合ネットワークでユーザーを認証できます。 後者の場合、ディレクトリサービスとWindowsクライアント自体の間の仲介役として機能するプログラム(フリーソフトウェアなど)を各クライアントにインストールする必要があります。 pGina.

OpenLDAPを使用したディレクトリサービス

  • Debian8「Jessie」のクリーンインストール(グラフィカルインターフェイスなし)から始めます、NISのインストールに使用されるのと同じ「マスター」マシン名、およびそのネットワークインターフェイスと/etc/resolv.confファイルの構成を使用します。 この新しいサーバーに、ntp、bind9、およびisc-dhcp-serverをインストールします。前のXNUMXつのサービスの正しい動作のグローバルチェックを忘れることはありません。.
root @ master:〜#aptitude install slapd ldap-utils

パッケージ構成

<XNUMXxEXNUMX><XNUMXxXNUMX><XNUMXxEXNUMX><XNUMXxEXNUMX><XNUMXxXNUMXC>──────────── スラップ構成 ├─────────────────────┐│LDAP││ディレクトリの管理者エントリのパスワードを入力します。 ││││管理者パスワード:││││******** _________________________________________________________││││ │││└────────────────────────────────────────────── ─────────────────────┘

初期構成を確認します

ルート@マスター:〜#slapcat
dn:dc = swl、dc =ファン
objectClass:トップobjectClass:dcObject objectClass:組織o:swl.fan dc:swl structureObjectClass:組織entryUUID:c8510708-da8e-1036-8fe1-71d022a16904creatorsName:cn = admin、dc = swl、dc =ファンエントリcreateTimestamp20170531205219:20170531205219.833955ZNエントリcreateTimestamp000000 :000ZN000000エントリZ#20170531205219#XNUMX#XNUMX修飾子名前:cn = admin、dc = swl、dc =ファンmodifyTimestamp:XNUMXZ

dn:cn = admin、dc = swl、dc = fan
オブジェクトクラス:simpleSecurityObjectオブジェクトクラス:organizationalRole CN:admin説明:LDAP管理者にuserPassword :: e1NTSEF9emJNSFU1R3l2OWVEN0pmTmlYOVhKSUF4ekY1bU9YQXc = structuralObjectClass:organizationalRole entryUUIDは:c851178e- da8fe1036e entrySw8d-da2fe71 entrySw022c16904e-da20170531205219fe20170531205219.834422e-000000 entrySw000e-da000000fe20170531205219e = entrySXNUMX entrySwXNUMXe-daXNUMXfeXNUMXeXNUMXpmTmlYOVhKSUXNUMX entrySXNUMXe-XNUMXe-エントリ= cXNUMXe XNUMX Z#XNUMX#XNUMX#XNUMX修飾子名前:cn = admin、dc = swl、dc =ファンmodifyTimestamp:XNUMXZ

ファイル/etc/ldap/ldap.confを変更します

ルート@マスター:〜#nano /etc/ldap/ldap.conf
BASE dc = swl、dc =ファンURI    ldap://ローカルホスト

組織単位および一般グループ«ユーザー»

グループ«を持つ多くのシステムの例に従って、必要最小限の組織単位と、すべてのユーザーをメンバーにするPosixグループ«users»を追加します。users«。 グループとの競合の可能性を回避するために、«ユーザー»の名前でそれを命名します«user「システムの」。

ルート@マスター:〜#nano base.ldif
dn:ou = people、dc = swl、dc = fan objectClass:organizationalUnit ou:people dn:ou = groups、dc = swl、dc = fan objectClass:organizationalUnit ou:groups dn:cn = users、ou = groups、dc = swl、dc =ファンobjectClass:posixGroup cn:users gidNumber:10000

ルート@マスター:〜#ldapadd -x -D cn = admin、dc = swl、dc = fan -W -f base.ldif
LDAPパスワードの入力:新しいエントリ「ou = people、dc = swl、dc = fan」の追加新しいエントリ「ou = groups、dc = swl、dc = fan」の追加

追加されたエントリを確認します

ルート@マスター:〜#ldapsearch -x ou = people
#people、swl.fan dn:ou = people、dc = swl、dc = fan objectClass:organizationalUnit ou:people

ルート@マスター:〜#ldapsearch -x ou =グループ
#グループ、swl.fan dn:ou =グループ、dc = swl、dc =ファンobjectClass:organizationalUnit ou:グループ

ルート@マスター:〜#ldapsearch -x cn =ユーザー
#users、groups、swl.fan dn:cn = users、ou = groups、dc = swl、dc = fan objectClass:posixGroup cn:users gidNumber:10000

複数のユーザーを追加します

LDAPで宣言する必要のあるパスワードは、コマンドを使用して取得する必要があります slappasswd、SSHA暗号化パスワードを返します。

ユーザーストライドのパスワード:

ルート@マスター:〜#slappasswd 
新しいパスワード:新しいパスワードを再入力してください: 
{SSHA}Fn8Juihsr137u8KnxGTNPmnV8ai//0lp

ユーザーレゴラスのパスワード

ルート@マスター:〜#slappasswd 
新しいパスワード:新しいパスワードを再入力してください: 
{SSHA}rC50/W3kBmmDd+8+0Lz70vkGEu34tXmD

ユーザーガンダルフのパスワード

ルート@マスター:〜#slappasswd 
新しいパスワード:新しいパスワードを再入力してください: 
{SSHA} oIVFelqv8WIxJ40r12lnh3bp + SXGbV + u

ルート@マスター:〜#nano users.ldif
dn:uid = strides、ou = people、dc = swl、dc = fan objectClass:inetOrgPerson objectClass:posixAccount objectClass:shadowAccount uid:strides cn:strides GiveName:Strides sn:El Rey userPassword: {SSHA}Fn8Juihsr137u8KnxGTNPmnV8ai//0lp
uidNumber:10000 gidNumber:10000メール: trancos@swl.fan
gecos:Strider El Rey loginShell:/ bin / bash homeDirectory:/ home / strider dn:uid = legolas、ou = people、dc = swl、dc = fan objectClass:inetOrgPerson objectClass:posixAccount objectClass:shadowAccount uid:legolas cn:legolas GiveName :レゴラスsn:アーチャーuserPassword: {SSHA}rC50/W3kBmmDd+8+0Lz70vkGEu34tXmD
uidNumber:10001 gidNumber:10000メール: レゴラス@ swl.fan
gecos:Legolas Archer loginShell:/ bin / bash homeDirectory:/ home / legolas dn:uid = gandalf、ou = people、dc = swl、dc = fan objectClass:inetOrgPerson objectClass:posixAccount objectClass:shadowAccount uid:gandalf cn:gandalf GiveName:ガンダルフsn:ウィザードuserPassword: {SSHA} oIVFelqv8WIxJ40r12lnh3bp + SXGbV + u
uidNumber:10002 gidNumber:10000メール: gandalf@swl.fan
gecos:ガンダルフウィザードloginShell:/ bin / bash homeDirectory:/ home / gandalf

ルート@マスター:〜#ldapadd -x -D cn = admin、dc = swl、dc = fan -W -f users.ldif
LDAPパスワードの入力:新しいエントリの追加 "uid = strides、ou = people、dc = swl、dc = fan"新しいエントリの追加 "uid = legolas、ou = people、dc = swl、dc = fan"新しいエントリの追加 "uid =ガンダルフ、ou =人、dc = swl、dc =ファン "

追加されたエントリを確認します

ルート@マスター:〜#ldapsearch -x cn = strides
ルート@マスター:〜#ldapsearch -x uid = strides

slpadデータベースはコンソールユーティリティで管理します

パッケージを選択します ldapscript そのようなタスクのために。 インストールと構成の手順は次のとおりです。

root @ master:〜#aptitude install ldapscripts
 
ルート@マスター:〜#mv /etc/ldapscripts/ldapscripts.conf \
/etc/ldapscripts/ldapscripts.conf.original
 
ルート@マスター:〜#nano /etc/ldapscripts/ldapscripts.conf
SERVER = localhost BINDDN = 'cn = admin、dc = swl、dc = fan' BINDPWDFILE = "/ etc / ldapscripts / ldapscripts.passwd" SUFFIX = 'dc = swl、dc = fan' GSUFFIX = 'ou =グループ' USUFFIX = 'ou = people'#MSUFFIX = 'ou = Computers' GIDSTART = 10001 UIDSTART = 10003#MIDSTART = 10000#OpenLDAPクライアントコマンドLDAPSEARCHBIN = "/ usr / bin / ldapsearch" LDAPADDBIN = "/ usr / bin / ldapadd" LDAPDELETEBIN = " / usr / bin / ldapdelete "LDAPMODIFYBIN =" / usr / bin / ldapmodify "LDAPMODRDNBIN =" / usr / bin / ldapmodrdn "LDAPPASSWDBIN =" / usr / bin / ldappasswd "GCLASS =" posixGroup "#UTEMPLATE =" / etc / etc 。/ldapadduser.template"PASSWORDGEN= "echo%u"

スクリプトがパッケージコマンドを使用していることに注意してください ldap-utils。 実行 dpkg -L ldap-utils | grep / bin 彼らが何であるかを知るために。

ルート@マスター:〜#sh -c "echo -n'admin-password '> \
/etc/ldapscripts/ldapscripts.passwd "
 
ルート@マスター:〜#chmod 400 /etc/ldapscripts/ldapscripts.passwd
 
ルート@マスター:〜#cp /usr/share/doc/ldapscripts/examples/ldapadduser.template.sample \
/etc/ldapscripts/ldapadduser.template
 
ルート@マスター:〜#nano /etc/ldapscripts/ldapadduser.template
dn:uid = 、 、 objectClass:inetOrgPerson objectClass:posixAccount objectClass:shadowAccount uid: cn: 名: sn: 表示名: uidNumber: gidNumber:10000 homeDirectory: loginShell: 郵便物: @ swl.fan geckos: 説明:ユーザーアカウント
 
ルート@マスター:〜#nano /etc/ldapscripts/ldapscripts.conf
##コメントを削除しますUTEMPLATE = "/ etc / ldapscripts / ldapadduser.template"

ユーザー「bilbo」を追加し、グループ「users」のメンバーにします。

ルート@マスター:〜#ldapadduserbilboユーザー
[dn:uid = bilbo、ou = people、dc = swl、dc = fan] "givenName"の値を入力してください:Bilbo [dn:uid = bilbo、ou = people、dc = swl、dc = fan] "の値を入力してくださいsn ":Bagins [dn:uid = bilbo、ou = people、dc = swl、dc = fan]" displayName "の値を入力してください:Bilbo BaginsLDAPにユーザーbilboを正常に追加しましたユーザーbilboのパスワードを正常に設定しました

ルート@マスター:〜#ldapsearch -x uid = bilbo
#bilbo、people、swl.fan dn:uid = bilbo、ou = people、dc = swl、dc = fan objectClass:inetOrgPerson objectClass:posixAccount objectClass:shadowAccount uid:bilbo cn:bilbo GiveName:Bilbo sn:Bagins displayName:Bilbo Bagins uidNumber:10003 gidNumber:10000 homeDirectory:/ home / bilbo loginShell:/ bin / bash mail: bilbo@swl.fan
gecos:bilboの説明:ユーザーアカウント

bilboユーザーのパスワードハッシュを確認するには、認証を使用してクエリを実行する必要があります。

ルート@マスター:〜#ldapsearch -x -D cn = admin、dc = swl、dc = fan -W uid = bilbo

bilboユーザーを削除するには、次の手順を実行します。

ルート@マスター:〜#ldapdelete -x -D cn = admin、dc = swl、dc = fan -W uid = bilbo、ou = people、dc = swl、dc = fan
LDAPパスワードを入力してください:

ルート@マスター:〜#ldapsearch -x uid = bilbo

slapdデータベースはWebインターフェイスを介して管理します

機能的なディレクトリサービスがあり、より簡単に管理したいと考えています。 このタスク用に設計された多くのプログラムがあります。 phpldapadmin, ldap-account-manager、など。リポジトリから直接入手できます。 また、ディレクトリサービスを介して管理することもできます アパッチディレクトリスタジオ、インターネットからダウンロードする必要があります。

詳細については、次のWebサイトをご覧ください。 https://blog.desdelinux.net/ldap-introduccion/、および次の6つの記事。

LDAPクライアント

ステージ:

チームがあるとしましょう mail.swl.fan 記事で見たように実装されたメールサーバーとして Postfix + Dovecot + Squirrelmailとローカルユーザー、CentOSで開発されましたが、Debianや他の多くのLinuxディストリビューションのガイドとして役立つ可能性があります。 すでに宣言したローカルユーザーに加えて、に存在するOpenLDAPデータベースに保存されているユーザーが必要です。 master.swl.fan。 上記を達成するには、«マップアウト»サーバー上のローカルユーザーとしてのLDAPユーザーへ mail.swl.fan。 このソリューションは、PAM認証に基づくすべてのサービスにも有効です。 の一般的な手順 Debianの、は次のとおりです。

root @ mail:〜#aptitude install libnss-ldap libpam-ldap ldap-utils

  ┌────────────────────┤の構成 libnss-ldap ├─────────────────────┐│LDAPサーバーのURI(「Uniform Resource Identifier」、または││UniformResourceIdentifier)を入力します。 この文字列は││«に似ていますldap://: /»。 ││使用することもできます«LDAP://» または「ldapi://」。 ポート番号はオプションです。 ││││ドメインネームサービス││が利用できない場合の障害を回避するために、IPアドレスを使用することをお勧めします。 ││││LDAPサーバーURI:││││ ldap://master.swl.fan__________________________________________________ ││││ │││└────────────────────────────────────────────── ───────────────────────────┘┌────────────────────── ┤の構成 libnss-ldap ├──────────────────────┐│LDAP検索ベースの識別名(DN)を入力します。 多くのサイトは、この││目的のためにドメイン名コンポーネントを使用しています。 たとえば、ドメイン「example.net」は、検索ベースの識別名として││「dc = example、dc = net」を使用します。 ││││検索ベースの識別名(DN):││││dc= swl、dc =ファン____________________________________________________________││││ │││└────────────────────────────────────────────── ─────────────────────────────┘┌──────────────────── ──┤の構成 libnss-ldap ├──────────────────────┐│ldapnsが使用するLDAPプロトコルのバージョンを入力します。 ││利用可能な最大のバージョン番号を使用することをお勧めします。 ││││使用するLDAPバージョン:││││                                     3                                     ││2│││││││ │││└─────────────────────────────────────────────── ─────────────────────────────┘┌──────────────────── ──┤の構成 libnss-ldap ├──────────────────────┐│││root権限を持つnssクエリに使用するアカウントを選択します。 ││││注:このオプションを機能させるには、アカウントに、ユーザーに関連付けられているLDAP属性にアクセスできるようにするためのアクセス許可が必要です││「シャドウ」エントリ、およびユーザーと││グループのパスワード。 ││││ルートのLDAPアカウント:││││cn= admin、dc = swl、dc =ファン___________________________________________________│││││ │││└────────────────────────────────────────────── ─────────────────────────────┘┌──────────────────── ──┤の構成 libnss-ldap ├─────────────────────┐│libnss-ldapがルートLDAPアカウントでLDAPディレクトリへの認証を試みるときに使用するパスワードを入力します。 ││││パスワードは、rootのみがアクセスできる別のファイル││( "/ etc / libnss-ldap.secret")に保存されます。 ││││空のパスワードを入力すると、古いパスワードが再利用されます。 ││││ルートLDAPアカウントのパスワード:││││******** ________________________________________________________________││││ │││└─────────────────────────────────────────────── ────────────────────────────┘┌───────────────────── ─┤の構成 libnss-ldap ├──────────────────────┐│││nsswitch.confは自動的に管理されません││││ファイルを変更する必要があります "/etc/nsswitch.conf "libnss-ldapパッケージを機能させたい場合は、LDAPデータソースを使用します。 ││「/usr/share/doc/libnss-ldap/examples/nsswitch.ldap」のサンプルファイル││をnsswitch構成の例として使用するか、││現在の構成にコピーすることができます。 ││││このパッケージを削除する前に、基本サービス││が引き続き機能するように、nsswitch.confファイルから「ldap」エントリを削除すると便利な場合があることに注意してください。 ││││ │││└────────────────────────────────────────────── ─────────────────────────────┘┌──────────────────── ──┤の構成 libpam-ldap ├──────────────────────┐│││このオプションを使用すると、PAMを使用するパスワードツールでローカルパスワードを変更できます。 ││││LDAP管理者アカウントのパスワードは、管理者のみが読み取ることができる別の││ファイルに保存されます。 ││││NFS経由で「/ etc」をマウントする場合は、このオプションを無効にする必要があります。 ││││LDAP管理者アカウントが││ローカル管理者として動作することを許可しますか? ││││                                            │││└─────────────────────────────────────────────── ─────────────────────────────┘┌──────────────────── ──┤の構成 libpam-ldap ├──────────────────────┐│││LDAPサーバーがentradas│エントリを取得する前に識別を強制するかどうかを選択します。 ││││この設定が必要になることはめったにありません。 ││││ユーザーはLDAPデータベースにアクセスする必要がありますか? ││││                                               │││└────────────────────────────────────────────── ─────────────────────────────┘┌──────────────────── ──┤の構成 libpam-ldap ├──────────────────────┐│LDAP管理者アカウントの名前を入力します。 ││││このアカウントはデータベース管理に自動的に使用されます││したがって、適切な管理者権限が必要です。 ││││LDAP管理者アカウント:││││cn= admin、dc = swl、dc =ファン___________________________________________________││││ │││└────────────────────────────────────────────── ─────────────────────────────┘┌──────────────────── ──┤の構成 libpam-ldap ├──────────────────────┐│管理者アカウントのパスワードを入力してください。 ││││パスワードはファイル「/etc/pam_ldap.secret」に保存されます。 ││管理者は、このファイルを読み取ることができる唯一の人であり、││libpam-ldapが││データベース内の接続の管理を自動的に制御できるようにします。 ││││このフィールドを空白のままにすると、以前に保存したパスワード││が再び使用されます。 ││││LDAP管理者パスワード:││││******** _________________________________________________________________│││││ │││└────────────────────────────────────────────── ─────────────────────────────┘  

ルート@メール:〜#nano /etc/nsswitch.conf
#/ etc / nsswitch.conf ## GNU Name ServiceSwitch機能の設定例。 # `glibc-doc-reference 'および` info'パッケージがインストールされている場合は、次のことを試してください。# `info libc" Name Service Switch "'このファイルの詳細については。 passwd:compat LDAP
グループ:compat LDAP
影:互換性 LDAP
gshadow:ファイルホスト:ファイルdnsネットワーク:ファイルプロトコル:dbファイルサービス:dbファイルethers:dbファイルrpc:dbファイルnetgroup:nis

ファイルを編集しましょう /etc/pam.d/common-password、26行目に移動し、値«を削除します。use_authtok「:

ルート@メール:〜#nano /etc/pam.d/common-password
## /etc/pam.d/common-password-すべてのサービスに共通のパスワード関連モジュール##このファイルは、他のサービス固有のPAM構成ファイルから含まれています。#サービスを定義するモジュールのリストが含まれている必要があります。 #ユーザーパスワードの変更に使用されます。 デフォルトはpam_unixです。 #pam_unixオプションの説明:##「sha512」オプションは、ソルトされたSHA512パスワードを有効にします。 このオプションがない場合、#デフォルトはUnixcryptです。 以前のリリースでは、オプション「md5」が使用されていました。 ##「obscure」オプションは、login.defsの古い「OBSCURE_CHECKS_ENAB」オプションを置き換えます。 ##他のオプションについては、pam_unixのマンページを参照してください。 #pam 1.0.1-6以降、このファイルはデフォルトでpam-auth-updateによって管理されます。 #これを利用するには、デフォルトブロックの前または後に#ローカルモジュールを構成し、#pam-auth-updateを使用して他のモジュールの選択を管理することをお勧めします。 詳細については、#pam-auth-update(8)を参照してください。 #これがパッケージごとのモジュール(「プライマリ」ブロック)のパスワードです[成功= 2デフォルト=無視] pam_unix.soあいまいなsha512
パスワード[成功= 1 user_unknown =デフォルトを無視=死ぬ] pam_ldap.so try_first_pass
#これは、パスワードに必要なpam_deny.soに成功するモジュールがない場合のフォールバックです。#まだ存在しない場合は、正の戻り値でスタックをプライミングします。 #これにより、成功コードが設定されていないという理由だけでエラーが返されるのを回避できます。#上記のモジュールはそれぞれパスワードが必要なpam_permit.soを飛び回るだけなので、#パッケージごとのモジュール(「追加」ブロック)が#pam-の終わりになります。 auth-updateconfig

必要な場合 LDAPに保存されているユーザーのローカルログイン。フォルダが自動的に作成されるようにします。 ホーム、ファイルを編集する必要があります /etc/pam.d/common-session そして、ファイルの最後に次の行を追加します。

セッションオプションpam_mkhomedir.soskel = / etc / skel umask = 077

以前に開発されたOpenLDAPディレクトリサービスの例では、作成された唯一のローカルユーザーはユーザーでした バズ、LDAPでユーザーを作成します 歩幅, レゴラス, ガンダルフ、そして、 ビルボ。 これまでに行った構成が正しい場合は、ローカルユーザーと、ローカルとしてマップされているがリモートLDAPサーバーに保存されているユーザーを一覧表示できるはずです。

root @ mail:〜#getent passwd 
バズ:x:1001:1001:バズDebian First OS 、、、:/ホーム/バズ:/ビン/バッシュ
ストライド:x:10000:10000:ストライドエルレイ:/ホーム/ストライド:/ビン/バッシュ
レゴラス:x:10001:10000:レゴラスアーチャー:/ホーム/レゴラス:/ビン/バッシュ
ガンダルフ:x:10002:10000:ガンダルフウィザード:/ホーム/ガンダルフ:/ビン/バッシュ
ビルボ:x:10003:10000:ビルボ:/ホーム/ビルボ:/ビン/バッシュ

システム認証の変更後、重要なサービスがない場合はサーバーを再起動することが有効です。

ルート@メール:〜#再起動

後でサーバーでローカルセッションを開始します mail.swl.fan LDAPデータベースに保存されているユーザーの資格情報を使用して master.swl.fan。 SSH経由でログインしてみることもできます。

 

buzz @ sysadmin:〜$ ssh gandalf @ mail
gandalf @ mailのパスワード:ディレクトリ '/ home / gandalf'を作成しています。 Debian GNU / Linuxシステムに含まれているプログラムはフリーソフトウェアです。 各プログラムの正確な配布条件は、/ usr / share / doc / * / copyrightの個々のファイルに記載されています。 Debian GNU / Linuxには、適用法で許可されている範囲で、一切の保証がありません。
ガンダルフ@メール:〜$ su
パスワード:

root @ mail:/ home / gandalf#getent group
バズ:x:1001:ユーザー:*:10000:

root @ mail:/ home / gandalf#exit
終了する

ガンダルフ@メール:〜$ ls -l / home /
合計8drwxr-xr-x 2 バズバズ     4096 Jun 17 12:25 buzz drwx ------ 2 ガンダルフユーザー 4096 Jun 17:13ガンダルフ

サーバーおよびクライアントレベルで実装されたディレクトリサービスは正しく機能します。

Kerberos

ウィキペディアから:

  • Kerberosは、によって作成されたコンピュータネットワーク認証プロトコルです。 マサチューセッツ工科大学(MIT) これにより、安全でないネットワーク上のXNUMX台のコンピューターが相互にIDを安全に証明できます。 その設計者は最初にクライアントサーバーモデルに焦点を合わせ、相互認証を提供します。クライアントとサーバーの両方が互いのIDを検証します。 認証メッセージは防止するために保護されています 盗聴 y リプレイ攻撃.

    Kerberosは対称鍵暗号に基づいており、信頼できるサードパーティが必要です。 さらに、非対称キー暗号化を使用できるようにするためのプロトコルの拡張機能があります。

    Kerberosはに基づいています Needham-Schroederプロトコル。 「キー配布センター」(KDC)と呼ばれる信頼できるサードパーティを使用します。これは、「認証サーバー」(ASまたは認証サーバー)と「チケット発行サーバー」(TGSまたはチケット付与サーバー)のXNUMXつの別個の論理部分で構成されます。 )。 Kerberosは、ユーザーのIDを証明するのに役立つ「チケット」に基づいて機能します。

    Kerberosは秘密鍵のデータベースを維持しています。 ネットワーク上の各エンティティ(クライアントであれサーバーであれ)は、それ自体とKerberosだけが知っている秘密鍵を共有します。 このキーの知識は、エンティティのIDを証明するのに役立ちます。 XNUMXつのエンティティ間の通信の場合、Kerberosはセッションキーを生成します。セッションキーは、問題を保護するために使用できます。.

Kerberosのデメリット

De 発生した:

それでも Kerberos 一般的なセキュリティの脅威を取り除きます。さまざまな理由で実装が難しい場合があります。

  • 標準のパスワードデータベースからのユーザーパスワードの移行 UNIXKerberosパスワードデータベースへの/ etc / passwdや/ etc / shadowなどは面倒な場合があり、このタスクを実行するための迅速なメカニズムはありません。
  • Kerberosは、各ユーザーが信頼されていることを前提としていますが、信頼されていないネットワーク上で信頼されていないマシンを使用しています。 その主な目的は、暗号化されていないパスワードがネットワーク経由で送信されないようにすることです。 ただし、適切なユーザー以外のユーザーが認証のために発券機(KDC)にアクセスできる場合、Kerberosは危険にさらされます。
  • アプリケーションでKerberosを使用するには、Kerberosライブラリを適切に呼び出すようにコードを変更する必要があります。 この方法で変更されたアプリケーションは、kerberizedと見なされます。 一部のアプリケーションでは、アプリケーションのサイズまたはその設計により、これは過度のプログラミング作業になる可能性があります。 他の互換性のないアプリケーションの場合、ネットワークサーバーとそのクライアントの通信方法を変更する必要があります。 繰り返しますが、これにはかなりのプログラミングが必要になる場合があります。 一般に、Kerberosをサポートしないクローズドソースアプリケーションが最も問題になります。
  • 最後に、ネットワークでKerberosを使用することにした場合は、それがオールオアナッシングの選択であることを理解する必要があります。 ネットワークでKerberosを使用することにした場合、認証にKerberosを使用しないサービスにパスワードが渡されると、パケットが傍受されるリスクがあることに注意する必要があります。 したがって、ネットワークはKerberosを使用してもメリットはありません。 Kerberosでネ​​ットワークを保護するには、暗号化されていないパスワードを送信するすべてのクライアント/サーバーアプリケーションのKerberos化されたバージョンのみを使用するか、ネットワーク上でこれらのアプリケーションを使用しないでください。.

OpenLDAPをKerberosバックエンドとして手動で実装および構成することは簡単な作業ではありません。 ただし、後で、Samba 4 Active Directory-ドメインコントローラーが、Sysadmin、DNSサーバー、Microsoftネットワークとそのドメインコントローラー、ほぼすべてのオブジェクトのバックエンドとしてのLDAPサーバー、およびMicrosoftスタイルのActiveDirectoryの基本コンポーネントとしてのKerberosベースの認証サービス。

これまで、「KerberizedNetwork」を実装する必要はありませんでした。 これが、Kerberosの実装方法について記述しなかった理由です。

Samba 4 ActiveDirectory-ドメインコントローラー

重要:

サイトよりも優れたドキュメントはありません wiki.samba.org。 その塩に値するSysadminは、そのサイトに英語でアクセスし、TeamSamba自身が作成したSamba4専用の多数のページを閲覧する必要があります。 私はそれを置き換えるためにインターネット上で利用可能なドキュメントがあるとは思わない。 ちなみに、各ページの下部に反映されている訪問数を観察してください。 この例は、メインページまたは«メインページ»にアクセスしたことです。 276,183 本日現在の時間20年2017月10日10:6東部標準時。 さらに、そのページはXNUMX月XNUMX日に変更されたため、ドキュメントは非常に最新の状態に保たれています。.

ウィキペディアから:

Sambaは、UNIXライクなシステム向けのMicrosoft Windowsファイル共有プロトコル(以前はSMBと呼ばれていましたが、最近CIFSに名前が変更されました)の無料実装です。 このように、GNU / Linux、Mac OS X、またはUnixを搭載したコンピューターは、一般にサーバーのように見えたり、Windowsネットワークのクライアントとして機能したりする可能性があります。 Sambaを使用すると、ユーザーをプライマリドメインコントローラー(PDC)として、ドメインメンバーとして、さらにはWindowsベースのネットワークのActiveDirectoryドメインとして検証することもできます。 印刷キュー、共有ディレクトリを提供し、独自のユーザーアーカイブで認証できることは別として。

Sambaを実行できるUnixライクなシステムには、GNU / Linuxディストリビューション、Solaris、およびさまざまなBSDバリアントがあります。 AppleのMacOS XServerを見つけることができます.

内部DNSを備えたSamba4 AD-DC

  • Debian8「Jessie」のクリーンインストール(グラフィカルインターフェイスなし)から始めます.

初期チェック

ルート@マスター:〜#ホスト名
マスター
ルート@マスター:〜#ホスト名--fqdn
master.swl.fan
ルート@マスター:〜#ip addr
1:何: mtu 65536 qdisc noqueue state UNKNOWN group default link / loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever Preferred_lft forever inet6 :: 1/128スコープホストvalid_lftforever Preferred_lft forever 2:eth0: mtu 1500 qdisc pfifo_fast state UNKNOWN group default qlen 1000 link / ether 00:0c:29:80:3b:3f brd ff:ff:ff:ff:ff:ff
    inet 192.168.10.5/24 brd192.168.10.255スコープグローバルeth0
       valid_lft forever Preferred_lft forever inet6 fe80 :: 20c:29ff:fe80:3b3f / 64スコープリンクvalid_lftforever Preferred_lft forever
ルート@マスター:〜#cat /etc/resolv.conf
swl.fanネームサーバー127.0.0.1を検索します
  • ブランチを宣言する メイン ただ、それは私たちの目的には十分すぎるほどです.
ルート@マスター:〜#猫/etc/apt/sources.list
deb http://192.168.10.1/repos/jessie-8.6/debian/ ジェシー メイン
deb http://192.168.10.1/repos/jessie-8.6/debian/security/ ジェシー/アップデート メイン

EximとユーティリティによるPostfix

root @ master:〜#aptitude install postfix htop mc deborphan

  ┌────────────────────────┤Postfix設定├───────────────────── ────┐│あなたの││ニーズに最も適したメールサーバー構成のタイプを選択してください。 ││││構成なし:││現在の構成をそのまま維持します。 ││インターネットサイト:││メールはSMTPを使用して直接送受信されます。 ││「スマートホスト」を使用したインターネット:││メールはSMTPを使用して直接受信するか、「fetchmail」などの││ツールを実行して受信します。 送信メールは、││「スマートホスト」を使用して送信されます。 ││ローカルメールのみ:││配信されるメールはローカルユーザーのみです。 いいえ││ネットワークがあります。 ││││メール設定の一般的なタイプ:││││設定なし││インターネットサイト││「スマートホスト」を備えたインターネット││衛星システム││                         ローカルメールのみ                                │││││││                                     │││└────────────────────────────────────────────── ────────────────────────────┘┌───────────────────── ─────┤Postfixの設定├─────────────────────────┐│「メールシステム名」は、│のドメイン名です。 │は、ドメイン名のない_ALL_メールアドレスを「修飾」するために使用されます。 これには、「ルート」との間のメールが含まれます。││マシンにメールを送信させないでください。 root@example.org 〜││未満 root@example.org 尋ねた。 ││││他のプログラムはこの名前を使用します。 一意の││修飾ドメイン名(FQDN)である必要があります。 ││││したがって、ローカルマシンのメールアドレスが││の場合 some@example.org、このオプションの正しい値はexample.orgになります。 ││││メールシステム名:││││master.swl.fan___________________________________________________________││││ │││└────────────────────────────────────────────── ─────────────────────────────┘  

掃除します

ルート@マスター:〜#適性パージ〜c
root @ master:〜#aptitude install -f
ルート@マスター:〜#適性クリーン
ルート@マスター:〜#適性自動クリーン

Samba4をコンパイルするための要件をインストールします その他の必要なパッケージ

root @ master:〜#aptitude install acl attr autoconf bison \
ビルドに不可欠な debhelper dnsutils docbook-xml docbook-xsl flex gdb \
krb5-ユーザーlibacl1-devlibaio-dev libattr1-dev libblkid-dev libbsd-dev \
libcap-dev libcups2-dev libgnutls28-dev libjson-perl \
libldap2-dev libncurses5-dev libpam0g-dev libparse-yapp-perl \
libpopt-dev libreadline-dev perl perl-modules pkg-config \
python-all-dev python-dev python-dnspython python-crypto \
xsltproc zlib1g-dev libgpgme11-dev python-gpgme python-m2crypto \
libgnutls28-dbg gnutls-dev ldap-utils krb5-config

 ┌───────────────┤Kerberos認証の構成├───────────────┐│ユーザーがKerberosを使用して名前を指定しようとしたとき││プリンシパルまたはユーザーが、プリンシパル││が属する管理Kerberosドメインを明確にせずに、システムはデフォルトの││レルムを使用します。  デフォルトのレルムは、ローカルマシンで実行されているKerberosサービスの││レルムとしても使用できます。  ││通常、デフォルトのレルムはローカルDNS││ドメインの大文字の名前です。  ││││Kerberosバージョン5のデフォルトレルム:││││SWL.FAN__________________________________________________________________││││ │││└─────────────────────────────────────────────── ─────────────────────────────┘┌───────────────┤認証Kerberosの構成├───────────────┐│KerberosのSWL.FANレルムにKerberosサーバーの名前をスペースで区切って入力します。  ││││あなたのレルム用のKerberosサーバー:││││master.swl.fan___________________________________________________________││││ │││└─────────────────────────────────────────────── ─────────────────────────────┘┌───────────────┤認証Kerberosの構成├───────────────┐│KerberosSWL.FANレルムの管理サーバー名(パスワード変更)││を入力します。   

DNSサービスがまだインストールされていないため、上記のプロセスには少し時間がかかりました。 ただし、ファイル設定によってドメインを正しく選択しました /etc/hosts. ファイル内でそれを覚えておいてください /etc/resolv.conf ドメインネームサーバーとしてIP127.0.0.1に宣言しました.

/ etc / ldap / ldap / confファイルを構成します

ルート@マスター:〜#nano /etc/ldap/ldap.conf
BASE dc = swl、dc =ファンURI ldap://master.swl.fan

コマンドを使用したクエリの場合 ldapsearch rootユーザーから作成されたタイプは ldapsearch -x -W cn = xxxx、ファイルを作成する必要があります /root/.ldapsearc 次の内容で:

ルート@マスター:〜#nano .ldaprc
BINDDN CN =管理者、CN =ユーザー、DC = swl、DC =ファン

ファイルシステムはACLをサポートする必要があります-アクセス制御リスト

ルート@マスター:〜#nano / etc / fstab
#/ etc / fstab:静的ファイルシステム情報。 ##「blkid」を使用して、デバイスのユニバーサル一意識別子を#出力します。 これは、ディスクが追加および削除された場合でも機能するデバイスに#名前を付けるためのより堅牢な方法としてUUID =とともに使用できます。 fstab(5)を参照してください。 ## #/インストール中に/ dev / sda1にあったUUID = 33acb024-291b-4767-b6f4-cf207a71060c / ext4 user_xattr、acl、barrier = 1、noatime、errors = remount-ro 0 1
#インストール中にスワップがオン/ dev / sda5であったUUID = cb73228a-615d-4804-9877-3ec225e3ae32 none swap sw 0 0 / dev / sr0 / media / cdrom0 udf、iso9660 user、noauto 0 0

ルート@マスター:〜#マウント-a

ルート@マスター:〜#touchtesting_acl.txt
ルート@マスター:〜#setfattr -n user.test -v test tests_acl.txt
ルート@マスター:〜#setfattr -n security.test -v test2 tests_acl.txt
ルート@マスター:〜#getfattr -d tests_acl.txt
#ファイル:testing_acl.txt user.test = "test"

ルート@マスター:〜#getfattr -n security.test -d tests_acl.txt
#ファイル:testing_acl.txt security.test = "test2"

ルート@マスター:〜#setfacl -mg:adm:rwx tests_acl.txt

ルート@マスター:〜#getfacl tests_acl.txt
#ファイル:testing_acl.txt#所有者:ルート#グループ:ルートユーザー:: rw-グループ:: r--グループ:adm:rwxマスク:: rwxその他:: r--

Samba 4ソースを入手し、コンパイルしてインストールします。

バージョンソースファイルをダウンロードすることを強くお勧めします 安定した サイトから https://www.samba.org/。 この例では、バージョンをダウンロードします samba-4.5.1.tar.gz フォルダに向かって / opt.

ルート@マスター:〜#cd / opt
ルート@マスター:/ opt#wget https://download.samba.org/pub/samba/stable/samba-4.5.1.tar.gz
root @ master:/ opt#tar xvfz samba-4.5.1.tar.gz
ルート@マスター:/ opt#cd samba-4.5.1 /

構成オプション

構成オプションをカスタマイズする場合は、以下を実行します。

ルート@マスター:/opt/samba-4.5.1# ./configure --help

細心の注意を払って、必要なものを選択してください。 ダウンロードしたパッケージが、使用しているLinuxディストリビューション(この場合はDebian 8.6 Jessie)にインストールできるかどうかを確認することをお勧めします。

ルート@マスター:/opt/samba-4.5.1# 。/設定 分散チェック

samba-4.5.1を構成、コンパイル、インストールします

  • 以前にインストールされた要件と、約8604メガバイトの重量の4.5.1ファイル(コンパクトなsamba-101.7.tar.gzを構成する)から(約3メガバイトのsource4およびsource61.1フォルダーを含む)、代わりのファイルを取得します。あらゆる実稼働環境で許容できる以上の品質と安定性を備えたMicrosoftスタイルのActiveDirectory。 私たちは、フリーソフトウェアSamba4を提供する際のTeamSambaの仕事を強調しなければなりません。.

以下のコマンドは、ソースからパッケージをコンパイルおよびインストールするための古典的なコマンドです。 プロセス全体が続く間、私たちは辛抱強くなければなりません。 これは、有効で正しい結果を得る唯一の方法です。

ルート@マスター:/opt/samba-4.5.1# ./configure --with-systemd --disable-cups
ルート@マスター:/opt/samba-4.5.1# make
ルート@マスター:/opt/samba-4.5.1# make installを

コマンド処理中 make、Samba3およびSamba4ソースがコンパイルされていることがわかります。そのため、Team Sambaは、Samba 4 + OpenLDAPに基づくドメインコントローラーとファイルサーバー、またはそれ以前の両方で、バージョン3がバージョン3の自然な更新であると断言しています。 Samba4のバージョン。

Sambaのプロビジョニング

DNSとして使用します SAMBA_INTERNAL。 で https://wiki.samba.org/index.php?title=Samba_Internal_DNS_Back_End 詳細をお知らせします。 管理者ユーザーのパスワードを尋ねられた場合は、8文字以上の長さのいずれかを入力し、大文字と小文字、および数字を入力する必要があります。

プロビジョニングを続行する前に、作業を楽にするために、 path ファイル内のSamba実行可能ファイルの .bashrc、次に閉じて再度ログインします。

ルート@マスター:〜#nano .bashrc
#〜/ .bashrc:非ログインシェルに対してbash(1)によって実行されます。 #注:PS1とumaskはすでに/ etc / profileに設定されています。 #rootに異なるデフォルトが必要でない限り、これは必要ありません。 #PS1 = '$ {debian_chroot:+($ debian_chroot)} \ h:\ w \ $'#umask 022# `ls 'を色付けしたい場合は、次の行のコメントを解除できます。#export LS_OPTIONS ='-color = auto '#eval "` dircolors` "#alias ls =' ls $ LS_OPTIONS '#alias ll =' ls $ LS_OPTIONS -l '#alias l =' ls $ LS_OPTIONS -lA '##間違いを避けるためのいくつかのエイリアス: #alias rm = 'rm -i'#alias cp = 'cp -i'#alias mv = 'mv -i'
宣言-xPATH = "/ usr / local / sbin:/ usr / local / bin:/ usr / sbin:/ usr / bin:\ / sbin:/ bin:/ usr / local / samba / sbin:/ usr / local / samba / bin "

root @ master:〜#exitlogoutマスターへの接続が閉じられました。 xeon @ sysadmin:〜$ ssh root @ master

root @ master:〜#samba-toolドメインプロビジョニング--use-rfc2307 --interactive
レルム[SWL.FAN]: SWL.ファン
 ドメイン[SWL]: SWL
 サーバーの役割(dc、メンバー、スタンドアロン)[dc]: dc
 DNSバックエンド(SAMBA_INTERNAL、BIND9_FLATFILE、BIND9_DLZ、NONE)[SAMBA_INTERNAL]: SAMBA_INTERNAL
 DNSフォワーダーのIPアドレス(転送を無効にするには「none」と記述します)[192.168.10.5]: 8.8.8.8
管理者パスワード: TuPassword2017
パスワードを再入力してください: TuPassword2017
IPv4アドレスの検索IPv6アドレスの検索IPv6アドレスは割り当てられませんshare.ldbの設定secrets.ldbの設定レジストリの設定特権データベースの設定idmapdbの設定SAMdbの設定sam.ldbパーティションと設定の設定up sam.ldb rootDSE Samba 4およびADスキーマのプリロードDomainDNの追加:DC = swl、DC = fan構成コンテナーの追加sam.ldbスキーマのセットアップsam.ldb構成データのセットアップ表示指定子のセットアップ表示指定子の変更ユーザーコンテナーの追加ユーザーコンテナの変更コンピュータコンテナの追加コンピュータコンテナの変更sam.ldbデータの設定既知のセキュリティプリンシパルの設定sam.ldbユーザーとグループの設定自己結合の設定DNSアカウントの追加CN = MicrosoftDNS、CN =システム、DC = swl、DCの作成=ファンDomainDnsZonesおよびForestDnsZonesパーティションの作成DomainDnsZonesおよびForestDnsZonesパーティションへの入力同期されたとしてのsam.ldbrootDSEマーキングの設定プロビジョニングGUIDの修正Samba 4に適したKerberos構成が/usr/local/samba/private/krb5.confで生成されています。偽のypサーバー設定のセットアップ上記のファイルがインストールされると、Samba4サーバーはサーバーの役割:アクティブディレクトリドメインを使用できるようになります。コントローラホスト名:マスターNetBIOSドメイン:SWL DNSドメイン:swl.fanドメインSID:S-1-5-21-32182636-2892912266-1582980556

の出力で示されるように、Kerberos構成ファイルをコピーすることを忘れないでください。 プロビジョニング:

ルート@マスター:〜#cp /usr/local/samba/private/krb5.conf /etc/krb5.conf

コマンドを入力しない samba-tool あなたのフルネームで、私たちは短い名前でシンボリックリンクを作成します ツール:

ルート@マスター:〜#ln -s / usr / local / samba / bin / samba-tool / usr / local / samba / bin / tool

NTPをインストールします

Active Directoryの基本的な要素は、ネットワークタイムサービスです。認証はKerberosとそのチケットを介して行われるため、Samba 4AD-DCとの時刻の同期が不可欠です。

ルート@マスター:〜#aptitude install ntp
ルート@マスター:〜#mv /etc/ntp.conf /etc/ntp.conf.original

ルート@マスター:〜#nano /etc/ntp.conf
ドリフトファイル/var/lib/ntp/ntp.driftntpsigndsocket / usr / local / samba / var / lib / ntp_signd statistics loopstats peerstats clockstats filegen loopstats file loopstats type day enable filegen peerstats file peerstats type day enable filegenstats file clockstats clock type day enable server 192.168.10.1制限-4デフォルトkodnotrap nomodify nopeernoquery制限-6デフォルトkodnotrap nomodify nopeernoquery制限デフォルトmssntp制限127.0.0.1制限:: 1ブロードキャスト192.168.10.255

root @ master:〜#service ntp restart
root @ master:〜#service ntp status

ルート@マスター:〜#テール-f / var / log / syslog

調べるとき syslog 上記のコマンドを使用するか、 Journalctl -f メッセージが表示されます:

19月12日13:21:1498マスターntpd_intres [XNUMX]:終了する前に親が死亡し、終了しました

サービスを再起動して再試行する必要があります。 次に、フォルダを作成します ntp_signd:

ルート@マスター:〜#ls -ld / usr / local / samba / var / lib / ntp_signd
ls:/ usr / local / samba / var / lib / ntp_signdにアクセスできません:ファイルまたはディレクトリが存在しません

ルート@マスター:〜#mkdir / usr / local / samba / var / lib / ntp_signd
root @ master:〜#chown root:ntp / usr / local / samba / var / lib / ntp_signd /
root @ master:〜#chmod 750 / usr / local / samba / var / lib / ntp_signd / root @ master:〜#chmod gs、g + x / usr / local / samba / var / lib / ntp_signd /

#samba.wiki.orgで要求されたとおり
ルート@マスター:〜#ls -ld / usr / local / samba / var / lib / ntp_signd
drwxr-x --- 2 root ntp 4096 Jun 19 12:21 / usr / local / samba / var / lib / ntp_signd

systemdを使用してSambaの開始を構成します

ルート@マスター:〜#nano /lib/systemd/system/samba-ad-dc.service
[サービス]タイプ=フォークPIDFile = / usr / local / samba / var / run / samba.pid LimitNOFILE = 16384#EnvironmentFile =-/ etc / conf.d / samba ExecStart = / usr / local / samba / sbin / samba ExecReload = / usr / bin / kill -HUP $ MAINPID [インストール] WantedBy = multi-user.target

root @ master:〜#systemctl enable samba-ad-dc
ルート@マスター:〜#再起動

ルート@マスター:〜#systemctl status samba-ad-dc
ルート@マスター:〜#systemctl status ntp

Samba 4AD-DCファイルの場所

すべて新しく作成されたsamba-ad-dc.serviceを差し引いた-ファイルは次の場所にあります。

ルート@マスター:〜#ls -l / usr / local / samba /
合計32drwxr-sr-x2ルートスタッフ4096Jun 19 11:55 ビン
drwxr-sr-x2ルートスタッフ4096Jun 19 11:50 
drwxr-sr-x7ルートスタッフ4096Jun 19 11:30 include
drwxr-sr-x15ルートスタッフ4096Jun 19 11:33 リブ
drwxr-sr-x7ルートスタッフ4096Jun 19 12:40 プライベート
drwxr-sr-x2ルートスタッフ4096Jun 19 11:33 sbin
drwxr-sr-x5ルートスタッフ4096Jun 19 11:33 シェア
drwxr-sr-x8ルートスタッフ4096Jun 19 12:28 VAR

最高のUNIXスタイルで。 さまざまなフォルダを参照して、その内容を調べることを常にお勧めします。

/Usr/local/samba/etc/smb.confファイル

ルート@マスター:〜#nano /usr/local/samba/etc/smb.conf 
#グローバルパラメータ[グローバル] netbios名= MASTERレルム= SWL.FANワークグループ= SWLdnsフォワーダー= 8.8.8.8サーバーサービス= s3fs、rpc、nbt、wrepl、ldap、cldap、kdc、drepl、winbindd、ntp_signd、kcc、dnsupdate 、dnsサーバーの役割=アクティブディレクトリドメインコントローラー許可dns更新=セキュアのみidmap_ldb:使用rfc2307 =はいidmapconfig *:バックエンド= tdb idmap config *:範囲= 1000000-1999999ldapサーバーには強力な認証が必要= printcap名なし= / dev / null [netlogon]パス= / usr / local / samba / var / locks / sysvol / swl.fan / scripts読み取り専用=いいえ[sysvol]パス= / usr / local / samba / var / locks / sysvol読み取り専用=いいえ

ルート@マスター:〜#testparm
/usr/local/samba/etc/smb.confからsmb設定ファイルをロードします。処理セクション「[netlogon]」処理セクション「[sysvol]」ロードされたサービスファイルOK。 サーバーの役割:ROLE_ACTIVE_DIRECTORY_DC Enterキーを押して、サービス定義のダンプを表示します#グローバルパラメーター[グローバル]レルム= SWL.FANワークグループ= SWLdnsフォワーダー= 192.168.10.1ldapサーバーには強力な認証が必要= passdbバックエンドなし= samba_dsdbサーバーの役割=アクティブディレクトリドメインコントローラーrpc_server:tcpip = no rpc_daemon:spoolssd = Embedded rpc_server:spoolss = Embedded rpc_server:winreg = Embedded rpc_server:ntsvcs = Embedded rpc_server:eventlog = Embedded rpc_server:srvsvc = Embedded rvcct_server = use external rvcct_server = use external rvcct_ :外部パイプ= true idmap config *:範囲= 1000000-1999999 idmap_ldb:使用rfc2307 =はいidmapconfig *:バックエンド= tdbマップアーカイブ=マップ読み取り専用なし=ストアdos属性なし=はいvfsオブジェクト= dfs_samba4 acl_xattr [netlogon]パス= / usr / local / samba / var / locks / sysvol / swl.fan/スクリプト読み取り専用=いいえ[sysvol]パス= / usr / local / samba / var / locks / sysvol読み取り専用=いいえ

最小限のチェック

ルート@マスター:〜#ツールドメインレベルの表示
ドメインのドメインおよびフォレスト機能レベル 'DC = swl、DC =ファン'フォレスト機能レベル:(Windows)2008 R2ドメイン機能レベル:(Windows)2008 R2 DCの最低機能レベル:(Windows)2008 R2

ルート@マスター:〜#ldapsearch -x -W

ルート@マスター:〜#ツールdbcheck
262個のオブジェクトをチェックしています262個のオブジェクトをチェックしました(0エラー)

ルート@マスター:〜#kinit管理者
のパスワード 管理者@SWL.FAN: 
ルート@マスター:〜#klist -f
チケットキャッシュ: ファイル:/ tmp / krb5cc_0
主なデフォルト: 管理者@SWL.FAN

有効な開始有効期限サービスメイン19/06/17:12:53 24/19/06 17:22:53  krbtgt/SWL.FAN@SWL.FAN
    20/06/17 12:53:18 PMまで更新、フラグ:RIA

ルート@マスター:〜#kdestroy
ルート@マスター:〜#klist -f
klist:資格情報キャッシュファイル '/ tmp / krb5cc_0'が見つかりません

ルート@マスター:〜#smbclient -L localhost -U%
ドメイン= [SWL] OS = [Windows6.1]サーバー= [Samba4.5.1]共有名タイプコメント------------- ------- netlogon Disk sysvol Disk IPC $ IPC IPCサービス(Samba 4.5.1)ドメイン= [SWL] OS = [Windows6.1]サーバー= [Samba4.5.1]サーバーコメント------------ワークグループマスター---- ----- -------

root @ master:〜#smbclient // localhost / netlogon -UAdministrator -c'ls '
管理者のパスワードを入力します:ドメイン= [SWL] OS = [Windows6.1]サーバー= [Samba4.5.1]。 D 0 Mon Jun 19 11:50:52 2017 .. D 0 Mon Jun 19 11:51:07サイズ2017の19091584ブロック。1024ブロックが利用可能

ルート@マスター:〜#ツールDNSサーバー情報マスター-U管理者

ルート@マスター:〜#ホスト-t SRV _ldap._tcp.swl.fan
_ldap._tcp.swl.fanにはSRVレコード0 100master.swl.fanがあります。

ルート@マスター:〜#ホスト-t SRV _kerberos._udp.swl.fan
_kerberos._udp.swl.fanにはSRVレコード0master.swl.fanがあります。

ルート@マスター:〜#ホスト-tマスター.swl.fan
master.swl.fanのアドレスは192.168.10.5です

ルート@マスター:〜#ホスト-t SOA swl.fan
swl.fanにはSOAレコードmaster.swl.fanがあります。 hostmaster.swl.fan。 1 900 600

ルート@マスター:〜#ホスト-t NS swl.fan
swl.fanネームサーバーmaster.swl.fan。

ルート@マスター:〜#ホスト-t MX swl.fan
swl.fanにはMXレコードがありません

ルート@マスター:〜#samba_dnsupdate --verbose

ルート@マスター:〜#ツールユーザーリスト
管理者krbtgtゲスト

ルート@マスター:〜#ツールグループリスト
#出力はグループの束です。 ;-)

新しくインストールされたSamba4AD-DCを管理します

管理者パスワードの有効期限を日数で変更する場合。 パスワードの複雑さ; パスワードの最小の長さ。 パスワードの最小および最大期間(日数)。 中に宣言された管理者パスワードを変更します プロビジョニング、次のコマンドを実行する必要があります ニーズに合わせて調整された値:

ルート@マスター:〜#ツール
使用法:samba-tool メインのsamba管理ツール。 オプション:-h、-helpこのヘルプメッセージを表示して終了しますバージョンオプション:-V、-versionバージョン番号を表示します使用可能なサブコマンド:dbcheck-ローカルADデータベースにエラーがないか確認します。 委任-委任管理。 dns-ドメインネームサービス(DNS)管理。 ドメイン-ドメイン管理。 drs-ディレクトリレプリケーションサービス(DRS)管理。 dsacl-DSACL操作。 fsmo-柔軟なシングルマスターオペレーション(FSMO)の役割管理。 gpo-グループポリシーオブジェクト(GPO)管理。 グループ-グループ管理。 ldapcmp-XNUMXつのLDAPデータベースを比較します。 ntacl-NTACL操作。 プロセス-プロセスを一覧表示します(setproctitleのないシステムでのデバッグを支援するため)。 rodc-読み取り専用ドメインコントローラー(RODC)管理。 サイト-サイト管理。 spn-サービスプリンシパル名(SPN)管理。 testparm-構文は構成ファイルをチェックします。 time-サーバー上の時間を取得します。 ユーザー-ユーザー管理。 特定のサブコマンドの詳細については、次のように入力してください:samba-tool (-h | --help)

ルート@マスター:〜#ツールユーザーsetexpiry管理者--noexpiry
root @ master:〜#ツールドメインpasswordsettings set --min-pwd-length = 7
root @ master:〜#ツールドメインpasswordsettings set --min-pwd-age = 0
root @ master:〜#ツールドメインpasswordsettings set --max-pwd-age = 60
root @ master:〜#ツールユーザーsetpassword --filter = samaccountname = Administrator --newpassword = Passw0rD

いくつかのDNSレコードを追加します

ルート@マスター:〜#ツールDNS
使用法:samba-tool dns ドメインネームサービス(DNS)管理。 オプション:-h、-helpこのヘルプメッセージを表示して終了します使用可能なサブコマンド:add-DNSレコードの追加delete-DNSレコードクエリの削除-名前のクエリ。 roothints-ルートヒントをクエリします。 serverinfo-サーバー情報を照会します。 update-DNSレコードを更新しますzonecreate-ゾーンを作成します。 zonedelete-ゾーンを削除します。 zoneinfo-ゾーン情報を照会します。 zonelist-ゾーンを照会します。 特定のサブコマンドの詳細については、次のように入力してください。samba-tooldns (-h | --help)

メールサーバー

root @ master:〜#tool dns add master swl.fan mail A 192.168.10.9-U管理者
root @ master:〜#tool dns add master swl.fan swl.fan MX "mail.swl.fan 10" -U管理者

他のサーバーの固定IP

root @ master:〜#tool dns add master swl.fan sysadmin A 192.168.10.1 -U Administrator
root @ master:〜#tool dns add master swl.fan fileserver A 192.168.10.10-U管理者
root @ master:〜#tool dns add master swl.fan proxy A 192.168.10.11-U管理者
root @ master:〜#tool dns add master swl.fan chat A 192.168.10.12-U管理者

逆引きゾーン

ルート@マスター:〜#ツールDNSゾーン作成マスター10.168.192.in-addr.arpa-U管理者
[SWL \管理者]のパスワード:ゾーン10.168.192.in-addr.arpaが正常に作成されました

root @ master:〜#tool dns add master 10.168.192.in-addr.arpa 5 PTRmaster.swl.fan。 -管理者
root @ master:〜#tool dns add master 10.168.192.in-addr.arpa 9 PTRmail.swl.fan。 -管理者
root @ master:〜#tool dns add master 10.168.192.in-addr.arpa 1 PTRsysadmin.swl.fan。 -管理者
root @ master:〜#tool dns add master 10.168.192.in-addr.arpa 10 PTRfileserver.swl.fan。 -管理者
root @ master:〜#tool dns add master 10.168.192.in-addr.arpa 11 PTRproxy.swl.fan。 -管理者
root @ master:〜#tool dns add master 10.168.192.in-addr.arpa 12 PTRchat.swl.fan。 -管理者

チェック

ルート@マスター:〜#ツールDNSクエリマスターswl.fanメールすべて-U管理者
[SWL \管理者]のパスワード:名前=、レコード= 1、子= 0 A:192.168.10.9(フラグ= f0、シリアル= 2、ttl = 900)

ルート@マスター:〜#ホストマスター
master.swl.fanのアドレスは192.168.10.5です
ルート@マスター:〜#ホストシステム管理者
sysadmin.swl.fanのアドレスは192.168.10.1です
ルート@マスター:〜#ホストメール
mail.swl.fanのアドレスは192.168.10.9です
ルート@マスター:〜#ホストチャット
chat.swl.fanのアドレスは192.168.10.12です
ルート@マスター:〜#プロキシホスト
proxy.swl.fanのアドレスは192.168.10.11です
ルート@マスター:〜#ホストファイルサーバー
fileserver.swl.fanのアドレスは192.168.10.10です
ルート@マスター:〜#ホスト192.168.10.1
1.10.168.192.in-addr.arpaドメイン名ポインターsysadmin.swl.fan。
ルート@マスター:〜#ホスト192.168.10.5
5.10.168.192.in-addr.arpaドメイン名ポインターmaster.swl.fan。
ルート@マスター:〜#ホスト192.168.10.9
9.10.168.192.in-addr.arpaドメイン名ポインターmail.swl.fan。
ルート@マスター:〜#ホスト192.168.10.10
10.10.168.192.in-addr.arpaドメイン名ポインターfileserver.swl.fan。
ルート@マスター:〜#ホスト192.168.10.11
11.10.168.192.in-addr.arpaドメイン名ポインターproxy.swl.fan。
ルート@マスター:〜#ホスト192.168.10.12
12.10.168.192.in-addr.arpaドメイン名ポインターchat.swl.fan。

好奇心旺盛な方へ

ルート@マスター:〜#ldbsearch -H /usr/local/samba/private/sam.ldb.d/ \
DC = DOMAINDNSZONES、DC = SWL、DC = FAN.ldb | grep dn:

ユーザーを追加します

ルート@マスター:〜#ツールユーザー
使用法:samba-toolユーザーユーザー管理。 オプション:-h、-helpこのヘルプメッセージを表示して終了します。使用可能なサブコマンド:add-新しいユーザーを作成します。 create-新しいユーザーを作成します。 delete-ユーザーを削除します。 disable-ユーザーを無効にします。 enable-ユーザーを有効にします。 getpassword-ユーザー/コンピューターアカウントのパスワードフィールドを取得します。 list-すべてのユーザーを一覧表示します。 password-ユーザーアカウント(認証で提供されるもの)のパスワードを変更します。 setexpiry-ユーザーアカウントの有効期限を設定します。 setpassword-ユーザーアカウントのパスワードを設定またはリセットします。 syncpasswords-ユーザーアカウントのパスワードを同期します。 特定のサブコマンドの詳細については、次のように入力してください。samba-tooluser (-h | --help)

ルート@マスター:〜#ツールユーザー作成ストライドTrancos01
ユーザー「trancos」が正常に作成されました
ルート@マスター:〜#ツールユーザー作成ガンダルフGandalf01
ユーザー「ガンダルフ」が正常に作成されました
root @ master:〜#ツールユーザーがレゴラスを作成Legolas01
ユーザー「レゴラス」が正常に作成されました
ルート@マスター:〜#ツールユーザーリスト
管理者ガンダルフレゴラスはkrbtgtゲストを歩きます

グラフィカルインターフェイスまたはWebクライアントを介した管理

インストール方法の詳細については、wiki.samba.orgにアクセスしてください。 マイクロソフト RSAT oリモートサーバー管理ツール。 Microsoft Active Directoryが提供する従来のポリシーが必要ない場合は、パッケージをインストールできます。 ldap-account-manager これは、Webブラウザを介して管理するためのシンプルなインターフェイスを提供します。

Microsoftリモートサーバー管理ツール(RSAT)プログラムパッケージは、WindowsServerオペレーティングシステムに含まれています。

ドメインを「seven」という名前のWindows7クライアントに参加させます

ネットワークにDHCPサーバーがないため、最初に行う必要があるのは、固定IPを使用してクライアントのネットワークカードを構成し、プライマリDNSがのIPになることを宣言することです。 samba-ad-dc、[この接続のアドレスをDNSに登録する]オプションが有効になっていることを確認します。 名前を確認するのはアイドルではありません«セブン»Samba内部DNSにまだ登録されていません。

コンピューターをドメインに参加させて再起動したら、ユーザーでログインしてみましょう«歩幅«。 すべてが正常に機能することを確認します。 また、Windowsクライアントのログを確認し、時刻がどのように正しく同期されているかを確認することをお勧めします。

Windowsの経験がある管理者は、クライアントでチェックを行うと満足のいく結果が得られることに気付くでしょう。

要約

この記事がFromLinuxコミュニティの読者に役立つことを願っています。

さようなら!


記事の内容は、次の原則に準拠しています。 編集倫理。 エラーを報告するには、 ここで.

8コメント、あなたのコメントを残してください

コメントを残す

あなたのメールアドレスが公開されることはありません。 必須フィールドには付いています *

*

*

  1. データの責任者:MiguelÁngelGatón
  2. データの目的:SPAMの制御、コメント管理。
  3. 正当化:あなたの同意
  4. データの伝達:法的義務がある場合を除き、データが第三者に伝達されることはありません。
  5. データストレージ:Occentus Networks(EU)がホストするデータベース
  6. 権利:いつでも情報を制限、回復、削除できます。

  1.   ゴンサロ・マルティネス

    長いが詳細な記事、すべてを行う方法についての非常に良いステップバイステップ。

    私はNISを強調します。真実は、その存在については知っていますが、それがどのように機能するかを実際には知りませんでした。正直なところ、LDAPとSamba4の次には事実上死んでいるという印象を常に与えてくれました。

    PS:あなたの新しい個人的なプロジェクトおめでとうございます! あなたがここに書き続けるつもりはないのは残念ですが、少なくともあなたをフォローする場所があります。

  2.   HO2Gi

    いつものように私のお気に入りのGreetingsFicoへの巨大なチュートリアル。
    プロジェクトおめでとうございます。

  3.   IWO

    NISセクションは素晴らしいです。ゴンサロ・マルティネスに同情します。簡単に知っていましたが、どのように実装し、どのような状況で使用されるのかわかりませんでした。
    理論的および実用的な記事の途方もない「トランク」を一度ありがとう。
    最後に、新しいプロジェクト«gigainside»での新しい成功。

  4.   フェデリコ

    コメントありがとうございます!!!。
    よろしく

  5.   ムッソル

    表示されているsmb.confにはLDAPとのリンクがありませんが、意図的にそのようなものですか、それとも何かを残しましたか?

  6.   FICO

    mussol:これはSamba 4 Active Directoryドメインコントローラーであり、LDAPサーバーが既に組み込まれています。

  7.   ヴィンセント

    Mac(アップル)をSamba 4 AD-DCに統合する方法についてコメントしていただけますか?
    ありがとう。

  8.   ジュラミレス

    お元気ですか;

    マニュアルをありがとう、それは素晴らしいです。 表示されるメッセージについて質問があります。

    ルート@AD:〜#nping –tcp -p 53 -c 3 ad.rjsolucionessac.com
    指定されたホスト名/ IPの解決に失敗しました:ad.rjsolucionessac.com。 '/ mask' AND'1-4,7,100- 'スタイルのIP範囲は使用できないことに注意してください
    有効なターゲットが見つかりません。 指定されたホストが、標準表記のIPアドレスか、DNSで解決できるホスト名のいずれかであることを確認してください
    ルート@AD:〜#