マクドナルドからCentOSへリモートアクセスする設定をした

スポンサーリンク

LPIC Level3 Core(英語試験)へ向けて、CentOS(VMware ESXi上)での実機学習をしている。
マクドナルドなどの外出先でも実機学習をしたいが、
僕のモバイルPCは非力であるため、VMwareをインストールして、その上でCentOSをサクサク稼働できる程の余裕はない。
(CPU: Atom Z550(2.0GHz) メモリ: 1.0GiB  残りのディスク容量: 14GB)

そこで、
外出先からリモートアクセスで、自宅のCentOSを操作することにした。
(ネットへの接続は、マクドナルドならBBモバイルポイントを利用する。)

ブロードバンドルータ(BR)のWAN側グローバルIPアドレス(GIP)は動的に変化する。
変更されるGIPをいちいち把握するのは面倒なので、ダイナミックDNSを利用する。
(まあ、ルータを再起動などしない限り変更されないが…)

また、外部からプライベートアドレス(LIP)で構成されるホームネットワークへアクセスするには、いわゆる「NAT越え問題」がつきまとう。
それに対しては、静的な対処方法であるBRのポートフォワーディング機能を使う。

【ポート番号 : 転送先のLIP】
    22     :    VMware ESXiのLIP
    443   :    VMware ESXiのLIP
    901-904   :  VMware ESXiのLIP
    60022    : CentOS_A(VMware上のゲストOS)のLIP
    60023    : CentOS_B(VMware上のゲストOS)のLIP
    60024    : CentOS_C(VMware上のゲストOS)のLIP

ただ、利用しているBRには「(宛先)ポート番号を変更」して転送する機能は無い。
例えば、CentOS_AにSSH接続をするとして、BRのGIP:60022番でアクセスする。
(60022はCentOS_Aへ、60023はCentOS_Bへ、60024はCentOS_Cへ転送するようにBRで設定している。)
BRでは、ポート番号を60022から22に変更するような設定はできず、60022のままCentOS_Aに転送される。

デフォルトでは、SSHのポートは22番のみ。
CentOS側でSSHが利用するポート番号の追加が必要だ(ポート番号22以外に他のポート番号(60022など)でもSSH接続ができるようにする)。

以下、SSHのポート追加の設定手順

$ su –
パスワード:
# vi /etc/ssh/sshd_config
Port 22     ←先頭の#を削除
Port 60022←この行を追記する
#Protocol 2,1
Protocol 2
#AddressFamily any
#ListenAddress 0.0.0.0
#ListenAddress ::

# /etc/init.d/sshd restart
sshd を停止中:                                             [  OK  ]
sshd を起動中:                                             [  OK  ]

# netstat -an | grep 22
tcp        0      0 127.0.0.1:2208              0.0.0.0:*                   LISTEN
tcp        0      0 127.0.0.1:2207              0.0.0.0:*                   LISTEN
tcp        0      0 :::22                       :::*                        LISTEN
tcp        0      0 :::60022                    :::*                        LISTEN

また、ファイアウォールを利用している場合、それにもポート開放の設定をしなければ…。

# vi /etc/sysconfig/iptables

-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 60022 -j ACCEPT ←この行を追記

# /etc/init.d/iptables restart
ファイアウォールルールを適用中:                            [  OK  ]
チェインポリシーを ACCEPT に設定中filter                   [  OK  ]
iptables モジュールを取り外し中                            [  OK  ]
iptables ファイアウォールルールを適用中:                   [  OK  ]
iptables モジュールを読み込み中ip_conntrack_netbios_ns     [  OK  ]
#

Putty からBRのGIP:60022番で、CentOS_AにSSH接続できることを確認した。(ついでに22番でも確認)
以上

スポンサーリンク

 

SNSシェアボタン

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