CentOS サーバー構築 Xen 仮想サーバー

(最終更新日時:2012-11-04 04:18:47)

サーバーマシンの入れ替えに伴い、仮想サーバーの構築は CentOS サーバー構築 KVM 仮想サーバー に変更したため、当コンテンツの更新を停止しています。
また、コンテンツの参照状況により、予告なく削除しますのでご了承ください。

サーバーメンテナンスやセキュリティ面を考慮し、データベースサーバーを仮想化した別サーバーで稼働させることにします。
実機の CPU が、完全仮想化に対応していないため、Xen による準仮想化 を採用しました。
また、仮想サーバーのネットワークは以下のポリシーで設定することにします。
• ネットワークセグメントは、仮想サーバー用に独立させます。(192.168.101.0/24)
• 仮想サーバー(内部 LAN)からインターネットへの通信を許可します。
iptables -A FORWARD -i virbr0 -o eth0 -s 192.168.101.0/24 -p tcp --sport 1024:65535 -j ACCEPT
iptables -A POSTROUTING -t nat -o eth0 -j MASQUERADE
• Domain0 以外から仮想サーバーへの通信は許可しません。
• 仮想サーバーは外部へ直接公開しません。

Xen のインストール

サーバーマシンへ CentOS をインストールする際に『仮想化』を選択していれば、Xen は既にインストールされており、サーバーマシンはホストマシン (Domain0) として稼働しています。

Xen がインストールされていないサーバーマシンへ、後から Xen をインストールする手順は以下になります。
# # CentOS インストール時の『仮想化』パッケージ群を yum でインストールします
# yum groupinstall Virtualization

# # カーネルが更新された場合、デフォルトの起動カーネルが Xen 対応カーネルになるようにします
# vi /etc/sysconfig/kernel
----------(vi ここから)----------
       :
DEFAULTKERNEL=kernel-xen
----------(vi ここまで)----------

# # GRUB で Xen 対応カーネルがデフォルト起動するようにします
# vi /boot/grub/menu.lst
----------(vi ここから)----------
       :
default=0
       :
----------(vi ここまで)----------

# # 再起動します
# reboot
DEFAULTKERNEL の設定を行うことにより、カーネルが更新された場合でも /boot/grub/menu.lstdefault 設定が Xen 対応カーネルを指すように自動的に書き換えられます。

ネットワーク設定

Xen のデフォルトでは、仮想サーバーとの接続用に virbr0 というインターフェースが作成されます。
このインターフェースは、
inet addr:192.168.122.1 Bcast:192.168.122.255 Mask:255.255.255.0
となっており、NAT ルーターおよび DHCP サーバーの機能を併せ持っています。

今回の仮想サーバー構築では、ネットワークセグメントを 192.168.101.0/24 に変更します。
また、各仮想サーバーの IP アドレスは 個別に設定 することにしますので DHCP 機能は不要です。
さらに、NAT ルーター機能も不要になります。

以上のことから、デフォルトの virbr0 を使用せず、ネットワークインターフェースのみを持つ virbr0 を新たに作成して置き換えることにします。
# # 念のため、デフォルトインターフェースの設定内容をバックアップしておきます
# mkdir -p /home/xen/libvirt                                  # バックアップ先を作成します
# cp /etc/libvirt/qemu/networks/default.xml /home/xen/libvirt/

# # デフォルトインターフェースのネットワーク定義を削除します
# virsh net-destroy default                                   # ネットワークを停止します
# virsh net-autostart default --disable                       # 自動起動設定を解除します
# virsh net-undefine default                                  # ネットワーク定義を削除します

# # 新しいネットワークの定義ファイルを作成します
# vi /home/xen/libvirt/virtnet.xml
----------(vi ここから)----------
<network>
  <name>virtnet</name>
  <bridge name="virbr0" />
  <ip address="192.168.101.11" netmask="255.255.255.0" />
</network>
----------(vi ここまで)----------

# # 新しいネットワーク定義を登録して起動します
# virsh net-define /home/xen/libvirt/virtnet.xml              # ネットワーク定義を登録します
# virsh net-autostart virtnet                                 # 自動起動設定を行います
# virsh net-start virtnet                                     # ネットワークを起動します

ファイアウォール iptables に仮想サーバーのネットワークセグメントの定義を追加します。
※ファイアウォール設定は Server運用(iptables)の設定ファイル で行っています。
# vi /usr/local/sbin/firewall.sh
----------(vi ここから)----------
     :
