VPSを契約
SaaSesにあるVPSのバリエーションの中からLTを6ヶ月分契約しました。6ヶ月で驚きの2700円。
用途は決めずに契約してしまいましたがプロキシサーバかデータを暗号化してバックアップするとかそんな使い方になるんじゃないかなと思います。
OSは契約時にいくつかの中から選択できます。今回選んだのはローカルサーバでも活躍中のDebian GNU/Linux 6.0 squeeze、メモリが512MBなので32bitにしました。
契約をして準備が整うと設定報告書なるPDFがダウンロードできるようになり、その中に各種設定や接続方法が書かれています。
以下自分のための設定の記録
今回はWindows7でProderosaを使ってログインしました。
まずはログインしたらシェルがshだったのでbashに変更します。
# chsh -s /bin/bash
sudoできるようにするためにvisudoをしてユーザを追加します。
# su # visudo k_zoar ALL=(ALL) ALL
パスワードを自動生成のものから任意のものへ変更します。
# passwd
ようやくSSHを鍵認証にする。
まずはローカルのPoderosaにあるツールで鍵ペアを作成おきました。公開鍵はOpenSSH方式にて作成。
# mkdir ./.ssh # cd ./.ssh # touch authorized_keys # nano -w authorized_keys
作成した公開鍵をxyzzyで開いて内容をコピー、Poderosa内のnanoに貼り付けました。scpで飛ばしてもいいんですよね。
念のため公開鍵のパーミッションを変更
# chmod 600 ./authorized_keys
よく設定をミスって接続できなくなるのでデフォルトの設定を残しておいた上で編集をします。
# sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.old # nano -w /etc/ssh/sshd_config
rootのログインは最初から禁止されているようだけど一応確認しておきました、パスワード認証を禁止してPAMも使用しない設定へ変更。
PermitRootLogin no PasswordAuthentication no UsePAM no
おもむろにsshdを再起動させる(からミスって接続できなくなる。ちゃんと設定ファイルを見直せばいいのにw)
# sudo /etc/init.d/ssh restart
現在のssh接続を保持しまたまPoderosaから新しい接続でパスワード認証がコケることと鍵認証が通ることを確認します。
ローカルサーバではやってないけどパスワードを無効化できるらしいという事を聞いたのでrootのパスワードを無効化してみる。
# passwd -l root
suしてパスワードを打ち込んでもrootになれないことを確認します。
rootになりたいときはsudo suとかすればなれるはずです。この状態でsudoのログを取ればそれなりに安心できるのかな(つまり現在sudoのログ取りは未設定)。
パスワードの無効化を解除して再度有効にするには
# passwd -fu root
とかするらしいです。オプションの表示を確認しただけで試してませんけど。
さらにアクセスできるホストを制限するといいよとのことなのでhosts.allowとhosts.denyでアクセス制限をかけます。
許可する日本のホストのリスト(ipaddr_jp)を作成して、リストに記載のものと自分のプロバイダのみがSSHに接続できるようにする(らしい<例によって教えてもらった)
# mkdir -p /etc/scripts # cd /tmp # wget -q http://nami.jp/ipv4bycc/cidr.txt.gz # gunzip cidr.txt.gz # grep ^JP cidr.txt | awk '{ print $2 }' > /etc/scripts/ipaddr_jp
作成したら/etc/hosts.allowを編集します。
# nano -w /etc/hosts.allow sshd: %プロバイダのホストの適当な部分% sshd: /etc/scripts/ipaddr_jp
さらに/etc/hosts.denyを編集
# nano -w /etc/hosts.deny ALL:ALL
SSHのポートも変更したいところだったけど時間的にミスると(特にiptablesの設定が)修正できない時間帯だったので今回は見送りました。
続いて使いこなせていないscreenのインストールと設定ファイルの作成をします。設定はえっちゃんに教えてもらったものをそのまま(だったはず)。
# apt-get install screen # touch ./.screenrc # nano -w ./.screenrc defencoding utf-8 encoding utf-8 utf-8 escape ^z^z autodetach on caption always "%{= wg} %-w%{=bu dr}%n %t%{-}%+w %= %{=b wb}%y/%m/%d %{=b wm}%c" startup_message off vbell off
適当に付いてるホストネームを適当に変更します。
# hostname zoarvps # /etc/init.d/hostname.sh # hostname
これで何かの下地ができたようです。