PokuG stdio.h

stdio.hはおまじない

MENU

CentOS8でActive Directoryを作成する~その1~ Sambaのインストール編

f:id:yarufu101:20200315114015g:plain
CentOS8でドメインコントローラーが作成できるらしい。
Windows Serverがいらないらしいが・・・。どういうことだ?CALの節約?勉強目的?
そんな訳でCentOS8でドメインコントローラーを作成してみる。
あと上の画像はWindows meタン。今はあまり聞きませんが昔流行っていましたね。今回の記事とは全く関係ありません。

必要なもの

CentOS8というよりLinuxでActive Directoryを作成するにはSamba4以上が必要。今回は普通にバイナリーをyumとかでインストールするのではなく、ソースをダウンロードしてコンパイルします。

この記事でおこなうこと

「CentOS8でActive Directoryを作成する~その1~ Sambaのインストール編」ではsambaのコンパイルをおこないます。

使用するOSのバージョンなど

項目
OSバージョン CentOS Linux release 8.1.1911 (Core)
Sambaバージョン 4.12.1

Active Directoryの構成

以下構成を想定。

項目
サーバーIPアドレス 192.168.80.250
サーバー名 katori
フルネーム katori.truk.anchorage.port
ドメイン名 anchorage.port
Windowsドメイン名 truk
Realm名 truk.anchorage.port

active directryのドメイン名の規則ではad01.example.netとかにしてインターネットDNSサーバーの子供にする方法が一般的なような気がしないでもない。ほとんどの解説のサイトではad01.example.netの方法をとっているようなきがします。そんなわけで、この記事もその例に乗っ取ったドメイン命名規則にしています。
directryのドメイン名の決め方と利点欠点は以下サイトの解説がいいと思われる。
www.atmarkit.co.jp

Sambaをコンパイルするためのモジュールのインストール

yumでインストールしたものではActive Directoryにならないのでソースを取得し、自分でコンパイルする必要がある。
コンパイルするために必要なモジュールは以下のSambawikiというサイトに記載があるので、ここを読めば大体わかる。
Package Dependencies Required to Build Samba - SambaWiki

epelリポジトリのインストール

いきなりsambawikiにはないepelリポジトリのインストール。
epel(エンタープライズ Linux 用の拡張パッケージ)リポジトリらしい。
これを入れないと「Sambaをコンパイルするために必要なモジュールのインストール」のものが入らない。
以下コマンドを実行

yum -y install epel-release

PowerToolsリポジトリのインストール

これはSambawiki記載がある。
以下コマンドを実行

yum -y install dnf-plugins-core
yum config-manager --set-enabled PowerTools

Sambaをコンパイルするために必要なモジュールのインストール

以下コマンドを実行

yum install docbook-style-xsl gcc gdb gnutls-devel gpgme-devel jansson-devel \
keyutils-libs-devel krb5-workstation libacl-devel libaio-devel \
libarchive-devel libattr-devel libblkid-devel libtasn1 libtasn1-tools \
libxml2-devel libxslt lmdb-devel openldap-devel pam-devel perl \
perl-ExtUtils-MakeMaker perl-Parse-Yapp popt-devel python3-cryptography \
python3-dns python3-gpg python36-devel readline-devel rpcgen systemd-devel \
tar zlib-devel

Sambaのインストール

ソースコードを保存する場所を作成

以下コマンドを実行

mkdir /usr/local/src/samba
cd /usr/local/src/samba

ソースコードを取得

以下コマンドを実行

wget https://download.samba.org/pub/samba/samba-latest.tar.gz

ダウンロード後、以下ファイルがダウンロードされた。

[root@katori samba]# ls
samba-latest.tar.gz

ダウンロードファイルの解凍

以下を実行

tar zxvf samba-latest.tar.gz

解凍結果。フォルダができてる。4.12.1みたいですね。

[root@katori samba]# ls
samba-4.12.1  samba-latest.tar.gz

Sambaのソースコードのビルド

以下コマンドでSambaのフォルダに移動

cd samba-4.12.1/

Sambaをコンパイル

./configure
make

コンパイルしたSambaのインストール

make install

インストール後の後処理

手動でコンパイルしたSambaは「/usr/local/samba/bin」「/usr/local/samba/sbin」とかにインストールされるので、このフォルダにパスを通す。

.bash_profileの編集

以下コマンドを実行

vi /root/.bash_profile

.bash_profileにSambaのパスを通す。

以下1行を追加する

export PATH=$PATH:/usr/local/samba/bin:/usr/local/samba/sbin

# .bash_profile

# Get the aliases and functions
if [ -f ~/.bashrc ]; then
        . ~/.bashrc
fi

# User specific environment and startup programs

PATH=$PATH:$HOME/bin

export PATH
#以下行を追加
export PATH=$PATH:/usr/local/samba/bin:/usr/local/samba/sbin

設定を反映する

以下を実行

source ~/.bash_profile

パスが通っているか確認

samba -V

バージョンが出たら成功

[root@katori samba-4.12.1]# samba -V
Version 4.12.1

その他

その2へ続く
pokug.net