だめねこ飼育日誌 By suteneko
リネ2関連で検索して来たかたはこっちのwikiのほうがいいかも // プロフィール


2016-01-06 (Wed)

[サーバ] AWS移行作業中

年末に凛ちゃんイベントがあったので全然作業すすまなかったじぇ…




こほん、えー…




AWS自体は年末時点で契約してあったんですが、なかなか作業が進みませんで…

とりあえず 李衣菜ちゃん1枚は確保したから ちょっと時間ができたところで、移行作業をはじめました。音ゲって1曲分の時間どうしてもかかるから、高速まわしできないんですよね…


ところでAWSが初心者向けというのは、どこから来た情報だったんでしょうか? 今までのクラウドに比較したら初心者向けなのかもしれませんが、いかんせん私は(レンタルサーバではない)クラウドを使うのは初めて。用語なんかはいちおう知ってはいるんですが、実際にさわるのは初めてのものが多いです。

まず「EC2」というのが仮想サーバ/ネットワークという説明、どっかに書いてありましたっけ? サービスが多すぎて事前知識なしに探すのは大変そうです。

まずはヘルプを見ながら、とはいってもGetting Started"じゃなくて普通にEC2ヘルプのほうを見てました。

アカウントを作って(このへんはわかる)、電話によるアカウント認証(Googleでやった)、プラン選択。そして……なんかリンククリックしたら英語ヘルプに飛んだんですけど……(苦笑い) まあ読めるからいいけどさ(あとで日本語ヘルプもあることを知った)

普段使いの管理ページに入る用途のIAM userというのを作成。マスターアカウントは普段は使わないようにするとのこと。普段からroot作業する必要はないって概念ですね。これGetting Startedページには記載なかったから、やってない人多いんじゃないかしら?

いちおう東京リージョンを選んで(←ここ1st step guideに書いてないような)、キーペア作成、これがログインするためのSSHのキーになります。そのままではPuTTYで扱えないのでファイル形式を変換。

クラウド側のネットワーク、デフォルトのまま。

セキュリティグループ(Firewallみたいなもの)。とりあえず自分のIPだけ解放。

そしてやっと、仮想マシン(インスタンス)を作成。

固定IP (Elastec IP Address) を取得して設定。資源の有効利用のために、取得だけして割り振らないと課金が発生するというおもしろい制度になってます。

念のために管理画面のCloud Watchから、課金アラート(EstimatedCharges>0およびEstimatedCharges>=$10)と、サーバダウンのアラート(StatusCheckFailed>0)を作成。


…どこが初心者向けやねん。と一人でボケ突っ込みをやっていた年末なのでした。





そのまま忙しくて (何が忙しかったかは聞くな) としあけまで作業できず。

本日のツッコミ

2016-01-09 (Sat)

[サーバ] AWSつかってみたよ

とりあえずインスタンス作成から。AMI (Amazon Machine Image) のコピー+ログインのための設定、というものを作ることになる。

まずは標準の Amazon Linux を選択、無料利用枠のある t2.micro で設定。セキュリティグループは、自分のIPのみのsshを許す設定にしました。設定がおわるまでの一時的設定です。

sshで接続。ユーザ名はec2-user、認証はキーチェーンのファイルになります。

接続したらまず sudo yum update なお、sudo はパスワード無しでできる設定になっていました。


ちょっと見てみたところ、run-pars の実行が crontab に入ってない。/etc/cron.daily とはのディレクトリはあるのに。このあたりは設定しなきゃセキュリティチェックもくそもなさそう。



まずは何を移行しようかな、と…。セカンダリMXとしてメール設定するのが楽かしら…?

本日のツッコミ

2016-01-11 (Mon)

[サーバ] 課金された(´・ω・`)

以前の日記で書き忘れてたんだけど、AWSの新規登録すると、メール確認がくるんですよ。


英語で


Welcome to Amazon Web Services とか Your AWS Account is Ready - Get Started Now とか書いてあるだけなんで、別に簡単だとは思うんですけど、普通の日本人これだけで拒否感もったりしないかな、と…




ところで

(´・ω・`)


Elastic IP ふったあとに、まだ本稼働してないから次に設定作業できるまで止めておこうって止めただけなんです…。これ1時間で請求くるんですね…



そんなところで、予期せず、アラーム設定がきちんとできているかどうかの確認に。このメールも英語でした

