自作サーバーにubuntu
新たにWEBサーバーを立てることにした。
今回はubuntuに挑戦。
ハードウェアは過去にヤフオクで数年前にサーバーを立てようと意気込んで買ったパーツの使えそうなのをかき集めて作った。
eden V1000 メモリ 256MB ハードディスク20GB 電源はACアダプタ
MITSUMIのCDドライブがマスターに固定されてたりACアダプタをつけるのにドリルで穴を開けたりどうにかこうにか組みあがってインストール
CDを焼いて
CDから起動しすると、Enterをクリックすると
ubuntuのロゴが現れ「Install Ubuntu Server」を選びEnterを押す。
言語選択画面が現れ「Japanese 日本語」を選ぶ
次に英語でよく分からんがキーボードのことを聞かれ「いいえ」を選ぶとリストが出てくるので「Japan」を選択すると「Japan」「Japan – Kana」「Japan – OADG 109A」の3択になるので「Japan」を選択、さらに何か分からんのを聞かれるがデフォルトの「Alt + Shift」を選択
次はホスト名を聞かれるとりあえず適当に決めておく
途中止まってる?と思うぐらい無反応な状態でマタされたるするが
次はパーティション「ディスク全体を使いLVMをセットアップする」を選択
、ディスクを選択する確認画面がでるのではいを選択容量を聞かれるが全部使うのでそのままEnter、しばらくすると再度確認画面が出るのではいを選択
新しいユーザーの本名の入力はサーバー用なので適当に入力
次にログイン名とパスワードの設定。
その次に暗号化の設定だけど持ち運ぶことは無いのでいいえを選択
httpプロキシ設定は会社とかでプロキシ設定をしないとホームページが見れない場合だけなのでスルー
アップデートの設定は「セキュリティアップデートを自動的にインストールする」を選択
ソフトウェアの選択では「DNSサーバー」「LAMPサーバー」「Mailサーバー」のみにした
その後mysqlのパスワードを設定して
メールサーバーの設定で「インターネットサイト」を選択、メールアドレスはまだ決めてないのでスルー
インストールには1時間ぐらいかかったが殆どデフォルトの設定でよかった。
まずはIPアドレスを固定
sudo vi /etc/network/interfaces auto eth0 iface eth0 inet dhcp auto eth0 iface eth0 inet static address 192.168.0.4 netmask 255.255.255.0 network 192.168.0.0 broadcast 192.168.0.255 gateway 192.168.0.1 sudo /etc/init.d/networking restart
後で気づいたんだけどSSHをインストールし忘れたのでインストール
sudo aptitude install openssh-server
もう、モニタやCDロムやキーボードは使わないので外す。
sudo aptitude install proftpd
スタンドアロンを選択
webminをインストール
そのままではインストール出来ないので
sudo vi /etc/apt/sources.list deb http://download.webmin.com/download/repository sarge contrib
sudo aptitude update sudo aptitude install webmin
vineに付いてくるのよりバージョンが新しくかっこよくなっている。
とりあえず英語がわかりにくいので「Webmin」の「Change Language…」から「Japanese (JA_JP UTF-8)」を選び日本語に変更
◆DNSサーバーの設定
sudo vi /etc/bind/named.conf.options
でforwardersの部分をプロバイダ指定のプライマリDNS、セカンダリDNSの指定を書き加えて
forwarders { ***.***.***.***;プロバイダ指定のプライマリDNS ***.***.***.***;プロバイダ指定のセカンダリDNS };
webminの「サーバ」「BIND DNS サーバ」から「設定ファイルの編集」で
zone "test.com" { type master; file "/etc/bind/test.com"; }; zone "0.168.192.in-addr.arpa" { type master; file "/etc/bind/db.192.168.0"; };
を追加する。
「既存の DNS ゾーン」に「test.com」と「192.168.0」が発生してるので
まず「test.com」の「レコード ファイルの編集」で編集
(sudo vi /etc/bind/test.comでもいい)
$TTL 86400;1D @ IN SOA ubuntu.test.com. root.ubuntu.test.com. ( 2009050601 ; Serial 10800 ; Refresh 3H 3600 ; Retry 1H 604800 ; Expire 1W 86400 ) ; Minimum 1D IN NS ubuntu.test.com. IN MX 10 ubuntu.test.com. ubuntu IN A 192.168.0.4 test.com IN A 192.168.0.4 dns IN CNAME ubuntu www IN CNAME ubuntu myrelease IN CNAME ubuntu smtp IN CNAME ubuntu pop IN CNAME ubuntu ftp IN CNAME ubuntu
sudo vi /etc/bind/db.192.168.0 $TTL 86400;1D @ IN SOA ubuntu.test.com. root.ubuntu.test.com. ( 2009050601 ; Serial 10800 ; Refresh 3H 3600 ; Retry 1H 604800 ; Expire 1W 86400 ) ; Minimum 1D ; IN NS ubuntu.test.com. IN PTR ubuntu.test.com. IN A 255.255.255.0
「Apply Configuration」をクリックし、クライアントの優先DNSサーバーを192.168.0.4に変更して確認
とりあえずクライアントで確認できた。
◆外DNSの設定
外のDNSはvalue domainでドメインを取ってダイナミックDNS設定。
ネームサーバー変更で「VALUE-DOMAIN独自のネームサーバー」にして
ns @ NS1.VALUE-DOMAIN.COM. ns @ NS2.VALUE-DOMAIN.COM. a @ 0.0.0.0 mx mx.test.com. 10 cname * test.com.
http://dyn.value-domain.com/cgi-bin/dyn.fcg?d=test.com&p=eroero69&h=@
しばらく待って
dig @NS1.VALUE-DOMAIN.COM test.com
でチェック
◆アパッチの設定
デフォルトのドキュメントルートが「/var/www」と遠かったので
「/home/uda2/」に「public_html」というフォルダを作り
webminの「サーバ」「Apache Webサーバ」の仮想サーバをクリックしてドキュメントルートを「/home/uda2/public_html」に変更する。
その後「変更を適用」をクリックし、適当なファイルをアップして確認。
問題なさそうだ。
◆ftpの設定
ftpは辿るのが面倒なのでコメントアウトされてるDefaultRootを生かす
DefaultRoot ~
.htaccess等をいじる可能性があるので下記に変更
ListOptions “-a”
◆ユーザーの追加
mkdir public_html
「仮想ホストの作成」でドキュメントルートを
サーバー名を
◆ソフトの追加と削除
rpm -qa|grep php
の代わりに
全てはdpkg -l
なぜかGDが入ってなかったので追加
sudo aptitude install php5-gd sudo aptitude install php5-mcrypt sudo aptitude install php-pear sudo aptitude install phpmyadmin sudo pear install -a Mail
メールサーバーはアンインストール
sudo aptitude remove postfix
◆phpの設定
sudo cp -p /etc/php5/apache2/php.ini /etc/php5/apache2/php.ini.bak.YYYYMMDD sudo vi /etc/php5/apache2/php.ini memory_limit = 32M ;default_charset = EUC-JP sendmail_path = /usr/sbin/sendmail -t -i mbstring.language = Japanese mbstring.internal_encoding = UTF-8 mbstring.http_input = pass mbstring.http_output = pass mbstring.encoding_translation = Off mbstring.substitute_character = none mbstring.detect_order = SJIS,EUC-JP,JIS,UTF-8,ASCII
◆mysqlの設定
なぜかEUC(latin1)になってるのでUTF-8に変換する。
vi /etc/mysql/my.cnf [client] default-character-set = utf8 [mysqld] default-character-set = utf8 skip-character-set-client-handshake [mysqldump] default-character-set = utf8 [mysql] default-character-set = utf8
書き終えたら
# mysql -u root -p
> status;
で確認まだまだ残ってるので
> show character set;
とか
> alter database myrelease character set utf8
とかしても変化なしSQLサーバーを再起動してみたらUTF-8になった。
◆Rewriteモジュールの有効化
sudo ln -s /etc/apache2/mods-available/rewrite.load
だと「rewrite.load」が作成されず
sudo a2enmod rewrite
で成功
sudo vi /etc/apache2/mods-enabled/rewrite.load
Tags: ubuntu