# 外部I/Fのネットワーク情報
     :
# 内部I/Fのネットワーク情報
     :
# 仮想I/Fのネットワーク情報
VIRIF="virbr0"
VIRIP=$(ifconfig $VIRIF | grep inet | cut -d ":" -f 2 | cut -d " " -f 1)
VIRMASK=$(ifconfig $VIRIF | grep Mask | cut -d ":" -f 4)
VIRLAN=$VIRIP'/'$VIRMASK
     :
# --- (INPUTチェイン) ---
     :
# 内部LANからのパケットを許可
     :
# 仮想LANからのパケットを許可
iptables -A INPUT -i $VIRIF -s $VIRLAN -j ACCEPT
     :
# --- (OUTPUTチェイン) ---
     :
# 内部LANへのパケットを許可
     :
# 仮想LANへのパケットを許可
iptables -A OUTPUT -o $VIRIF -d $VIRLAN -j ACCEPT
     :
# --- (FORWARDチェイン) ---
     :
# 内部LANの非特権ポートから外部への転送を許可
     :
# 仮想LANの非特権ポートから外部への転送を許可
iptables -A FORWARD -i $VIRIF -o $EXTIF -s $VIRLAN -p tcp --sport $UNPRIVPORTS -j ACCEPT----------(vi ここまで)----------

# firewall.sh                                                 # 設定を反映させます

ゲストマシン(DomainU)のインストール準備

準仮想化でゲストマシン(DomainU)をインストールする場合、実機の DVD ドライブから直接インストールすることはできず、ネットワーク上からのインストールのみが可能です。
さらに、インストール時だけではなく、バックアップを行ったりする場合にも、ネットワーク越しに相互参照ができた方が便利ですので、NFS(Network File System) を使用します。
# # NFSがインストールされていなければ、インストールします
# yum -y install nfs-utils

# # 自動起動設定を行います
# chkconfig nfs on

# # DVDマウント用ディレクトリを作成します
# mkdir /mnt/dvd

# # ゲストマシンから参照されるディレクトリを作成します
# mkdir /home/exports
# chmod 777 /home/exports

# # NFSの定義を行います
# vi /etc/exports
----------(vi ここから)----------
/mnt/dvd        192.168.101.0/24(ro)                          # ゲストマシンから参照のみで許可しています
/home/exports   192.168.101.0/24(ro)
----------(vi ここまで)----------

# vi /etc/hosts.deny
----------(vi ここから)----------portmap: ALL                                                  # リモートによる NFS 関連サービスの使用を禁止します
lockd:   ALL
rquotad: ALL
mountd:  ALL
statd:   ALL
----------(vi ここまで)----------

# vi /etc/hosts.allow
----------(vi ここから)----------portmap: 192.168.101.0/255.255.255.0                          # 仮想サーバーからの NFS 関連サービスの使用は許可します
lockd:   192.168.101.0/255.255.255.0
rquotad: 192.168.101.0/255.255.255.0
mountd:  192.168.101.0/255.255.255.0
statd:   192.168.101.0/255.255.255.0
----------(vi ここまで)----------

# # NFSサービスの(再)起動を行います
# service portmap restart
# service nfs     restart

CentOS の DVD メディアを挿入した DVD ドライブを実マシンに接続して、マウントします。
# umount /dev/dvd                                             # 念のためアンマウントします
# mount -r -t iso9660 /dev/dvd /mnt/dvd

次に、ゲストマシンのインストール先を準備します。
当サーバーでは、ハードディスク上に仮想マシン用の物理パーティションを準備し、そこに各ゲストマシン毎に作成した LVM の論理ボリュームにインストールすることにしました。
# # ハードディスクの物理パーティションは /dev/sda4 として作成しています。
# fdisk -l

Disk /dev/sda: 160.0 GB, 160041885696 bytes
255 heads, 63 sectors/track, 19457 cylinders
Units = シリンダ数 of 16065 * 512 = 8225280 bytes

デバイス Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1          13      104391   83  Linux
/dev/sda2              14        3053    24418800   8e  Linux LVM
/dev/sda3            3054        7917    39070080   8e  Linux LVM
/dev/sda4            7918       19457    92695050   8e  Linux LVM

# # 物理ボリュームを作成します
# pvcreate /dev/sda4

# # ボリュームグループを作成します
# # (例)VgVirtual という名称で、物理ボリューム /dev/sda4 上に作成します
# vgcreate VgVirtual /dev/sda4

