GNU/Linux >> Linux の 問題 >  >> Panels >> Panels

CentOS5.1へのMyDNSとMyDNSConfigコントロールパネルのインストール

CentOS5.1へのMyDNSとMyDNSConfigコントロールパネルのインストール

このチュートリアルでは、CentOS5.1にMyDNSとMyDNSConfigをインストールして構成する方法について説明します。 MyDNSは、Bindやdjbdnsなどの構成ファイルの代わりにMySQLデータベースをバックエンドとして使用するDNSサーバーです。利点は、MyDNSがデータベースからレコードを読み取るだけであり、DNSレコードが変更されたとき、またはゾーンが作成/編集/削除されたときに、再起動/再ロードする必要がないことです。セカンダリネームサーバーは、同じデータベースにアクセスするMyDNSの2番目のインスタンスをインストールするか、より冗長にするために、MySQLマスター/スレーブレプリケーション機能を使用してデータをセカンダリネームサーバーにレプリケートすることで簡単にセットアップできます。

MyDNSConfigは、MyDNSへの使いやすいWebベースのインターフェイスです。 MyDNSConfigは、MyDNSで利用可能なすべてのタイプのDNSレコードを作成でき、ユーザー管理やアクセス権限などの機能を追加します。

これがあなたのために働くという保証はありません!

1予備メモ

このチュートリアルでは、ホスト名server1.example.comとIPアドレス192.168.0.100を使用します。これらの設定は異なる場合があるため、必要に応じて置き換える必要があります。

2前提条件のインストール

このチュートリアルの過程でインストールするパッケージの一部は公式のCentOS5.1リポジトリでは利用できないため、最初にCentOSシステムでRPMforgeリポジトリを有効にします。

rpm -Uhv http://apt.sw.be/packages/rpmforge-release/rpmforge-release-0.3.6-1.el5.rf.i386.rpm

MyDNSConfigは、PHPで記述されたMyDNSへのWebベースのインターフェースです。これには、PHPが有効になっているWebサーバーとMySQLデータベースサーバーが必要です。 Apache、PHP、およびMySQLがすでにインストールされている場合は、この手順をスキップできます。また、ここにphpMyAdminをインストールして、必要に応じてMySQLデータベースへのWebインターフェイスを利用できるようにします。

yum install httpd mysql-server php php-mysql php-mbstring phpmyadmin

MySQLを起動します:

chkconfig --levels 235 mysqld on
/etc/init.d/mysqld start

次に、MySQLルートアカウントのパスワードを設定します。

mysqladmin -u root password yourrootsqlpassword
mysqladmin -h server1.example.com -u root password yourrootsqlpassword

次に、phpMyAdminを設定します。 phpMyAdminがローカルホストからだけでなく接続を許可するようにApache構成を変更します(スタンザをコメントアウトすることにより):

vi /etc/httpd/conf.d/phpmyadmin.conf
#
#  Web application to manage MySQL
#

#<Directory "/usr/share/phpmyadmin">
#  Order Deny,Allow
#  Deny from all
#  Allow from 127.0.0.1
#</Directory>

Alias /phpmyadmin /usr/share/phpmyadmin
Alias /phpMyAdmin /usr/share/phpmyadmin
Alias /mysqladmin /usr/share/phpmyadmin

次に、phpMyAdminの認証をcookieからhttp:

に変更します。
vi /usr/share/phpmyadmin/config.inc.php
[...]
/* Authentication type */
$cfg['Servers'][$i]['auth_type'] = 'http';
[...]

次に、Apacheのシステム起動リンクを作成して起動します:

chkconfig --levels 235 httpd on
/etc/init.d/httpd start

これで、ブラウザをhttp://server1.example.com/phpmyadmin/またはhttp://192.168.0.100/phpmyadmin/に誘導し、ユーザー名rootと新しいrootMySQLパスワードでログインできます。

3MyDNSConfigのインストール

