samba-toolを使用してUbuntuサーバーをドメインコントローラーに変える

ドメインコントローラーが必要で、保存したい場合はどうすればよいですか? 本日は、この質問に対する答えの1つをご紹介します。 Sambaパッケージ、Ubuntu Server、およびこれらすべてを迅速かつ正しく構成する方法について説明します。

Sambaを使用すると、LinuxファミリーのOSを実行しているサーバーをドメインコントローラー(ドメインコントローラー、DC)Active Directoryに変えることができます。 作成するDCは、Windows NT4ドメインコントローラーとして機能します。 ユーザーアカウントとコンピューターの一元化されたデータストレージに適しています。

プライマリドメインコントローラー(プライマリドメインコントローラー、PDC)Active Directoryを作成するタスクについては説明しませんが、ここで説明するUbuntu Server / Sambaバンドル(OpenLDAPを追加)はそのような役割を果たす可能性があります。

したがって、私たちの目標は、迅速かつ経済的にAD DCを取得することです。 サーバーの作業準備を自動的に行うように設計された対話型ツールsamba-tool 、これに役立ちます。つまり、設定ファイル/etc/smb.confを作成できます。

必要なソフトウェアをインストールすることから始めましょう。

設置


最初のステップは、サーバーにSambaおよびWinbindパッケージをインストールすることです。 これを行うには、次のコマンドを使用します。

 sudo apt install samba libpam-winbind 

システムがいくつかの依存関係をダウンロードする必要があるかもしれないという事実を考慮しても、インストール時間は短いです。

インストール後、設定に進むことができます。

セットアップの準備


samba-tool実行する前に、 /etc/hosts 、つまり、そこに記録されているドメインコントローラーの完全修飾ドメイン名とIPアドレスが正しいかどうかを確認する必要があります。 そこには次のようなものがあります:

 127.0.0.1 localhost.localdomain IP_ADDRESS_OF_SERVER localhost IP_ADDRESS_OF_SERVER SAMBADOM.EXAMPLE.NET SAMBADOM 

ここで、 IP_ADDRESS_OF_SERVERはSambaサーバーの実際のアドレスです。 ファイルに現在のデータが含まれていることを確認してください。

次に、サーバーのホスト名を指定する必要があります。 上記の/etc/hostsフラグメントで判断できるように、この場合、ノード名はSAMBADOMです。 設定するには、ファイル/etc/hostnameを開き、それに応じて変更します。 次-サー​​バーを再起動します。

サーバーの再起動後、既存のsmb.confファイルとSambaデータベースファイル(これらは.tdbファイルと.ldbファイル)を削除する必要があります。 これらのファイルを含むディレクトリを見つけるには、次のコマンドを実行します。

 mbd -b | grep "CONFIGFILE" smbd -b | egrep "LOCKDIR|STATEDIR|CACHEDIR|PRIVATE_DIR" 

次の図は、これらのコマンドの実行結果を示しています。これらのコマンドを使用して、不要なファイルを削除できます。 そのようなファイルがシステムに存在しない場合は、すぐに先に進むことができます。


削除するファイルを検索する

samba-toolを使用する


それでは、 samba-toolを使用しsamba-tool 。 次のコマンドを実行して、このツールをインタラクティブに実行します。

 sudo samba-tool domain provision --use-rfc2307 --interactive 

キー--use-rfc2307を使用し--use-rfc2307コマンドを--use-rfc2307 NIS拡張機能が--use-rfc2307ます。 Samba-tool 、次のパラメーターの構成Samba-tool提供します。


システムが質問に対する回答を受け取った後、 samba-tool Sambaをドメインコントローラーとして設定します。 ファイル/etc/samba/smb.confを表示して、必要に応じて変更を加えることができます。

先に進む前に、Sambaでのユーザーの登録に注意してください。 この手順は非常に重要です-そうしないと、ユーザーは認証できません。 これは、次のコマンドで実行されます。

 smbpasswd -a USERNAME smbpasswd -e USERNAME 

ここで、 USERNAMEは、Sambaに追加される既存のユーザーの名前です。 最初のコマンドを入力した後にのみパスワードを入力する必要があります。 最初のコマンドは、新しいユーザーを追加し、そのユーザーのパスワードを要求します。 2番目-作成されたアカウントをアクティブにします。

DNSサーバーのセットアップ


ドメインコントローラ上のDNSサーバーとして彼が必要です。 これを行うには、ファイル/etc/network/interfaces編集して、次の形式にします。

 auto INTERFACE_NAME iface INTERFACE_NAME inet static address IP_ADDRESS_FOR_SERVER netmask NETMASK gateway GATEWAY dns-nameservers IP_ADDRESS_FOR_SERVER 

静的IPアドレスでネットワークインターフェイスを使用するための設定もあります。 大文字のすべては、システムのパラメーターに従って構成する必要があることに注意してください。

設定が完了したら、次のコマンドでネットワークサービスを再起動します。

 sudo service networking restart 

さらに、ファイル/etc/resolv.confを編集して、上記の変更と一致する変更を行う必要があります。 つまり、ここでは次の行に興味があります。

 nameserver IP_ADDRESS_FOR_SERVER 

ここでは、 IP_ADDRESS_FOR_SERVER代わりに、上記のdns-nameserversに記録されたのと同じアドレスを入力する必要がありdns-nameservers

Kerberosを構成する


Kerberosには独自の標準構成ファイルがあり、Sambaの作業準備中に生成されたkrb5.confファイルに置き換える必要があります。 これを行うには、次のコマンドを実行します。

 sudo mv /etc/krb5.conf /etc/krb5.conf.orig sudo ln -sf /var/lib/samba/private/krb5.conf /etc/krb5.conf 

システムに/etc/krb5.confファイルが存在しない可能性があることに注意してください。 これが当てはまる場合、上記のコマンドの2番目だけで十分です。

テストと接続


最も難しい部分は後ろにあります。 これで、新しく作成されたSambaドメインコントローラーをテストして接続する準備がすべて整いました。 次のコマンドを使用して、すべてが機能するかどうかをすばやく確認できます。

 smbclient -L localhost -U% 

Sambaユーザーのパスワードを入力すると、接続の成功に関するメッセージが表示されます。


接続成功

ご覧のとおり、 smbclientチェックすると、共有リソースとしてのnetlogonおよびsysvolに関する情報がsysvol 。 これらはデフォルトで作成され、ドメインコントローラー上に存在する必要があります。 さらに、クライアントが/var/lib/samba/sysvol/REALM/scripts配置する必要があるログイン/var/lib/samba/sysvol/REALM/scripts 。 ここで、 REALMは、 samba-toolコマンドでの作業中に設定されたREALMパラメーターに対応しています。

まとめ


これで、ドメインコントローラーは接続を受け入れる準備ができました。 ただし、/ /etc/samba/smb.confファイルを編集し、サーバーの要件を反映するデータを追加する必要がある場合があります。 samba-toolによって生成されたこのファイルは非常に簡潔samba-tool 、SambaとUbuntu Serverに基づいて構築されたAD DCを微調整するための良い出発点です。

親愛なる読者! また、LinuxとWindowsのエコシステムの相互作用のためのどのオプションがあなたにとって最も興味深く、有用だと思われますか?

Source: https://habr.com/ru/post/J323860/


All Articles