# # ゲストマシンインストール先の論理ボリュームを作成します
# # (例)LvMySQL という名称で、ボリュームグループ VgVirtual 上に 15G のサイズで作成します
# lvcreate -n LvMySQL -L 15G VgVirtual
# lvdisplay /dev/VgVirtual/LvMySQL
  --- Logical volume ---
  LV Name                /dev/VgVirtual/LvMySQL
  VG Name                VgVirtual
  LV UUID                jShZdV-3U1v-Kk6J-Ii7h-aYwQ-xV1A-L8eAR8
  LV Write Access        read/write
  LV Status              available
  # open                 0
  LV Size                15.00 GB
  Current LE             3840
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           253:7

ゲストマシン(DomainU)のインストール

ゲストマシンのインストールは、Windows クライアント PC から Windows X-Server Xming を使用して、GUI の管理ツール virt-manager で行うことにします。

•ゲストマシンの作成
(※)クリックすると別画面で拡大画像が開きます。画像は Windows7 64bit のものです。
xen01.gif Xming を起動し、PuTTY で Domain0 の SSH サーバーにログインします。
SSH コンソールから virt-manager を起動します。
xen02.gif localhost 上に新規ゲストマシン(DomainU)をインストールします。

localhost を選択し、『新規(N)』でインストールを開始します。
xen03.gif インストール手順の説明です。

進む(F)』で次に進みます。
xen04.gif 仮想マシンの名称を指定します。

名称を入力後、『進む(F)』で次に進みます。
xen05.gif 仮想化方式を指定します。
CPU が完全仮想化に対応していないため、準仮想化しか選択できなくなっています。

進む(F)』で次に進みます。
xen06.gif インストール方式を指定します。
準仮想化の場合、ネットワークインストールのみ可能です。

進む(F)』で次に進みます。
xen07.gif OS のインストール元を指定します。
CentOS のインストール DVD をマウントしたディレクトリを NFS で指定します。

進む(F)』で次に進みます。
xen08.gif インストール先を指定します。
LVM 上の論理パーティション(論理ボリューム)にインストールするようにしています。

インストール先の論理ボリュームを指定し、『進む(F)』で次に進みます。
xen09.gif インストールで使用するネットワークの指定です。

進む(F)』で次に進みます。
xen10.gif ゲストマシンに割り当てる CPU とメモリの指定です。

進む(F)』で次に進みます。
xen11.gif インストール内容の確認です。

完了(F)』でゲストマシンが作成されます。

•ゲスト OS のインストール
(※)クリックすると別画面で拡大画像が開きます。画像は Windows7 64bit のものです。
xen21.gif ゲストマシンが作成されると OS のインストールが開始されます。

言語 Japanese を選択し、『OK』で次に進みます。
xen22.gif テキストモードでは日本語が表示できないことの警告です。

OK』で次に進みます。
xen23.gif キーボードの指定です。

jp106 を選択し、『OK』で次に進みます。
xen24.gif TCP/IP の指定です。

ゲストマシンの IPv4 の IP アドレスは固定にしますので、Manual configuration を選択します。
IPv6 は使用しませんので、Enable IPv6 support は選択しません。

OK』で次に進みます。
xen25.gif 前の画面で Manual configuration を選択しましたので、ネットワークアドレスの設定を行います。

OK』で次に進みます。
xen31.gif これ以降、通常のインストール手順と同様に、ゲストマシンへの OS インストールを行います。

データベースサーバー専用にするため、インストールするパッケージは、カスタマイズ指定で
• 言語 - 日本語のサポート
のみを選択しています。
※ベースも選択していません

インストールが完了したら、DVD ドライブから CentOS の DVD メディアを取り出し、必要に応じて DVD ドライブをアンマウントします。

ゲストマシン(DomainU)のログイン設定

ゲストマシン上での作業は、Xen の管理コンソールを使用してもよいのですが、管理コンソール外との間で コピー&ペーストができないという効率的に大きな問題があります。
そこで、Domain0 から SSH で接続し、SSH コンソールを使用することにします。

また、ファイアウォール iptables の設定で、Domain0 以外からゲストマシンへは直接アクセスできないように設定しています。
そのため、ゲストマシンへの SSH ログインはパスワード認証でも良いのですが、念のため公開鍵認証方式のみにします。