MySQLにログインして、データベースを作成します。

mysql -u root -p

CREATE DATABASE mydns;
GRANT SELECT、INSERT、UPDATE、DELETEONmydns。*TO'mydns'@'localhost' IDENTIFIED BY'mydnspassword';
GRANT SELECT、INSERT、UPDATE、DELETEONmydns。* TO'mydns' @'localhost.localdomain' IDENTIFIED BY'mydnspassword';
FLUSH PRIVILEGES;
quit;

上記のコマンドのmydnspasswordという単語を任意のパスワードに置き換えます。

MyDNSConfigのダウンロード:

cd / tmp
wget http://mesh.dl.sourceforge.net/sourceforge/mydnsconfig/MyDNSConfig-1.1.0.tar.gz
tar xvfz MyDNSConfig-1.1.0.tar.gz
cd MyDNSConfig-1.1.0

MyDNSConfigをインストールします:

mkdir / usr / share / mydnsconfig
cp -rf interface / * / usr / share / mydnsconfig /
ln -s / usr / share / mydnsconfig / web / / var / www / html / mydnsconfig

MyDNSConfig MySQLデータベースをインストールします:

mysql -u root -p mydns < install/mydnsconfig.sql

上記のコマンドはパスワードを要求します。MySQLrootユーザーのパスワードを入力してください。

MyDNSConfig構成を編集します。正しいデータベース設定を入力してください:

vi /usr/share/mydnsconfig/lib/config.inc.php
<?php
/*
Copyright (c) 2005, Till Brehm, Falko Timme, projektfarm Gmbh
All rights reserved.
Redistribution and use in source and binary forms, with or without modification,
are permitted provided that the following conditions are met:
    * Redistributions of source code must retain the above copyright notice,
      this list of conditions and the following disclaimer.
    * Redistributions in binary form must reproduce the above copyright notice,
      this list of conditions and the following disclaimer in the documentation
      and/or other materials provided with the distribution.
    * Neither the name of ISPConfig nor the names of its contributors
      may be used to endorse or promote products derived from this software without
      specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
ini_set('register_globals',0);
$conf["app_title"] = "MyDNSConfig";
$conf["app_version"] = "1.1.0";

$conf["rootpath"]            = "/usr/share/mydnsconfig";
$conf["fs_div"]                = "/"; // File system divider, \\ on windows and / on linux and unix
$conf["classpath"]            = $conf["rootpath"].$conf["fs_div"]."lib".$conf["fs_div"]."classes";
$conf["temppath"]            = $conf["rootpath"].$conf["fs_div"]."temp";

/*
        Database Settings
*/

$conf["db_type"]        = 'mysql';
$conf["db_host"]        = 'localhost';
$conf["db_database"]        = 'mydns';
$conf["db_user"]        = 'mydns';
$conf["db_password"]        = 'mydnspassword';

/*
        External programs
*/
$conf["programs"]["wput"]    = $conf["rootpath"]."/tools/wput/wput";

/*
        Themes
*/
$conf["theme"]            = 'grey';
$conf["html_content_encoding"]    = 'text/html; charset=iso-8859-1';
$conf["logo"]             = 'themes/default/images/mydnsconfig_logo.gif';
/*
        Default Language
*/
$conf["language"]                = 'en';

/*
        Auto Load Modules
*/
$conf["start_db"]                = true;
$conf["start_session"]    = true;
/*
        DNS Settings
*/
$conf["auto_create_ptr"] = 1; // Automatically create PTR records?
$conf["default_ns"] = 'ns1.example.com.'; // must be set if $conf['auto_create_ptr'] is 1. Don't forget the trailing dot!
$conf["default_mbox"] = 'admin.example.com.'; // Admin email address. Must be set if $conf['auto_create_ptr'] is 1. Replace "@" with ".". Don't forget the trailing dot!
$conf["default_ttl"] = 86400;
$conf["default_refresh"] = 28800;
$conf["default_retry"] = 7200;
$conf["default_expire"] = 604800;
$conf["default_minimum_ttl"] = 86400;
?>

