VPS を引っ越した
引っ越し先は DigitalOcean。最近よく DigitalOcean の良い評判を耳にしていて、希望の価格帯である $5 前後のプランもあったので移ることに決めた。
最小課金単位が 1 時間で、簡単にインスタンスを作成・破棄できるので、金額を気にせず気軽に遊べて便利。
今までの VPS は 日本ラッド の Osukini サーバー の LT プランを使っていた。
現行のサーバーには特に不満があるわけではないけど、強いて言えば回線が実測 1 MB/s くらいしか出てないこと、サーバーのサブネットが BBQ 規制リストに載ってしまっていてプロキシ扱いされることがあるのは気になっていた。
新しいサーバー名は、現在のサーバーの名前の macaron を 連想検索エンジン reflexa に入れて出てきたエクレアからとって、eclair.wktk.jp にした。
OS は Arch Linux にした。今まで通り Ubuntu でも良かったんだけど、Arch Linux を使ったことがないので試してみることにした。
セットアップでやったことを自分用にメモしておく。
# パッケージのアップデート pacman -Syu --ignore filesystem pacman -Su # とりあえず入れるパッケージ pacman -S git wget nginx whois dnsutils vim ntp ufw unbound zsh # ログイン用ユーザー useradd -m -g users -G wheel wktk visudo # %wheel の有効化 # /root/.ssh/authorized_keys をログイン用ユーザーに移動、所有者をユーザーにする # root ログインの無効化 ## これやって Web コンソールが使えなくならないか試してない usermod -L root # sshd の設定 ## Port, PermitRootLogin, PasswordAuthentication を編集 vim /etc/ssh/sshd_config systemctl reload sshd # DNS サーバーの設定 ## デフォルトで入ってた 4.2.2.1 はときどき調子が悪く、DigitalOcean 側で NS サーバーが用意されているわけでもなく、Google Public DNS を使うのも嫌だったため、ローカルにキャッシュサーバーを置くことにした。 wget ftp://FTP.INTERNIC.NET/domain/named.cache -O /etc/unbound/root.hints vim /etc/unbound/unbound.conf ## root-hint: "/etc/unbound/root.hints" を追加 systemctl enable unbound systemctl start unbound vim /etc/network.d/ethernet-static ## DNS を 127.0.0.1 に変更する ## 最初は /etc/resolv.conf.head に設定してたけど、再起動すると無視されるようになったのでこっちを書き換えた。 # タイムゾーンを Asia/Tokyo に timedatectl set-timezone Asia/Tokyo # locale の設定 vim /etc/locale.gen locale-gen locale > /etc/locale.conf vim /etc/locale.conf ## LC_COLLATE=en_US.utf8 # 時刻を聞きにいく NTP サーバーの設定 vim /etc/ntp.conf systemctl enable ntpd systemctl start ntpd # デフォルトの umask を変える vim /etc/profile # ufw の設定 ## SSH が締め出されないように気をつける ## ufw で充分なので iptables から移行した ufw limit (SSH のポート)/tcp ufw default deny ufw allow 25/tcp ufw allow 80/tcp ufw allow 443/tcp ufw allow 3000/tcp ## ... 他のポートも適宜 ufw enable systemctl enable ufw systemctl start ufw # nginx の設定 ## /etc/nginx 以下を適宜編集する systemctl enable nginx systemctl start nginx # スワップファイル ## "How to Add a Swap File on an Arch Linux Cloud Server | DigitalOcean" ## https://www.digitalocean.com/community/articles/how-to-add-a-swap-file-on-an-arch-linux-cloud-server fallocate -l 1024M /swapfile chmod 600 /swapfile mkswap /swapfile swapon /swapfile echo "/swapfile none swap defaults 0 0" >> /etc/fstab # Postfix ## /etc/postfix 以下を適宜編集 systemctl enable postfix systemctl start postfix # crond systemctl enable cronie systemctl start cronie # あとは rbenv 周りとか