Go to file
rohhie cfd11cf76a Version 1.1
・時刻サーバーを配布するように設定を追加。
・ネームサーバーのIPアドレスが間違っていたのを修正。
・説明文の不備を修正。
2022-11-03 18:22:18 +09:00
v4 Version 1.1 2022-11-03 18:22:18 +09:00
v6 Version 1.1 2022-11-03 18:22:18 +09:00
DockerfileIPv4 First version 2022-10-30 10:59:26 +09:00
DockerfileIPv6 First version 2022-10-30 10:59:26 +09:00
LICENSE First version 2022-10-30 10:59:26 +09:00
LICENSE_dhcp-dyndns.sh First version 2022-10-30 10:59:26 +09:00
README.md Version 1.1 2022-11-03 18:22:18 +09:00
dhcp-dyndns.sh First version 2022-10-30 10:59:26 +09:00
docker-compose.yml First version 2022-10-30 10:59:26 +09:00
krb5.conf First version 2022-10-30 10:59:26 +09:00
setufw.sh First version 2022-10-30 10:59:26 +09:00

README.md

Samba-ad-dc-ddns-docker

概要

Samba ad dcと連携するDHCPサーバーをDockerで気軽に利用する。

構築方法

ダウンロード

このリポジトリからソースをダウンロードする。

git clone https://gitea.rohhie.net/rohhie/samba-ad-dc-ddns-docker.git ddns
cd ddns

動作条件を設定

コンテナ

docker-compose.ymlには、IPv4とIPv6の2つのコンテナを定義してある。
どちらか一方を利用する場合は、使わない方をコメントアウトしておく。

それぞれの動作条件を設定する。

変数名 設定内容
DHCPIF 使用するネットワークインターフェースを設定。空白で区切って複数指定可能。
DHCPSERVER Samba AD DCのホスト名を指定。名前解決できる(はず)。
DHCPDOMAIN ドメインのFQDNを指定。
DHCPDNSADM DnsAdminsのユーザー名を指定。
DHCPDBGFLG "true"を指定すると、標準出力にデバッグ情報が出力される。

IPv4

v4ディレクトリにdhcpd.confがあるので、これを適宜書き換える。

IPv6

v6ディレクトリにdhcpd.confとradvd.confがあるので、適切に設定。
radvd.confでは、使用するネットワークインターフェースの設定があるので、環境変数DHCPIFとあわせて設定しておく。

Kerberos

krb5.confをSamba ad dcにアクセスできるように作成。

keytab

Samba ad dcでDnsAdminに所属するユーザーのkeytabを取り出す。
新たにユーザーを作っても良いし、既存のユーザーを使っても良い。
ホームラボでは、Samba ad dc立ち上げ時にssoauthというユーザーを作りDnsAdminにしたので、これを使っている。

<username>.keytab

という名前で保管しておく。
ホームラボではssoauth.keytabという名前で保管した。

dhcp-dyndns.sh

これは、Samba Wiki(https://wiki.samba.org/index.php/Configure_DHCP_to_update_DNS_records)にあるスクリプトをベースにして、IPv6の処理を追加している。
また、DnsAdminsのユーザー名を環境変数で渡すようにした。

ファイアウォールの設定

ファイアウォールを設定するスクリプトを実行する。
このスクリプトではIPv6のみ開放している。
IPv4は開放しなくてもうまく動いている。

sudo ./setufw.sh

何らかの理由で設定を解除するなら、以下を実行する。

sudo ./setufw.sh delete

コンテナを起動

コンテナを構築して起動する。

sudo docker compose up -d --bulid

その他

細かな設定手順や使い方は、メインサイト参照。
https://rohhie.net/samba-ad-dc-dynamicdns/

ライセンス

MIT

ただし、dhcp-dyndns.shだけはソースコード参照。 変更点は原作に準じてGPL3.0以降とする。