そんな騒ぐような金額じゃないけど、なんか課金されるとちょっと悔しい(´・ω・`)

本日のツッコミ

2016-01-12 (Tue)

[サーバ] メール鯖のslave設定とかDNSとか

AWSはyumが使えるので、sendmailを消して使い慣れたpostfixとdovecot、clamavを入れることにしました。



今までは ipfw (on FreeBSD) を使って、POP3S/IMAPS への接続は日本国内に制限していました。EC2では標準で TCP Wrapper が入っているようなのだけれど、dovecot は対応していないみたい。

ldd /usr/sbin/dovecot | grep libwrap としても出てこないのですね。

いっぽう sshd なんかは対応しているみたい。

まあ、とりあえず後で考えることにして、まずは、メインのメール鯖を変えず、slave (MXが大きいほう) として設定することにします。



ところで、AWS の IP Address が結構 abuse list に入っているそうで。メール鯖を完全移行する前に DNS (Route 53サービス) と、逆引き、サーバ IP の除外申請をしなければなりません。ああメンド…

自分のところを調べてみたら、SPAMHAUSではok。not listed だそうです。一方 TrendMicro では Listed in: DUL(TM) と言われる。ヘルプを見てみると dynamic ranges identified by ISPs ってこと。日本語ヘルプを見ると過去にSPAM送信履歴がありそうな上にプロバイダからの解除要請しか受け付けないっぽい。

さらに検索してみたところ、こんなForumがあって、解除申請もできるっぽい。



結論としては、大丈夫なアドレスが振られるまで IP Address とりなおし、あるいはきちんと申請、の、どちらかでしょうか。DUP ってアドレスブロックごと、下手すりゃ /18 とかで登録されることもあるらしいので、そもそも大丈夫なアドレスがあるのかは疑問です。それに2個目の Elastic IP Address は課金が発生するので、取得して解放して~ を繰り返すのは大変かもしれませんね orz

[サーバ] とりあえず基本的な設定変更

/etc/sysconfig/network をいじり、ホスト名を設定

/etc/sysconfig/clock を編集。ZONE="Asia/Tokyo" にして UTC=false に。

sudo ln -s /usr/share/zoneinfo/Asia/Tokyo /etc/localtime


リブート後、設定変更を確認。

本日のツッコミ

2016-01-13 (Wed)

[サーバ] AWS の DNS を使う

IPアドレスが abuse list に入っている件、別のIPアドレスを割り当ててみたところやはり DUL に入っている。リストに入っていないアドレスもあるとかいう話は聞くのですが、それに出会うまでに何回割り当て→解放をしなきゃならんのか…。大丈夫なアドレスに出会うまで試行するのはあきらめて、素直に解除申請することに…


…と思ったら、どうも Simple Email Servise (SES) というのを使って relay して送信できる、かもしれない。ドメインごと移行するのは面倒そうだけれど (できないかもだけど)。公式のスライドに載ってました。



まあ、今回は自宅のサーバ止めてしまうので、どちらにしろDNSの以降は必要。できれば (気分的に) 逆引きもできたらいいなぁ。ということで Route 53 というサービスを申し込むことになります。とりあえずサービスページへ行ってみると。

日本語化されてませんでした。ま、まぁ、別に難しい英語じゃないし… (どこが初心者向けやねん)

ちなみにヘルプは日本語ありましたよ。

このサービス有料なんですが、個人鯖だと1ドルくらいと非常に安価。個人鯖で100万クエリ=1日あたり3.5万クエリとか発生しない前提です。



というわけで suteneko.jp だけ移動してみます。

Route 53 管理画面の Hosted Zone から、Create Hosted Zone を選んで、ドメイン名に suteneko.jp を入れ、Create。この時点で勝手に NS と SOA が生成されます。この2つ、いじれちゃいそうなんですが、「追加削除しないでください」とヘルプに記載あります。TTLくらいはいじっていいのかもしれませんが、そう書かれた以上はいじるの怖いですよね…。Serial はどうするんだろ?

Create Record Set を押し、ホスト名、IPアドレスを入れて Create。こっれを繰り返します。AだけじゃなくてMXとかも。SPF は SPF と TXT フィールド (両方) に "" で囲んだ形で登録でいるようです。ドメインに対する設定は、ホスト名の欄を空欄にします (@かかない)。

なお、旧鯖に届くメールを新鯖に向けるために * に MX を設定しようとしたら、反映されませんでした。どうも MX のワイルドカードには、レコードの設定があるホスト (MX以外のAとかも含む) には反映されないという例外があるようで。今回は使えませんで、個別に MX を書くことに。


設定できたら、NS に設定されてるホストに対して dig をかけてみて、きちんと反映されているかチェックします。okならばレジストラの設定を変更。NSをAWSに向けます。



うちの使っているレジストラ (21-domainさん) では、ホスト名(自ドメイン内)登録 → そのホストを NS として登録、という手順だったので、いったん AWS が自動設定した DNS を dig → その IP を A で登録 → レジストラに登録、という流れになりました。

あとは反映待ちです。


ホントはこのやり方は不安が残るので、そのうちAWSにドメイン移管することも考えよう…ドメイン維持費は最安ではないんだけどね…

[サーバ] AWS上で backup mailserver

AWSだとなんかいろいろ入ってないものあるんですね。生活に便利なコマンドはサーバには必要ないから、必要なら自分で入れろ、と。

locate (mlocateパッケージ) とか whois (jwhoisパッケージ) とか入れておきました。



メールサーバを稼働させる前に、とりあえずユーザ移動。backup として稼働させるにしても、Unknown User を返すために user list はどこかに必要になるのです。ユーザのリスト書いたテキストでも大丈夫だったんですが、今回はあとあと main と backup を入れ替えるつもりなので、ユーザごと移動することにしました。

人数すくなかったので1個1個 adduser しました。UIDが変わるのは気にしない。

旧ホストと新ホストの両方で vipw してパスワードの部分をコピー。どちらも MD5 を受け付けてくれるっぽいのでそのままコピーしてみました。



ウイルスチェックのために clamav 関連を yum で導入。

設定ファイル /etc/clamd.d/scan.conf /etc/mail/clamav-milter.conf /etc/freshclam,conf を編集する。デフォルトだと Example って書いてあるので、最低でもこれをコメントアウトしなきゃエラーになって起動しません。他のところも確認し、Example をコメントアウト。

1回だけ freshclam を実行。ls -l /var/lib/clamav して、ファイルの日付が今日になっているか確認します。



とりあえず今日はここまで

本日のツッコミ

2016-01-31 (Sun)

[サーバ] AWSにドメインを移管してみた

AWSのドメインの料金表みてみました。

..jp を維持する料金は高くって $90/year もする。(今のところ3000円台なのに!)

..org のほうは $12/year ってことで、今のところと料金かわらん。というわけで、これは移管することにしました。


まずは以前の手順で、DNSレコードを作ります。これは同じですね。AWSじゃないほうのDNSサーバも生きているので、その情報は更新せず古いままです。この時点で AWS が割り当てた DNS サーバ4つをメモしておきます (※重要)


移管手続き。ヘルプを見ながら作業してますが、旧レジストラ側での作業ってほとんど必要ないんですね…。

ドメインのロック解除。ロック解除とともに自分の情報が全世界に公開です。一時的なものとして我慢我慢。

認証コード取得。web I/F から申し込んだら、英数記号を含む文字列が、whois情報のメールアドレス (全部同じにしているのでどのメールだか不明。Admin かなぁ?) の人にメールで送られてきました。

AWS コンソールの Route 53 に行き、左のメニューから Registered Domains を選択。Dashboard に Register domain という textbox がありますが、どうもここは違いそうです。

Transfer domain から手続き。ドメイン名を入れて Add to Cart して、Continue

さっき取得した認証コードを入力。

DNSサーバに関して選択肢が表示されました。今のDNSを使うか、新しいものを使うか。Specify new name servers to replace the current registrar's name servers を選んで、AWSで割り当てられたDNSサーバを入れます。

Contact Detail を入力。これは移管されないのかしら…。正しい情報を入れた上で Hide contact information if the TLD registry, and the registrar, allow it を選びます。

しばらくしたらAWSから確認のメールが来るので、それに書いてあるリンクを開いて手続き。現在のレジストラからもメールが来たけど、ドメイン移管止めたいならリンククリックしろって書いてあったので放置。

以上すべて英語です。Transfer の手続きをした日付も日本時間ではないので1日ずれてました。クリックしちゃいけないリンクなんかもあるからちゃんと読まないとダメですよ!


Transferring the registration for your domain to Route 53 might take up to 11 days to complete. だってさ。メールにすぐ答えたらちょっと短縮するって (usually a maximum of 5 to 8 days)  そんなにかかるのか。移管中は登録情報の Protection 効かなくて、全部公開されてるのに…(´・ω・`)



(2/6追記) transfer が行われるタイミングで、登録情報の email address が正しいかどうかの confirmation mail が (英語で) 来ました。ちゃんと validate してやらないと、ドメインが一時停止されるそうで。

本日のツッコミ