ゲストマシン上にログインユーザーを作成します。
$ # Domain0 からゲストマシン actmysql に SSH でログインします
$ # なお、DNS サーバーを運用していますので、IP アドレスではなくホスト名を使用しています
$ # (注)まだ、パスワード認証になっています
$ ssh root@actmysql.server.localnet
The authenticity of host 'actmysql.server.localnet (192.168.101.101)' can't be established.
RSA key fingerprint is …
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'actmysql.server.localnet,192.168.101.101' (RSA) to the list of known hosts.
root@actmysql.server.localnet's password: ゲストマシン actmysql の root ログインパスワード

# # ゲストマシン上での su コマンドの使用を root ユーザーと wheel グループユーザーに限定します
# vi /etc/pam.d/su
----------(vi ここから)----------
       :
# Uncomment the following line to require a user to be in the "wheel" group.
#auth         required        pam_wheel.so use_uid
auth         required        pam_wheel.so use_uid             # コメントを外します
       :
----------(vi ここまで)----------

# # ゲストマシン上にログインユーザーを作成します
# mkdir /home/users/                                          # users グループ用のホームディレクトリを作成しています
# useradd -g users -d /home/users/user1 user1 -G wheel
# passwd user1                                                # ログインパスワードを設定しておきます
Changing password for user user1.
New UNIX password: ログインパスワード
Retype new UNIX password: ログインパスワード(再入力)
passwd: all authentication tokens updated successfully.

# # ログインユーザーのホームディレクトリに .ssh ディレクトリを作成します
# mkdir /home/users/user1/.ssh
# chown user1.users /home/users/user1/.ssh
# chmod 700 /home/users/user1/.ssh

# exit                                                        # ゲストマシンから出ます
Connection to actmysql.server.localnet closed.

ゲストマシンにログインする Domain0 のユーザー(例:domain0)で SSH の鍵セットを作成し、公開鍵をゲストマシンのログインユーザーへ渡します。
$ # Domain0 のユーザーで SSH の鍵セットを作成します
$ # 既に作成している場合、新たに作成する必要はありません
$ ssh-keygen -t rsa -C "SSH Connection User - domain0"
Generating public/private rsa key pair.
Enter file in which to save the key (/home/users/domain0/.ssh/id_rsa): [Enter]
Created directory '/home/users/domain0/.ssh'.
Enter passphrase (empty for no passphrase): 鍵のパスフレーズ
Enter same passphrase again: 鍵のパスフレーズ(再入力)
Your identification has been saved in /home/users/domain0/.ssh/id_rsa.
Your public key has been saved in /home/users/domain0/.ssh/id_rsa.pub.
The key fingerprint is:
… SSH Connection User : domain0

$ # ゲストマシンのログインユーザーに公開鍵を渡します
$ scp .ssh/id_rsa.pub user1@actmysql.server.localnet:.ssh/
The authenticity of host 'actmysql.server.localnet (192.168.101.101)' can't be established.
RSA key fingerprint is ….
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'actmysql.server.localnet,192.168.101.101' (RSA) to the list of known hosts.
user1@actmysql.server.localnet's password: ゲストマシンのログインユーザー user1 のログインパスワード
id_rsa.pub                                                                            100%  414     0.4KB/s   00:00

ゲストマシンにログインして Domain0 から渡された公開鍵を登録します。
さらに、OpenSSH の設定を変更し、パスワードによるログインを禁止します。
$ # ゲストマシンへログインします
$ ssh user1@actmysql.server.localnet

$ # 渡された公開鍵を登録します
$ cd .ssh
$ cat id_rsa.pub >> authorized_keys
$ rm id_rsa.pub

$ # OpenSSH の設定を変更します
$ su -
パスワード:root ログインパスワード

# vi /etc/ssh/sshd_config
----------(vi ここから)----------OpenSSH運用 を参考に定義ファイルの編集を行います
     :
----------(vi ここまで)----------

# service sshd restart                                        # SSH デーモンを再起動します

# exit

$ # Domain0 の SSH ユーザーに戻ります
$ exit
Connection to actmysql.server.localnet closed.

$ # パスワード認証でログインできなくなっています
$ mv .ssh/id_rsa .ssh/id_rsa.bak
$ ssh user1@actmysql.server.localnet
Permission denied (publickey,gssapi-with-mic).

$ # 秘密鍵でログインします
$ mv .ssh/id_rsa.bak .ssh/id_rsa
$ ssh user1@actmysql.server.localnet
Enter passphrase for key '/home/users/domain0/.ssh/id_rsa': 鍵のパスフレーズ

ゲストマシン(DomainU)への追加パッケージインストール

