Tải bản đầy đủ (.pdf) (8 trang)

Cài đặt PowerDNS và Poweradmin trong Ubuntu 9.10 (phần I) doc

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (271.39 KB, 8 trang )


Cài đặt PowerDNS và Poweradmin trong Ubuntu 9.10
(phần I)

Trong bài hướng dẫn sau, Quản Trị Mạng sẽ giới thiệu với các bạn
các bước cài đặt PowerDNS (cùng với MySQL backend) và cơ chế
điều khiển Poweradmin dành cho PowerDNS trên hệ thống Ubuntu
9.10.
PowerDNS là hệ thống nameserver mạnh mẽ, ổn định, tốc độ hoạt động
cao, và hỗ trợ cơ chế xác nhận chủ quyền trên máy chủ, có khả năng đọc
các bản ghi DNS từ cơ sở dữ liệu MySQL (tương tự như MyDNS), mặc
dù các hệ cơ sở dữ liệu backend khác như PostgreSQL cũng được hỗ trợ
đầy đủ. Bên cạnh đó, Poweradmin là 1 dạng bảng điều khiển – control
panel hoạt động trên nền tảng web của PowerDNS.
1. Lưu ý sơ bộ
Trong ví dụ này sử dụng host Ubuntu 9.10 với hostname là
server1.example.com và địa chỉ IP là 192.168.0.100. Tiến hành cài đặt 1
server PowerDNS - master, sau đó thêm PowerDNS - slave khá đơn giản
và dễ dàng bằng cách sử dụng cơ sở dữ liệu MySQL nhân rộng mô hình
từ master thành slave, và do đó, việc luân chuyển vùng dữ liệu là không
cần thiết (cũng giống với MyDNS).
Việc nhân rộng mô hình cơ sở dữ liệu MySQL các bạn có thể tham khảo
thêm tại đây, PowerDNS cũng hỗ trợ việc lưu chuyển vùng dữ liệu (trong
trường hợp bạn không thể áp dụng tính năng nhân rộng MySQL), xem chi
tiết tại đây.
Tất cả các lệnh đều phải thực hiện bằng tài khoản và phân quyền root,
hoặc thêm tiền tố sudo vào trước các câu lệnh. Để trở thành root, gõ câu
lệnh sau:
sudo su
2. Cài đặt MySQL
Cú pháp câu lệnh:


aptitude install mysql-server mysql-client
Bạn sẽ nhận được yêu cầu cung cấp mật khẩu cho tài khoản MySQL root,
mật khẩu này phải chính xác đối với root@localhost cũng như
, do đó, chúng ta không phải phân tách mật
khẩu MySQL root riêng biệt cho các quá trình tiếp theo.
New password for the MySQL "root" user: < mật khẩu tài
khoản root
Repeat password for the MySQL "root" user: < mật khẩu
tài khoản root
Yêu cầu tiếp theo là MySQL phải “nghe” được tất cả các tín hiệu trên hệ
thống (điều này đặc biệt quan trọng nếu muốn nhân rộng MySQL), không
chỉ ở localhost, do vậy chúng ta phải chỉnh sửa /etc/mysql/my.cnf và chú
thích tại dòng bind-address = 127.0.0.1:
vi /etc/mysql/my.cnf
[ ]
# Instead of skip-networking the default is now
to listen only on
# localhost which is more compatible and is not
less secure.
#bind-address
[ ]
Sau đó khởi động lại MySQL:
/etc/init.d/mysql restart
Kiểm tra rằng hệ thống mạng đã được kích hoạt, gõ lệnh sau:
netstat -tap | grep mysql
Và kết quả sẽ có dạng tương tự như sau:
root@server1:~# netstat -tap | grep mysql
tcp 0 0 *:mysql *:* LISTEN 6724/mysqld
root@server1:~#
3. Cài đặt PowerDNS

Trước tiên, sử dụng câu lệnh sau:
aptitude install pdns-server pdns-backend-mysql
File cấu hình PowerDNS sẽ lưu trữ trong thư mục /etc/powerdns
Tiếp theo, kết nối đến MySQL:
mysql -u root -p
Gõ mật khẩu MySQL root, khi đã đăng nhập vào bên trong MySQL, tạo
cơ sở dữ liệu cho PowerDNS:
CREATE DATABASE powerdns;
Tiếp theo, tạo cơ sở dữ liệu người sử dụng (powerdns) dành cho
PowerDNS:
GRANT ALL ON powerdns.* TO
'power_admin'@'localhost' IDENTIFIED BY
'power_admin_password';
GRANT ALL ON powerdns.* TO
'power_admin'@'localhost.localdomain' IDENTIFIED
BY 'power_admin_password';
FLUSH PRIVILEGES;
Nhớ thay thế power_admin_password với mật khẩu của bạn.
Bây giờ, chúng ta sẽ tạo các bảng cần thiết bởi PowerDNS:
USE powerdns;

