SSHでサーバにアクセスし、アップデートやfirewallなどの初期設定をする
コンソールを使用してVPSサーバーにSSH接続し、初期の設定をしていきます。
ConoHaのVPSには、ブラウザ上からアクセスできるコンソールソフトがついているのですが、どうにも動きがもさっと重くて、良くないので、今回は、MACのターミナルを使用します。windowsなどからアクセスする場合も、コンソール画面を開いてしまえば後は同じ操作です。
VPSを作成した時に保存したSSHキーを、「書類」ー「server_key」の中に保存しておきます。※例としてこのようにしましたが、保存場所は任意の場所で大丈夫です。
それでは、ターミナルを起動し、下記を入力します。
/以降は、SSHキーまでのパスです。
※パスがわからない場合は、保存したキーファイルを選択し、Ctlキークリックで、「情報を見る」でファイルの情報ウインドウを開き、「一般情報」-「場所」の内容をドラッグしてコピーすることができます。
sudo ssh -i /Users/username/Documents/server_key/key_example.pem root@000.000.000.000
入力したら、Enterキーを押します。
The authenticity of host '000.000.000.000 (000.000.000.000)' can't be established. ECDSA key fingerprint is SHA256:555z0Ddrw73dbKz0Ddrw7P55555z0Ddrw7P3dbKz055555. Are you sure you want to continue connecting (yes/no)? yes
初回アクセス時には、このサーバーを信頼するサーバーリストに加えていいか、という確認メッセージが常時されますので、「yes」と打ち込みEnterキーを押します。VPSサーバーに接続できました。
root@ host-000-000-0000-000:~#
(rootユーザーでアクセスしています)
通常の SSHアクセスでは、素のままでのrootでのログインはセキュリティ上危険ということで、root権限を持った一般ユーザーを作成して、公開認証キーを発行して〜rootでのアクセスを禁止して、といった手順を踏むのですが、CONOHAの場合、VPSサーバーを作成した時点で、公開キーを発行することができ、そのキーを持たなければ、外部からのアクセスはできません。今回、そのキーの発行はすでにVPSサーバーの作成時点で済んでいますので、そのまま作成したSSHキーを使用したrootアクセスで進めています。
もしこの時にアクセスできない場合は、SSHキーのパーミションがゆるすぎる場合が考えられます。パスもあっているのにアクセスできない場合は、ぱーみしょんを600など厳しく変更して再チャレンジしてみてください。
sudo apt-get update
+Enterキー
sudo apt-get upgrade
+Enterキー
(パッケージのリストをサーバーから入手し、初期のサーバーモジュール等を最新のものにアップデートしています)
.......... After this operation, 13.9 MB of additional disk space will be used. Do you want to continue? [Y/n] y
無事アップグレードできました。
次にufw(firewall)を設定します。
ufwは、ubuntu16.04には最初から入っています。もし、なかった場合は、apt-get install ufw でインストール可能です。
sudo ufw enable sudo ufw default DENY sudo ufw allow 22
firewall(ufw)を有効にし、初期設定として全てのアクセスをデフォルトで拒否とした後、22番ポートを開けました。
続けて、上記の22番ポートのopenと同様に、
- 21 (FTP)
- 22 (SSH)
- 25 (SMTP)
- 80 (HTTP)
- 143 (IMAP)
- 443 (HTTPS)
- 465 (SMTPS)
- 587 (submission)
- 993 (IMAPS)
- 8000 (Ajenti)
の各ポートを開きます。(後に不要なポートもありますが、一応一通り開きました。)
参考:割り当てポート一覧
sudo ufw reload
(設定した内容を読み込み反映します)
sudo ufw status
(設定内容をリストで確認します)
ここまでで、firewallの設定ができました。
ufwは、
ufw allow ssh/tcp (tcpでsshを許可)
ufw deny ssh/tcp (tcpでsshを拒否)
と言うように、サービスごとに許可や拒否の設定することもできます。新しいサービスを追加した時などに見直して、追加の必要が出ることがありますので、ポートの状況は適宜確認してみてください。
次は、サーバーコントロールパネルのAjenti/Ajenti-Vをインストールします。
<やること一覧>
- CONOHAのVPSを借りてubuntu 16.04 OSを選択インストールする
- CONOHAのVPSでメインドメイン、サブドメイン、メールサーバー、ネームサーバーにDNSを仕向ける
- SSHでサーバにアクセスし、アップデートやfirewallなどの初期設定をする
- サーバーコントロールパネルのAjentiをインストールする
- WEBサーバー(NGINX)、メールサーバー(Courier-IMAP/EXIM4)、FTPサーバー(Pure FTPD)、DBサーバー(MySQL)をインストールする-その1
- WEBサーバー(NGINX)、メールサーバー(Courier-IMAP/EXIM4)、FTPサーバー(Pure FTPD)、DBサーバー(MySQL)をインストールする-その2
- WEBサーバー(NGINX)、メールサーバー(Courier-IMAP/EXIM4)、FTPサーバー(Pure FTPD)、DBサーバー(MySQL)をインストールする-その3
- WEBサーバー(NGINX)、メールサーバー(Courier-IMAP/EXIM4)、FTPサーバー(Pure FTPD)、DBサーバー(MySQL)をインストールする-その4
- AjentiにプラグインパッケージAjenti-Vを追加する
- NGINXにAjentiでバーチャルドメインを設定する
- ubuntu16.04にNGINXで作成したバーチャルホストに、Let’s Encryptで無料SSLを発行する
- バーチャルサイトとAjentiコントロールパネルをLet’s EncryptのSSL証明書に対応させ、ドメイン名でアクセスする
- Webmail(Rainloop)をインストールしてメールの送受信をテストする
- ubuntu16.04にNGINXで作成したバーチャルホストに、PhpMyAdminをインストールする
- ubuntu16.04にNGINXで作成したバーチャルホストに、Wordpressをインストールする