CentOS のインストール時には、最低限のパッケージのみをインストールしていますので、その他必要なパッケージをインストールします。

最初に、インストールされているパッケージを最新にします。
$ # Domain0 からゲストマシンにログインします
$ ssh user1@actmysql.server.localnet
Enter passphrase for key '/home/users/domain0/.ssh/id_rsa': 鍵のパスフレーズ

$ su -
パスワード:root ログインパスワード

# # パッケージを最新にします
# rpm --import http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5
# yum -y update                                               # 手動で最新にします

# reboot                                                      # 再起動します
Connection to actmysql.server.localnet closed.

ゲストマシン actmysql の再起動完了後、インストールされているパッケージを最新にします。
$ # Domain0 からゲストマシンにログインします
$ ssh user1@actmysql.server.localnet
Enter passphrase for key '/home/users/domain0/.ssh/id_rsa': 鍵のパスフレーズ

$ su -
パスワード:root ログインパスワード

# # パッケージの自動更新設定を行います
# yum -y install yum-updatesd                                 # 自動更新パッケージをインストールします

# vi /etc/yum/yum-updatesd.conf
----------(vi ここから)----------パッケージの自動更新設定 を参考に定義ファイルの編集を行います
     :
----------(vi ここまで)----------

# service yum-updatesd start                                  # yum の自動更新を開始します

# # その他必要なパッケージをインストールします
# yum -y install anacron vixie-cron                           # cronデーモン
# yum -y install sudo                                         # 別ユーザーでのコマンド実行
# yum -y install screen                                       # 仮想端末管理ソフト
# yum -y install wget                                         # ダウンロードマネージャ

# # sudo コマンドの使用を wheel グループユーザーに許可します
# visudo
----------(visudo ここから)----------
       :
## Allows people in group wheel to run all commands
# %wheel        ALL=(ALL)       ALL
%wheel  ALL=(ALL)       ALL                                   # コメントを外します

## Same thing without a password
       :
----------(visudo ここまで)----------

# exit

$ exit                                                        # ゲストマシンからログアウトします
Connection to actmysql.server.localnet closed.

ゲストマシン(DomainU)のファイアーウォール設定

iptables を使用して、ゲストマシン(DomainU)のファイアーウォール設定を行います。

外部に公開しませんので、仮想サーバーのネットワークセグメントからのアクセスのみを許可するようにしています。
$ # Domain0 からゲストマシンにログインします
$ ssh user1@actmysql.server.localnet
Enter passphrase for key '/home/users/domain0/.ssh/id_rsa': 鍵のパスフレーズ

$ su -
パスワード:root ログインパスワード

# # ファイアーウォールのスクリプトを作成します
# vi /usr/local/sbin/firewall.sh
----------(vi ここから)----------
#!/bin/sh
# ==========================================================================================
# File    : firewall.sh
# Author  : System House ACT
#
# 仮想サーバーのファイアウォールの設定を行う
#
# Copyright 2010 System House ACT All rights reserved.
# ==========================================================================================

# --------------------------------------------------------------------------- (変数定義) ---
# 仮想サーバーのネットワーク情報
VIRIF="eth0"
VIRIP=$(ifconfig $VIRIF | grep inet | cut -d ":" -f 2 | cut -d " " -f 1)
VIRMASK=$(ifconfig $VIRIF | grep Mask | cut -d ":" -f 4)
VIRLAN=$VIRIP'/'$VIRMASK

# 非特権ポート
UNPRIVPORTS="1024:65535"

# ----------------------------------------------------------------------------- (初期化) ---
# 全チェインを空にする
iptables           -F
iptables -t nat    -F
iptables -t mangle -F

# 全ユーザー定義チェインを削除する
iptables           -X
iptables -t nat    -X
iptables -t mangle -X

# 全チェインのカウンタをクリアする
iptables           -Z
iptables -t nat    -Z
iptables -t mangle -Z

# デフォルトポリシーをDROPに設定する
iptables -P INPUT   DROP
iptables -P OUTPUT  DROP
iptables -P FORWARD DROP

# iptablesパラメータ
LOGLIMIT="1/s"                                                  # ログマッチ許可   1回/秒
LOGBURST="3"                                                    # ログマッチ最大値 3回

# ----------------------------------------------------------------------- (ログチェイン) ---
# DROPパケット
iptables -N LOG-DROP
iptables -A LOG-DROP -p all \
                     -m limit --limit $LOGLIMIT --limit-burst $LOGBURST \
                     -j LOG --log-prefix "iptables DROP "