その後、MyDNSConfigインストーラーを/tmpディレクトリから削除します。

cd / tmp
rm -rf MyDNSConfig-1.1.0 /
rm -f MyDNSConfig-1.1.0.tar.gz

CentOS5.1へのMyDNSとMyDNSConfigコントロールパネルのインストール-2ページ

4MyDNSのインストール

次に、mydns-mysql rpmパッケージをhttp://mydns.bboy.net/download/からダウンロードし、次のようにインストールします。

wget http://mydns.bboy.net/download/mydns-mysql-1.1.0-1.i386.rpm
rpm -ivh mydns-mysql-1.1.0-1.i386.rpm

MyDNS構成ファイル/etc/mydns.confを開き、正しいデータベースの詳細を入力し、allow-axfrをyesに設定してゾーン転送を許可し、TCPを有効にして(allow-tcp =yes)、再帰リゾルバーを指定します(つまり、有効なネームサーバー(例:ISPから、例:recursive =213.191.92.86)を使用して、MyDNSが権限のないドメインのクエリに応答できるようにします。

vi /etc/mydns.conf
##
##  /etc/mydns.conf
##  Wed Jan 18 17:18:48 2006
##  For more information, see mydns.conf(5).
##


                                # DATABASE INFORMATION

db-host = localhost             # SQL server hostname
db-user = mydns                 # SQL server username
db-password = mydnspassword        # SQL server password
database = mydns                # MyDNS database name


                                # GENERAL OPTIONS

user = nobody                   # Run with the permissions of this user
group = nobody                  # Run with the permissions of this group
listen = *                      # Listen on these addresses ('*' for all)
no-listen =                     # Do not listen on these addresses


                                # CACHE OPTIONS

zone-cache-size = 1024          # Maximum number of elements stored in the zone cache
zone-cache-expire = 60          # Number of seconds after which cached zones expires
reply-cache-size = 1024         # Maximum number of elements stored in the reply cache
reply-cache-expire = 30         # Number of seconds after which cached replies expire


                                # ESOTERICA

log = LOG_DAEMON                # Facility to use for program output (LOG_*/stdout/stderr)
pidfile = /var/run/mydns.pid    # Path to PID file
timeout = 120                   # Number of seconds after which queries time out
multicpu = 1                    # Number of CPUs installed on your system
recursive = 213.191.92.86                       # Location of recursive resolver
allow-axfr = yes                # Should AXFR be enabled?
allow-tcp = yes                 # Should TCP be enabled?
allow-update = no               # Should DNS UPDATE be enabled?
ignore-minimum = no             # Ignore minimum TTL for zone?
soa-table = soa                 # Name of table containing SOA records
rr-table = rr                   # Name of table containing RR data
soa-where =                     # Extra WHERE clause for SOA queries
rr-where =                      # Extra WHERE clause for RR queries

次に、MyDNSのシステム起動リンクを作成し、MyDNSを起動します。

chkconfig --levels 235 mydns on
/etc/init.d/mydns start

最後に、MyDNSのシステム起動リンクを修正する必要があります。 MyDNSはMySQLに依存しているため、MyDNSはMySQLの起動後に起動する必要があります。そうしないと、失敗します。 MyDNSのデフォルトの起動リンクはMySQLの前に起動するため、これは間違っているため、次のように修正します。

cd /etc/rc.d/rc3.d
mv S52mydns S99mydns
cd /etc/rc.d/rc4.d
mv S52mydns S99mydns
cd / etc/rc。 d / rc5.d
mv S52mydns S99mydns

MySQLはスタートアップリンクS64mysqlを使用するため、MyDNSスタートアップリンクの名前をS52mydnsからS99mydnsに変更すると、MyDNSがMySQLの後に開始されるようになります。

これで、MyDNSとMyDNSConfigの基本的なインストールが完了しました。 MyDNSConfigインターフェイスにログインするには、Webブラウザを開き、次のURLを入力して入力します。

http://<your_ip_address>/mydnsconfig/

をサーバーのIPアドレスに置き換えます。

MyDNSConfigのデフォルトのユーザー名とパスワードは次のとおりです。

ユーザー名:admin
パスワード:admin

[システム]>[ユーザー]でログインした後、パスワードを変更することを忘れないでください。

5MyDNSConfigの使用

この章では、サンプルゾーンtest.comとAレコードwww.test.comを作成して、MyDNSConfigの使用方法を示します。

最初のログイン:

[新しいゾーンの追加]ボタンをクリックします:

[SOA]タブのフォームには、デフォルト値が事前にシードされています。 test.comに記入してください。 (最後のドットに注意してください!)[Origin]フィールドに入力し、必要に応じて他のフィールドに変更を加えます。 [ゾーン転送]フィールドは空のままにすることができます。これは、どのサーバーもMyDNSサーバーに接続してゾーン転送を開始できることを意味します。 IPアドレスを入力すると、そのシステムのみが接続できます:

[保存]をクリックすると、新しいゾーンが[ゾーン(SOA)]ページに一覧表示されます。 test.comをクリックします。ゾーンのプロパティに移動するためのリンク:

次に、[レコード]タブをクリックします。

次に、[新しいレコードの追加]ボタンをクリックして、レコード(A / MX / CNAME / ...)を作成します。

Aレコードwww.test.comを作成するには、[名前]フィールドにwwwを入力し、[タイプ]として[A]を選択し、[データ]フィールドにwww.test.comのIPアドレス(例:1.2.3.4)を入力して、TTL(すぐに)。 Aレコードの場合、[設定/優先度]フィールドは空のままにすることができます。 MXレコードに必要です:

[保存]をクリックすると、ゾーンtest.comのレコードのリストにwww.test.comが表示されます。

すでにそれだけです-再起動は必要ありません。 MyDNSがwww.test.comを解決できるかどうかをテストできるようになりました:

dig @localhost www.test.com

すべてがうまくいけば、出力は次のようになります。

[[email protected]〜]#dig @localhost www.test.com

; <<>> DiG 9.5.0a6 <<>> @localhost www.test.com
; (1台のサーバーが見つかりました)
;;グローバルオプション:printcmd
;;回答を得ました:
;; ->> HEADER <<-opcode:QUERY、status:NOERROR、id:55393
;;フラグ:qr aa rd ra;クエリ:1、回答:1、権限:0、追加:0

;;質問セクション:
;www.test.com。 IN A

;;回答セクション:
www.test.com。 86400 IN A 1.2.3.4

;;クエリ時間:24ミリ秒
;;サーバー:127.0.0.1#53(127.0.0.1)
;;日時:2007年12月3日23:47:14
;; MSGサイズrcvd:46

[[email protected]〜]#

  • MyDNS:http://mydns.bboy.net
  • MyDNSConfig:http://www.mydnsconfig.org
  • CentOS:http://www.centos.org

Panels
  1. コントロールパネルにアクセスするにはどうすればよいですか?

  2. コントロールパネルからログイン情報を再送信するにはどうすればよいですか?

  3. コントロールパネルをリセラーとして使用するにはどうすればよいですか?

  1. CentOSへのPostgreSQLとphpPgAdminのインストール

  2. コントロールパネルから連絡先情報を更新するにはどうすればよいですか?

  3. 顧客向けにコントロールパネルの外観をカスタマイズするにはどうすればよいですか?

  1. Conetixコントロールパネルにログインする方法

  2. PleskコントロールパネルでMSSQLまたはMySQLデータベースを削除する方法

  3. MyDNSConfigコントロールパネルとUbuntu6.10のDNSMasqを使用したMyDNS