CREATE TABLE domains (
id INT auto_increment,
name VARCHAR(255) NOT NULL,
master VARCHAR(128) DEFAULT NULL,
last_check INT DEFAULT NULL,
type VARCHAR(6) NOT NULL,
notified_serial INT DEFAULT NULL,
account VARCHAR(40) DEFAULT NULL,
primary key (id)

);

CREATE UNIQUE INDEX name_index ON domains(name);

CREATE TABLE records (
id INT auto_increment,
domain_id INT DEFAULT NULL,
name VARCHAR(255) DEFAULT NULL,
type VARCHAR(6) DEFAULT NULL,
content VARCHAR(255) DEFAULT NULL,
ttl INT DEFAULT NULL,
prio INT DEFAULT NULL,
change_date INT DEFAULT NULL,
primary key(id)
);

CREATE INDEX rec_name_index ON records(name);
CREATE INDEX nametype_index ON
records(name,type);
CREATE INDEX domain_id ON records(domain_id);

CREATE TABLE supermasters (
ip VARCHAR(25) NOT NULL,
nameserver VARCHAR(255) NOT NULL,
account VARCHAR(40) DEFAULT NULL
);
Và sau đó thoát khỏi MySQL shell:
quit;
Bây giờ, chúng ta phải thiết lập PowerDNS để có thể sử dụng được
MySQL backend:

vi /etc/powerdns/pdns.conf
Thêm dòng lệnh: launch=gmysql to pdns.conf:
[ ]
#################################
# launch Which backends to launch and order to
query them in
#
# launch=
launch=gmysql
[ ]
Sau đó, mở file /etc/powerdns/pdns.d/pdns.local và làm cho nó giống như
sau:
vi /etc/powerdns/pdns.d/pdns.local

# Here comes the local changes the user made,
like configuration of
# the several backends that exists.

gmysql-host=127.0.0.1
gmysql-user=power_admin
gmysql-password=power_admin_password
gmysql-dbname=powerdns
Khởi động lại pdns:
/etc/init.d/pdns restart
Vậy là mọi công đoạn cũng đã hòm hòm, PowerDNS đã sẵn sàng sử
dụng. Nếu muốn tìm hiểu thêm về PowerDNS, các bạn có thể tham khảo
thêm tài liệu tại đây.
4. Cài đặt Poweradmin
Bước tiếp theo cần tiến hành cài đặt Poweradmin, bảng công cụ điều
khiển – control panel dành cho PowerDNS, Poweradmin được viết bằng

PHP, vì vậy bắt buộc chúng ta phải có môi trường webserver (trong bài
viết này sử dụng Apache2) và PHP:
aptitude install apache2 libapache2-mod-php5 php5
php5-common php5-curl php5-dev php5-gd php-pear
php5-imap php5-mcrypt php5-mhash php5-ming php5-
mysql php5-xmlrpc gettext
Bên cạnh đó, Poweradmin cũng yêu cầu thêm 2 gói PEAR:
pear install DB

pear install pear/MDB2#mysql
Khởi động lại Apache.
/etc/init.d/apache2 restart
Tất cả các yêu cầu cần thiết của Poweradmin đã đầy đủ, bây giờ chúng ta
sẽ tiến hành cài đặt Poweradmin (tại bài viết này, chúng ta sẽ cài đặt vào
thư mục con của /var/www – là thư mục tài liệu root mặc định của
Apache trên Ubuntu, trong trường hợp bạn tạo vhost với thư mục khác thì
chỉ cần điều chỉnh lại đường dẫn cho chính xác).
Tải bản Poweradmin mới nhất tại đây, ví dụ như sau:
cd /tmp
wget
/>2.1.4.tgz
Cài đặt ứng dụng vào thư mục /var/www/poweradmin:
tar xvfz poweradmin-2.1.4.tgz
mv poweradmin-2.1.4 /var/www/poweradmin
touch /var/www/poweradmin/inc/config.inc.php
chown -R www-data:www-data /var/www/poweradmin/
Mở trình duyệt và bắt đầu kích hoạt quá trình Poweradmin bằng web, ở
đây hoặc đây:
Lựa chọn ngôn ngữ (English hoặc Dutch):


Tiếp theo, nhấn vào nút Go to step 3 để tiếp tục:

Tại đây, bạn điền thông tin chi tiết của cơ sở dữ liệu, lưu ý rằng bạn cung
cấp thông tin cho tài khoản người dùng MySQL root, chứ không phải tài
khoản người dùng PowerDNS MySQL vừa tạo ra phía trên. Đồng thời
cung cấp thêm mật khẩu admin cho giao diện web Poweradmin (mật khẩu
này dùng để đăng nhập tài khoản admin vào Poweradmin sau này):

Tiếp theo, điền thông tin cần thiết cho người dùng power_admin của
MySQL vừa tạo ra phía trên, đồng thời khởi tạo 2 giá trị nameserver mặc
định sẽ được dùng trong khu vực “thao tác” trừ khi bạn cung cấp 1 giá trị
nameserver khác khi khởi tạo vùng hoạt động mới (thông thường là sự
kết hợp giữa tên hệ thống hiện thời và tên của slave server):


×