iptables -A LOG-DROP -f \
                     -m limit --limit $LOGLIMIT --limit-burst $LOGBURST \
                     -j LOG --log-prefix "iptables FRAGMENT DROP "
iptables -A LOG-DROP -j DROP

# ---------------------------------------------------------------------- (INPUTチェイン) ---
# ローカルからのパケットを許可
iptables -A INPUT -i lo -j ACCEPT

# 仮想サーバーセグメントからのパケットを許可
iptables -A INPUT -i $VIRIF -s $VIRLAN -j ACCEPT

# ESTABLISHED/RELATED接続を許可
iptables -A INPUT -i $VIRIF -m state --state ESTABLISHED -j ACCEPT
iptables -A INPUT -i $VIRIF -p tcp --dport $UNPRIVPORTS \
                            -m state --state RELATED     -j ACCEPT
iptables -A INPUT -i $VIRIF -p udp --dport $UNPRIVPORTS -m state --state RELATED -j ACCEPT

iptables -A INPUT -j LOG-DROP

# --------------------------------------------------------------------- (OUTPUTチェイン) ---
# ローカルのパケットを許可する
iptables -A OUTPUT -o lo -j ACCEPT

# 仮想サーバーセグメントへのパケットを許可
iptables -A OUTPUT -o $VIRIF -d $VIRLAN -j ACCEPT

# OUPUT ICMPパケットを許可
iptables -A OUTPUT -o $VIRIF -p icmp -j ACCEPT

# 非特権ポートからのTCP/UDPパケットを許可
iptables -A OUTPUT -o $VIRIF -s $VIRIP -p tcp --sport $UNPRIVPORTS -j ACCEPT
iptables -A OUTPUT -o $VIRIF -s $VIRIP -p udp --sport $UNPRIVPORTS -j ACCEPT

iptables -A OUTPUT -j LOG-DROP

# ------------------------------------------------------------------------- (定義の保存) ---
service iptables save
----------(vi ここまで)----------

# # 作成したスクリプトを実行します
# chmod +x /usr/local/sbin/firewall.sh
# /usr/local/sbin/firewall.sh

# exit

$ exit                                                        # ゲストマシンからログアウトします
Connection to actmysql.server.localnet closed.

NFS(Network File System) 設定

ゲストマシンと Domain0 でファイル共有を行うため、NFS(Network File System) の設定を行います。

(※Domain0 からは参照のみ行えるように設定しています)
$ # Domain0 からゲストマシンにログインします
$ ssh user1@actmysql.server.localnet
Enter passphrase for key '/home/users/domain0/.ssh/id_rsa': 鍵のパスフレーズ

$ su -
パスワード:root ログインパスワード

# yum -y install nfs-utils                                    # ネットワークファイルシステムユーティリティ

# # 自動起動設定を行います
# chkconfig nfs on

# # 共有ディレクトリを作成します
# mkdir /home/exports
# chmod 777 /home/exports

# # NFSの定義を行います
# vi /etc/exports
----------(vi ここから)----------
/home/exports   gateway.server.localnet(ro)                   # Domain0 からのみ参照で許可しています
----------(vi ここまで)----------

# vi /etc/hosts.deny
----------(vi ここから)----------portmap: ALL                                                  # リモートによる NFS 関連サービスの使用を禁止します
lockd:   ALL
rquotad: ALL
mountd:  ALL
statd:   ALL
----------(vi ここまで)----------

# vi /etc/hosts.allow
----------(vi ここから)----------portmap: gateway.server.localnet                              # Domain0 からの NFS 関連サービスの使用は許可します
lockd:   gateway.server.localnet
rquotad: gateway.server.localnet
mountd:  gateway.server.localnet
statd:   gateway.server.localnet
----------(vi ここまで)----------

# NFSサービスの(再)起動を行います
# service portmap restart
# service nfs     restart

# exit

$ exit                                                        # ゲストマシンからログアウトします
Connection to actmysql.server.localnet closed.

フィードバック

記事の内容についてのご質問、ご指摘、その他ご意見等は、Weblog/Twitter にて受け付けております。

System House ACT Weblog 内記事 : Xen による仮想サーバーの構築

トラックバックまたはコメントにてお寄せください。

Twitter では .@systemact 宛につぶやいてください。
また、こちら から、この記事についてつぶやくことができます。
a System House to build an Accounting system by the Computer Technology