IDCF ポートフォワード・ファイアウォールの設定を行う 【KUSANAGI 移行日誌03】

  • このエントリーをはてなブックマークに追加

【KUSANAGI 移行日誌シリーズ】の一覧はこちら

前述の記事で、仮想マシンを作成するところまで行いました。
次は仮想マシンにアクセスできるようにIPアドレスの設定を行いましょう。

まずはいつもの作業手順から。

  1. IPアドレス名を決める
  2. ファイアウォールを設定する
    1. SSHポート
    2. HTTPポート
    3. HTTPSポート
  3. ポートフォワードを設定する
    1. SSHポート
    2. HTTPポート
    3. HTTPSポート

ここまできてやっとSSH でアクセスできるようになります。


まずは「管理画面 > コンピューティング > IPアドレス」を表示して、IPアドレス一覧を表示します。

1. IPアドレス名を決める

初めてアクセスした場合、一覧には (no name) という名前のIPアドレスが登録されているはずです。
まずはこちらに名前を付けて管理しやすいようにしましょう。
IPアドレスの名称をクリックしてください。

IPアドレスの基本情報が表示されました。
こちらの IPアドレス名(tag) 欄に no name とありますので、こちらをクリックして編集してください。

この入力欄に分かりやすい名前を付けて 適用 します。
これでIPアドレス名の変更は完了です。

2. ファイアウォールを設定する

まあ、まず ファイアウォール ってよく聞くけど具体的になによ?
ってとこなのですが、まあこれは wiki 見てください。
個人的に思っているのは 何番のドアを誰向けに開放しますよ 指定以外は全てブロックしますよって設定ですわ、多分。

では「ファイアウォール」タブを開きます。

ここでは下記の入力欄があります。

項目 内容
コメント どのサーバー・どのポートにアクセスできるか
分かりやすい名称を自分で決める
ソースCIDR 接続を許可するIPを決める
タイプ プロトコルの種類
ポートレンジ 許可するポート番号もしくはレンジ(範囲)

ここで ソースCIDR って何よ?ってなると思います。
簡単に言うと、

  • Any(0.0.0.0/0) : 誰でもアクセスできるよ!
  • My IP : 今この画面をアクセスしているIPのみ許可するよ!
  • Custom IP : 別途IPを指定してね!

って感じです。

詳しくは IDCF ヘルプ

基本的には誰からもアクセスを受け付けたい HTTP/HTTPS は開放。
SSHは本来なら固定IPでのアクセスだけを許可したいですが、今回は固定IPを使用せずどこからでもポートがわかればアクセスできるようにSSHも開放します。

先述のようにHTTP/HTTPSでの接続許可と、SSHでの接続を許可したいので下記のように設定追加します。
※タイプを選択すると自動でポートレンジに番号が挿入されます。(あら!便利!)

コメント ソースCIDR タイプ ポートレンジ
SSH 0.0.0.0/0 (Any) TCP 9922
HTTP 0.0.0.0/0 (Any) TCP 80
HTTPS 0.0.0.0/0 (Any) TCP 443

SSHですが、通常のSSHのポート番号は 22 が一般的です。
ただ、一般的なだけあって攻撃されることもありえます。
なので今回はSSHのポート番号は 9922 としておきます。
(著者は最近大規模公開のタイミングでアタック食らっているので慎重です…)

上記3つを登録できたら次の作業へ。

3. ポートフォワードを設定する

はい、また聞きなれない言葉 ポートフォワード ってなによ!
ってなりますよね。私はクラウド初心者なので他のクラウドで例えることはできません。
個人的な解釈では、 XX番で接続してきたアクセスをYY番のポートに転送するよ! ってことだと思ってます。

「ポートフォワード」タブを開きます。

ここでは下記の入力欄があります。

項目 内容
コメント ルールが分かる任意の名前を入力
パブリックポート アクセスを受け付けるポート
プライベートポート 仮想マシンに接続するポート
仮想マシン どのマシンに転送するか

まあ、初めての方からすると何が何やらな項目です。
詳しくは IDCF ヘルプ

具体的に説明すると、

IPアドレスの パブリックポート のポート番号にアクセスがあったら、仮想マシンプライベートポート のポート番号に接続するよ!

ってことです。

ですので、
先程ファイアウォールで開放したポート番号にこれをあてていきます。

今回は下記のように設定追加します。

コメント パブリックポート プライベートポート 仮想マシン
SSH TCP:9922 22 仮想マシン名
HTTP TCP:80 80 仮想マシン名
HTTPS TCP:443 443 仮想マシン名

しっかり設定に間違いがないか確認しましょう。

※いろんな参考サイト見ましたが、この パブリックポートプライベートポート の入力箇所が変更されており、とても間違えやすいです!要注意!!


以上でIPアドレスの設定は完了です!
実際にSSHでアクセスできるか確認しましょう!


4. ターミナルからサーバーに接続する

IPアドレスの設定が完了したら一度実際に接続できるか確認しましょう。
接続を確認する場合はターミナルを使用します。(Winの場合はコマンドプロンプト)
大丈夫!怖くない!やれるから!!

ターミナルを開いたら以下のコマンドを指定して、SSHでサーバーに接続します。

 ssh -l root -p 9922 -i ~/.ssh/SSHKEY xxx.xxx.xxx.xxx

各内容

ssh : SSHで接続 コマンド
-l : ログイン指定宣言
root : ユーザー名: root でアクセス
-p : ポート指定宣言
9922 : ファイアウォールで指定したSSHのポート番号
-i : SSH KEYファイルパス指定宣言
~/.ssh/SSHKEY : SSH KEYのファイルパス (SSHKEY は保存したファイル名に変更してください)
xxx.xxx.xxx.xxx : IPアドレスを指定

上記を指定して接続が正常に完了すると下記のように出力されます。


     __ ____  _______ ___    _   _____   __________
    / //_/ / / / ___//   |  / | / /   | / ____/  _/
   / ,< / / / /\__ \/ /| | /  |/ / /| |/ / __ / /
  / /| / /_/ /___/ / ___ |/ /|  / ___ / /_/ // /
 /_/ |_\____//____/_/  |_/_/ |_/_/  |_\____/___/

    Version 7.7, Powered by Prime Strategy.

[root@kusanagi71 ~]# 

KUSANAGI とアスキーアートが出てきましたね!!!
これで、KUSANAGIがインストールされたサーバーに接続できました!

(ちょっと崩れてますね。。。。)

もしも以下のようなエラーが出てきたら、、、、

 The authenticity of host '[xxx.xxx.xx.xxx]:9922 ([xxx.xxx.xx.xxx]:9922)' can't be established.
 ECDSA key fingerprint is SHA256:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.
 Are you sure you want to continue connecting (yes/no)? 

Are you sure you want to continue connecting ?
ホントに接続を続けますか?と聞かれているので、 yes と 入力して Enterしましょう。
これでログインできます。

これは、SSH Keyの権限がちゃんと 600 じゃないよ!って注意されています。
このエラーはSSH Keyの権限を適切に 600 に変更すれば解消されますので必ず変更しましょう。


無事にIPアドレスの設定が完了していることが確認できました。
最後に、ターミナルで、

exit

と入力して、サーバーからログアウトしておきましょう。


これでやっとSSHからアクセスしてKUSANAGIの設定が行なえますね。

しかし、KUSANAGIの設定ではドメインなどの指定も必要になりますので先にドメインのDNSレコードを変更します。
それはまた次の記事に。

ああ、長かったw

  • このエントリーをはてなブックマークに追加

SNSでもご購読できます。