1) 解壓縮
tar -zxvf bind-9.3.p2.tar.gz –c /tmp (tar -xvf bind-9.3.p2.tar –c /tmp)
cd /tmp/bind-9.3.p2
2) 配置
./configure --prefix=/usr/local/webserver/bind
其他編譯引數看自己需求
--with-openssl=no
--prefix:指定安裝目錄
--sysconfdir:設定named.conf配置檔案放置的目錄
--localstatdir:設定 run/named.pid 放置的目錄
--with-libtool:將bind的庫檔案編譯為動態共享庫檔案,這個選項預設是未選擇的。
--enable-threads:如果系統有多個cpu,那麼可以使用這個選項開啟執行緒支援以提高伺服器效能
3) 編譯安裝
make;make install
4) 新建named使用者
useradd -r named (-r是新建系統賬戶)
5) 新增環境變數
vim ~/.bash_profile
path=$path:$home/bin:/usr/local/webserver/bind/sbin:/usr/local/webserver/bind/bin
source ~/.bash_profile
6) 建立配置檔案
cd /usr/local/webserver/bind
生成rndc控制命令的key檔案(用於生成rndc使用的認證秘鑰) 用bind自帶的rndc-confgen工具即可
/usr/local/webserver/bind/sbin/rndc-confgen > /usr/local/webserver/bind/etc/rndc.conf
# start of rndc.conf
key "rndc-key」 ;
options ;
# end of rndc.conf #
use with the following in named.conf, adjusting the allow list as needed:
# key "rndc-key" ; #
# controls keys ;
# };
# end of named.conf
7) 從rndc.conf中提取named.conf用的key
#tail -10 /usr/local/webserver/bind/etc/rndc.conf | head -9 | sed s/#\ //g > /usr/local/webserver/bind/etc/named.conf
最終得到如下資訊:
key "rndc-key" ;
controls keys ;
};8) 配置named.conf加如下**
vi /usr/local/webserver/bind/etc/named.conf(複製時候注意標點符號的中英文輸入法)
新增如下資訊:
options ;
zone "." in ;
//本地正向解析
zone "localhost" in ;
};//本地反向解析
zone "0.0.127.in-addr.arpa" in ;
};//本地test域解析
zone "test.com" in ;
};9) 配置zone檔案
mkdir /usr/local/webserver/bind/zone && cd /usr/local/webserver/bind/zone
用dig命令直接生成named.root檔案:
dig @a.root-servers.net > named.root
vim /usr/local/webserver/bind/zone/localhost.zone
$ttl 86400
$origin localhost.
@ 1d in soa @ root (
42 ; serial (d. adams)
3h ; refresh
15m ; retry
1w ; expiry
1d ) ; minimum
1d in ns @
1d in a 127.0.0.1
vim /usr/local/webserver/bind/zone/named.local
$ttl 86400
@ in soa localhost. root.localhost. (
1997022700 ; serial
28800 ; refresh
14400 ; retry
3600000 ; expire
86400 ) ; minimum
in ns localhost.
1 in ptr localhost.
vim /usr/local/webserver/bind/zone/test.zone
$ttl 1d
@ in soa test.com. root.test.com. (
1053891162 ; serial
3h; refresh
15m;retry
1w ; expire
1d ); minimum
in ns ns.test.com.
in mx 5 test.com.
in a 3.3.3.3
ns in a 1.2.3.4
www in a 220.202.19.82
10) 目錄檔案許可權
/usr/local/webserver/bind/*
【755的許可權】【named使用者和組】
11) 特殊檔案配置許可權
/usr/local/webserver/bind/zone/* /usr/local/webserver/bind/etc/*
【640的許可權】【named使用者和組】
因為是將秘鑰(也就是密碼)放在named.conf和rndc.conf中,所以要確保無權控制名稱伺服器的使用者都無法讀取這兩個檔案
12)驗證配置檔案和zone檔案(這兩條命令都沒有錯的時候就是ok了)
/usr/local/webserver/bind/sbin/named-checkconf /usr/local/webserver/bind/etc/named.conf
/usr/local/webserver/bind/sbin/named-checkzone test.com /usr/local/webserver/bind/zone/test.zone
13) 啟動bind
/usr/local/webserver/bind/sbin/named -g(可以檢視錯誤)
/usr/local/webserver/bind/sbin/named -c /usr/local/webserver/bind/etc/named.conf & -u named
14) 驗證網域名稱解析是否成功
dig @127.0.0.1
test.com
Linux學習之原始碼安裝
步驟 以nginx為例 2.檢視原始碼 我們看到,src目錄下都是.c或者是.h的檔案,是c語言的原始碼 src下的內容為 3.準備安裝環境 我們看到其原始碼是c語言,那麼我們要安裝gcc等工具 我們首先通過yum進行查詢yum grouplist 找到development tools然後檢視這個...
Bullet安裝之 原始碼包編譯安裝
用vcpkg裝了bullet之後,還是找不到標頭檔案之類的,可能需要在vcpkg的什麼環境下使用吧,不太會用,就放棄了,還是用原始碼包自己編譯安裝吧 安裝成功之後,在usr local include和usr local lib中是有相應的檔案的,vcpkg安裝的都在home的vcpkg 目錄裡,不...
lamp之原始碼包安裝mysql
tar xzvf mysql 6.0.11 alpha.tar.gz mv mysql 6.0.11 alpha mysql mysql 1.建立mysql所需的目錄 mkdir p mysql 2.建立mysql使用者組 useradd mysql 3.檢查編譯環境 echo 當為0的時候表示沒有...