16.5.09

Ubuntu 8.04 LTS Server でメールサーバを構築する Session 1

なんやかんやでVMware ESXiが入ったサーバ上にUbuntuでメールサーバを立てることになったので、My備忘録的メモ。

ちなみにこの構築手順を確立するまで、本当にたくさんのサイトやらブログから情報や知恵を頂いたが、必死でやっていたのでどこだったか全く残っていない。

先人の皆様に感謝するとともに、この情報がまた誰かのお役に立てばと思いUP開始。


■VMware ESXi 3.5 上に Ubuntu をインストール

○仮想マシンのパラメータ
Virtual HD のサイズ : 120GB
RAMの割り当て量 : 1.5GB
CPU : 2つ
ネットワークポート1 : グローバル側回線
ネットワークポート2 : ローカル側回線

○Ubuntuのインストールパラメータ
言語 : 日本語
ソフトウェア : OpenSSH Server のみ
物理パーティション設定
/boot : 100MB(物理パーティション)
LVM : 残り(論理パーティション)

LVMパーティション設定
LV swap : 4GB
LV / : 16GB
LV /var : 8GB
LV /home : 残り


■インストール後の設定

○パッケージを更新し、とりあえず必要なものをインストール(文字化けするので英語環境で)
$LANG=C
$sudo aptitude update
$sudo aptitude safe-upgrade
$sudo aptitude install vim resolvconf iptables sysv-rc-conf logwatch

○VMware Toolsをインストール
VMwareのメニューから「Install VMware Tools」を実行
$mount /cdrom/
$sudo cp /cdrom/VMwareTools-3.5.0-153875.tar.gz /usr/local/src/
$cd /usr/local/src/
$sudo tar zxfv VMwareTools-3.5.0-153875.tar.gz
$cd vmware-tools-distrib
$sudo ./vmware-install.pl
→表示されるメッセージに従ってインストールを実行(通常はデフォルト値のままEnterで進む)
$sudo /etc/init.d/networking stop
$sudo rmmod pcnet32
$sudo rmmod vmxnet
$sudo depmod -a
$sudo modprobe vmxnet
$sudo /etc/init.d/networking start
$sudo sysv-rc-conf vmware-tools on
いったんUbuntuをシャットダウンし、VMwareのメニューから「Synchronize guest time with host」をONにして、再度Ubuntuを起動

○eth0(ローカル側if)の設定を追加
$sudo vim /etc/network/interfaces
→以下の内容を追加
# The local network interface
auto eth0
iface eth0 inet static
    address 192.168.0.10
    netmask 255.255.255.0
    network 192.168.0.0
    broadcast 192.168.0.255


○ネットワーク情報ファイルを更新
$sudo vim /etc/networks
→以下の内容を追加
localnet 192.168.0.0


○新しいネットワーク設定を反映
$sudo /etc/init.d/networking force-reload
→resolvconfにより /etc/resolv.conf が自動生成されるので確認

■SYN Flood & Smurf攻撃対策
$sudo sysctl -w net.ipv4.tcp_syncookies=1
$sudo sysctl -w net.ipv4.icmp_echo_ignore_broadcasts=1
$sudo vim /etc/sysctl.conf
→以下の行をアンコメント
net.ipv4.tcp_syncookies=1
net/ipv4/icmp_echo_ignore_broadcasts = 1


■ネットワークアクセス制限
$sudo vim /etc/hosts.allow
→以下の内容を追記
sshd: 192.168.0.

$sudo vim /ets/hosts.deny
→以下の内容を追記
ALL: ALL


■SSHの設定

○公開鍵を設置
$mkdir .ssh
$chmod 700 .ssh
$vim .ssh/authorized_keys2
→SSHパブリックキーを書き込み
$chmod 600 .ssh/authorized_keys2
$sudo vim /etc/ssh/sshd_config
→以下の内容を変更(rootログインとパスワード認証の禁止)
PermitRootLogin no
PasswordAuthentication no


○SSHの設定を反映
$sudo /etc/init.d/ssh force-reload

○SSHの動作確認
パスワード認証でSSH接続ができないことを確認
鍵ファイル認証でSSH接続ができることを確認

■Webminをインストール

$cd /usr/local/src/

○パッケージをダウンロード(最新版のURLはWebminのウェブサイトで確認)
$sudo wget http://nchc.dl.sourceforge.net/sourceforge/webadmin/webadmin_1.470_all.deb

○Webminをインストール
$sudo dpkg -i webmin_1.470_all.deb
→依存関係のエラーが表示され、インストールが完了しないので、以下で依存関係を解決
$sudo aptitude install -f
→依存関係を解決するためにWebminをremoveするか訊かれるので「n」で回避し、依存するパッケージをinstallするか訊かれたら「y」で続行

○Webminの動作確認
「https://192.168.0.10:10000/」にブラウザでアクセスし、ログインできることを確認

0 コメント:

コメントを投稿