国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 服務器 > Win服務器 > 正文

配置一個安全的chroot DNS(2)

2024-09-10 00:02:39
字體:
來源:轉載
供稿:網友
1、安裝Bind 9

  雖然我所用的Red Hat AS3 中有rpm包,但是為了方便其他操作系統的朋友,我們還是從源代碼包方式安裝。首先從ISC公司的主頁(http://www.isc.org/products/BIND/)下Bind 9 軟件包。

  wget ftp://ftp.isc.org/isc/bind9/9.2.3/bind-9.2.3.tar.gz

  (我沒下最新的,下的是穩定版,您可以根據自己的需要選取)

  接著開始解壓縮(為描述簡單,以下操作如無特殊聲明,都是以root權限進行)
  tar vzxf bind-9.2.3.tar.gz

  卸載Red Hat 中原有的Bind,一共有三個rpm包
  rpm -e bind bind-utils caching-nameserver

  進入該目錄開始編譯安裝
  ./configure --prefix=/usr/local --disable-ipv6 --disable-threads

  #因為ipv6和線程方式我用不到就去掉了,把Bind 9安裝到/usr/local下
  make;make install

  到此Bind 9已經安裝完成了,普通的 DNS Server 到此就安裝結束了,而對我們的chroot 而言才剛開始呢。

  2、構建chroot 目錄環境

  a.創建Bind 工作目錄/chroot/named及下屬工作目錄

  rm -rf /chroot/named #刪除原來的舊目錄,之所以加這句是我寫shell的時候調試方便

  mkdir -p /chroot/named
  cd /chroot/named
  mkdir dev (虛擬/dev)
  mkdir etc (虛擬/etc)
  mkdir logs (存放日志)
  mkdir -p var/run (將來會在這下面放一個named.pid文件)

  b.建立Bind的組和用戶named

  groupadd named
  useradd -g named -d /chroot/named -s /bin/true named
  pASswd -l named #-l ,Lock,表示鎖定用戶

  c.創建虛擬設備(dev),日志記錄的時候有的選項可能用到它們。在默認情況下,是使用/dev目錄下的文件,但是由于我們需要把DNS限制到一個目錄,所以必須完全把/dev下用到的文件(或者說設備)模擬過來才可以。

   ls -lL /dev/zero /dev/null /dev/random

  看到類似

  crw-rw-rw-  1 root   root    1,  3 2003-09-15 /dev/null
  crw-r--r--  1 root   root    1,  8 2003-09-15 /dev/random
  crw-rw-rw-  1 root   root    1,  5 2003-09-15 /dev/zero

  這樣的,將其中的1,3這樣的數字記錄下來,這表示主設備號和次設備號(一般來說主設備號用來區分設備的種類;次設備號則是為了作唯一性區分,標明不同屬性――注意,在unix系統中是把設備也當作文件來對待的),在redhat 9下,ls加不加-L參數都無所謂,但是在Solaris下則一定要加上才可以顯示。

  mknod dev/null c 1 3
  mknod dev/zero c 1 5
  mknod dev/random c 1 8

  d.復制時鐘文件到我們chroot的etc下,Linux 的時鐘設置文件為:/etc/localtime ,實際上這個文件是 /usr/share/zoneinfo 目錄下對應文件的符號連接。(假設我們所處的地區位于上海,那么只要運行以下的命令就可以設置時區了。 ln -sf /usr/share/zoneinfo/ASia/Shanghai /etc/localtime;注意在天緣用的solaris 2.6中并沒有此文件,而是該用/usr/share/lib/zoneinfo/GB)

  cp /etc/localtime etc/

  3、創建和設置BIND 9配置文件

  默認情形下,bind以/etc/named.conf文件為配置文件。但由于我們這里是要做chroot的DNS,因此需要把named.conf放到/chroot/named/conf下去,然后再做一個符號連接到/etc/named.conf。首先創建并編輯named.conf文件(由于介紹DNS的文章大多對named.conf的配置解釋得相當詳細,因此我就不一句句解釋了,大家結合注釋,參考其他文章看看,很容易理解的)

vi /chroot/named/etc/named.conf,輸入以下內容(由于每個人的配置都不同,所以天緣在這里只列出一個做cache only的DNS的設置)

options {
     //注意,由于是chroot方式,所以以下的/conf、/var并不是系統中真正的/conf和/var目錄,而是指/chroot/named下的同名目錄,此配置文件中所有地方都如此
directory    "/conf"; //配置文件所在目錄
pid-file    "/var/run/named.pid"; //進程守護文件
statistics-file "/var/run/named.stats"; //狀態輸出文件;在rndc中用到
dump-file    "/var/run/named.db"; //輸出數據庫文件,在rndc中用到

//隱藏真實版本號,我這里寫個4.0作刻意誤導
version     "[4.0]";

     logging { //日志記錄
        channel LAMER_log {
         file "/logs/DNS-lamer.log" versions 3 size 10m;
         severity info;
         print-severity yes; print-time yes;
         };

        channel SEC_log {
        file "/logs/DNS-sec.log" versions 3  size 10m;
        severity info;
        print-severity yes; print-time yes;
        };

        channel STAT_log {
        file "/logs/DNS-stat.log" versions 3 size 10m;
        severity info;
        print-severity yes; print-time yes;
         };

category cname { null; };
category lame-servers { LAMER_log; };
category security { SEC_log; };
category statistics { STAT_log; };
};

//根解析
zone "." {
type  hint;
file  "named.root";
};

// localhost 解析
zone "localhost" {
type  mASter;
file  "named.localhost";
notify no;
};

// localhost 反向解析
zone  "0.0.127.in-addr.arpa" {
type  mASter;
file  "named.127.0.0";
notify no;
};

  之后進行符號連接到/etc目錄下
  ln -s /chroot/named/etc/named.conf /etc/named.conf

  好了,接下來,當然就是設置named.root、named.local、named.127.0.0三個文件了,注意,這三個文件的真實位置是在/chroot/named/conf下哦。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 新巴尔虎左旗| 临潭县| 时尚| 安平县| 谷城县| 桂林市| 施甸县| 南华县| 南宁市| 旬邑县| 瓮安县| 濮阳县| 彩票| 兰溪市| 仁化县| 湖州市| 梧州市| 德钦县| 兴和县| 青岛市| 渝中区| 高要市| 湘阴县| 凤阳县| 额济纳旗| 西林县| 吉安市| 新野县| 竹北市| 南木林县| 黎川县| 巫山县| 家居| 来凤县| 托克托县| 从化市| 绥芬河市| 微山县| 始兴县| 汝城县| 抚顺县|