概要
YAMAHA RTX1210ルーターを使ってみて色々試行錯誤したことをまとめていきたいと思います。まずは、同一LAN内からルーターへssh接続しコマンドラインでの設定を可能にするまで。デフォルトでは、rtx1210でsshは使うことはできず、telnetでの接続のみになっています。telnetとsshとの違いは、通信内容が暗号化されているかどうかにあり、暗号化されているsshの方がよりセキュアであると言えます。そのあとは、ポートフォワーディングの設定をして外部のグローバルIPからルーターへsshをするところまでまとめます。次に、同じくポートフォワーディングの設定をして外部のグローバルIPからwebGUIにアクセスするところまでまとめます。最後に、ルーターの下にwebサーバーを設置し、webサーバーに対しても外部からsshできるようにポートフォワーディングの設定をします。
ポートフォワーディングに関しては、下図参照。
慣れてしまえば簡単ですが、一回きちんと設定できるまでは結構大変でした。
動作環境
RTX1210 ファームウェアリビジョン Rev.14.01.35
macOS Mojave 10.14.6
※ まずは、プロバイダとの接続を完了させて、管理
→保守
→ファームウェアの更新
より最新のファームウェアにアップデートしてください。
前提
LAN1でRTX1210とPCを有線接続し、ブラウザで192.168.100.1
にアクセスします。
表示されたweb GUIでユーザーの登録及び管理者パスワードの登録を行います。
ユーザーの設定を行うときには、sshでの接続を許可するようにしてください。
ここで設定したユーザー名とそのパスワードは、terminalで操作するときに必要になります。
また、ssh用の鍵を生成するときには、管理者パスワードが必要なので合わせて覚えておきます。
telnetで接続する
LAN2で、PPPoE接続またはDHCP接続などでインターネットと接続します(詳しい手順は割愛)。
terminalを開き、ルーターのIPアドレスに対してtelnetで接続します。
telnet 192.168.100.1
先ほど設定したユーザー名とパスワードでログインします。
その後、管理者権限にグレードアップして、sshの設定を行います。
administrator
sshd host key generate
sshd service on
一般ユーザーだと↑この操作ができないので、管理者パスワードでadminになることが必要です。
管理者になれない場合
ssh接続の確認
同一LAN内からssh接続を行います。
ssh {username}@192.168.100.1
無事ssh接続までできました。
外部からルーターにsshをする
natの設定
web GUIでの設定
詳細設定
→NAT
→NATディスクリプター番号の一覧
→設定
ルーターにアクセスするときにRTX1210の仕様上直接22番ポートにアクセスすることはできません。したがって、他のport(ここでは33333を想定)を経由する形で、ルーターの22番ポートにsshアクセスします。
configファイルの設定
nat descriptor masquerade static 200 1 192.168.100.1 tcp 33333=22
さらに、ここでconfigファイルのnatの部分が有効になっているか必ず確認しましょう。
ip lan2 nat descriptor 200
ipフィルタの設定
web GUIでの設定
詳細設定
→セキュリティ
→IPフィルター
→LAN2 設定
configファイルの設定
すべてのIPアドレスからのアクセスを許容する設定です。もし、アクセスできるIPを固定したい場合は、最初のアスタリスクの部分にIPを入れます。
ip filter 101100 pass-log * 192.168.100.1 tcp * 22
ipフィルターの設定が反映されているのかも確認しましょう。この時の...
の順番が、優先順位と一致します。
ip lan2 secure filter in ... 101100
ここまで設定できたら外部IPアドレスからsshしてみます。
ssh {username}@{ルーターのグローバルIP} -p 33333
ポート33333を経由して、ssh接続が可能になっていると思います。
外部からweb GUIにアクセスする
RTX1210の仕様上直接80番ポートにアクセスすることはできません。したがって、他のport(ここでは44444を想定)を経由する形で、ルーターの80番ポート(rtx1210ではwwwと表現される)にアクセスします。基本的には、上記の手順と同じですので、configファイルの設定のみ載せておきます。
# natの設定
nat descriptor masquerade static 200 2 192.168.100.1 tcp 44444=www
# ipフィルターの設定
ip filter 101102 pass-log * 192.168.100.1 tcp * www
httpアクセスするための設定
全てのIPアドレスからのhttpアクセスを許容します。
httpd host any
ブラウザから、ルーターのグローバルIP:44444
にアクセスすると、web GUIにログインできると思います。
外部からLAN内のwebサーバーにsshする
webサーバーのローカルIPを固定する
まずは、ローカルIP192.168.100.2
にwebサーバー固定します。
固定する際には、webサーバーのmac address
を調べて次のように直接configファイルに書き込みます。
dhcp scope bind 2 192.168.100.2 ethernet 4c:52:62:43:56:97
なお、macアドレス以外がクライエントIDになっている場合もありますので、そのときは、ルーターにsshをしてshow dhcp status
などで確認することが必要です。
参考:https://www.yokoweb.net/2017/07/02/rtx1210-dhcp-server-mac/
webサーバーへのssh接続のためのポートフォワーディング
あるport(ここでは55555を想定)を経由する形で、webサーバーの22番ポートにアクセスします。これも同様に、natとipフィルターを設定すれば大丈夫ですので、configの設定のみ載せておきます。
# natの設定
nat descriptor masquerade static 200 3 192.168.100.2 tcp 55555=22
# ipフィルターの設定
ip filter 101101 pass * 192.168.100.2 tcp * 55555
ここまで設定できたら外部IPアドレスからwebサーバーにsshしてみます。
ssh {username}@{ルーターのグローバルIP} -p 55555
ポート55555を経由して、ssh接続が可能になっていると思います。
トラブルシューティング
terminalで文字化けしてしまう
> console character ?
͌`F console character R[h
R[h = 'en.ascii', 'ja.sjis', 'ja.euc' or 'ja.utf8'
@ @F o͕R[hI܂
ftHglF ja.sjis
> console character ja.utf8
> console character ?
入力形式: console character 文字コード
文字コード = 'en.ascii', 'ja.sjis', 'ja.euc' or 'ja.utf8'
説明: 出力文字コードを選択します
デフォルト値: ja.sjis
> console character
管理者になれない
上記のように文字化けした状態だと、passwordの入力がうまくいってない場合があります。
まずは、文字化けを直して再挑戦してみてください。
configファイルをimportしたらログインできなくなった
間違ったconfigファイルをimportして再起動したら、ログインできなくなるので注意が必要です。例えば、show config
コマンドで表示された中身では、パスワードは*
で表示されますが、web GUIからexportしたconfigファイルの場合、encrypted vmaeobk2094j2gvnav439u2Fv
のようになります。したがって、上記のエラーの原因は、生のconfigファイル(encrypted ...のファイル)をimportしなかった場合に発生します。こうなると仕方がないので、初期化して再設定するしかありません。初期化は、前面の3つもボタンを長押ししながら、電源をOnにすると可能です。
YAMAHAルーター設定のコツ
web GUIは便利ですが、設定が反映されていないといったことが多々起きます。したがって、configファイルの中身を毎回きちんと読み、反映されているのか確認しながら作業することが大切になってきます。管理
の部分からconfigファイルをimportしたりexportしたりできるので、毎回確認しながら設定しましょう。