Yamaha RTX1220を買ったので初期設定のメモ

最近お家のネットワークの調子が定期的に悪くなり、おそらくヤフオクで落としたルーター・ファイヤーウォール群が怪しそうなので、ヤマハRTX1220の新品を勢いで買ってリプレースした際の忘備録になります。
ありがとう・さらばボーナス

うちは一般のご家庭のご家庭なので、もし記載内容に誤り等あればご指摘いただければと思います。

## コンソール(Teraterm)の設定
RTX1200のコンソールポートはCiscoとかと同じRJ45ポートのやつが載っています。速度もデフォルトはおなじみの9600bpsです
ネットワークエンジニアを自称していた時期もあるので、もとから持ってる以下のケーブルで接続しました。
https://www.amazon.co.jp/gp/product/B0769J9QXP/ref=ppx_yo_dt_b_search_asin_title?ie=UTF8&th=1

### 日本語対応
rtx1220のコンソールの特徴として一部メッセージとして日本が利用される(さすが日本メーカー・・・日本人的に大変ありがたい)点があり、このため下記２点を設定する必要があります(Teratermの場合の設定方法を追記)
* 文字コードを「Shift-JIS」に
    * 「設定」→「端末」から端末の設定ダイアログを開く
    * 「漢字-受信」および「漢字-送信」の項目で「SJIS」を選択する
    * (文字コードはCRのままで良いようです)
* フォントを日本語を含むものに
    * 「設定」→「フォント」→「フォント」からフォントの設定ダイアログを開く
    * フォント名のなかから「MSゴシック」を選択(日本語入っていれば基本なんでもいいです)
(Teratermの場合)設定後に「設定」→「設定の保存」からteretermの設定ファイルを上書き保存します。

下記記事を参考にしました。

https://bacque.biz/archives/8048
  

### その他ターミナル設定
一応本当は下記設定をする必要があります。


|端末パラメーター    |設定値|
|-|-|
|データ転送速度      |9600bit/s|
|キャラクタービット長|8|
|パリティチェック    |なし|
|ストップビット数    |1|
|フロー制御         | Xon/Xoff|

(http://www.rtpro.yamaha.co.jp/RT/manual/rtx1220/Users.pdf の42ページ目より)
teratermでは「設定」>「シリアルポート」から設定できます。
teratermの場合フロー制御のデフォルト設定が「none」になっているのでここだけ「Xon/Xoff」に直さないと行けないのですが、普通に設定しててシリアル通信のフロー制御がかかることとか無いと思うので設定しなくても動きます。


## ログイン及びパスワードの設定
工場出荷状態ではパスワードはかかっておらず、入力画面で何も入力せずにEnterを押せばログイン・権限昇格ができます。
```
Password:

RTX1220 Rev.15.04.03 (Tue Jun 29 15:36:02 2021)
Copyright (c) 1994-2021 Yamaha Corporation. All Rights Reserved.
To display the software copyright statement, use 'show copyright' command.

Memory 256Mbytes, 3LAN

The login password is factory default setting. Please request an administrator to change the password by the 'login password' command.
> administrator
Password:
The administrator password is factory default setting. Please change the password by the 'administrator password' command.
#
```


一般ユーザー(機器ログイン時に入力を求められる)と(昇格時に入力を求められる)特権ユーザーがあり、それぞれ下記コマンドでパスワードを設定します。

どちらも `administrator` コマンドで特権モードに昇格後、下記コマンドで設定できます。
また設定後`save`コマンドで設定を保存します
```
> administrator

# login password
Old_Password:
New_Password:
New_Password:
# administrator password
Old_Password:
New_Password:
New_Password:

# save
```
参考: 
https://net-skills.net/yamaha-menu1/accesslevel-password/

※上記設定ではパスワードが平文で保存されるようです。暗号化して保存したい場合は、`login password encrypted`および`administrator password encrypted`を使用します。
* http://www.rtpro.yamaha.co.jp/RT/manual/rt-common/setup/login_password_encrypted.html
* http://www.rtpro.yamaha.co.jp/RT/manual/rt-common/setup/administrator_password_encrypted.html

### その他事項
* "w,lXlma"（ダブリュー、カンマ、エル、大文字エックス、エル、エム、エー）がコンソール接続時のみ使えるデフォルトパスワードとして設定されており(非ログイン状態から特権モードでログインできる)、もしパスワードをtypo溶かした場合はこれで復旧できます。その他の注意事項は下記参照
https://net-skills.net/yamaha-menu1/password-recovery/

パスワードを３回間違えると `Error: Login access is restricted.` と表示され、１分程度ログインできなくなりました。

## ssh/telnetの設定
下記コマンドでtelnetを無効にできます(デフォルトでは有効)
```
# no telnetd service
# telnetd service off
```
http://www.rtpro.yamaha.co.jp/RT/manual/rt-common/setup/telnetd_service.html

下記コマンドでsshを有効にできます
```
login user <user名> <password>　//ルーターへユーザーを追加する http://www.rtpro.yamaha.co.jp/RT/manual/rt-common/setup/login_user.html
Password Strength : Strong
# sshd host key generate // SSHのホスト側のキーを生成する http://www.rtpro.yamaha.co.jp/RT/manual/rt-common/setup/sshd_host_key_generate.html
Generating public/private dsa key pair ...
|*******
Generating public/private rsa key pair ...
|*******
# sshd service on // sshサーバー機能を有効化する http://www.rtpro.yamaha.co.jp/RT/manual/rt-common/setup/sshd_service.html
# sshd host lan1 // (必要に応じて設定)sshをlan1ポートからのみ接続を許可する http://www.rtpro.yamaha.co.jp/RT/manual/rt-common/setup/sshd_host.html
```
参考: 
https://changineer.info/network/yamaha_router_rtx/yamaha_router_rtx_ssh.html
http://www.rtpro.yamaha.co.jp/RT/manual/rt-common/howtouse/ssh_server.html

## WebGUIへのアクセス制限
SSHの設定で登録したユーザー情報でRTX1220のWeb UIが開けます。
インターネット側のIFからでも開けるとあまりよろしくないので、lan側からのみWeb UIが開けるよう設定します。
```
httpd host lan1  # http://www.rtpro.yamaha.co.jp/RT/manual/rt-common/http_server/httpd_host.html
```


## 文字コード設定
sshクライアントは文字コードをutf-8で設定していて他のサーバーの都合でクライアント側を変更するのも微妙なので、RTX側の文字コードをshift-jisからUTF-8に変更。
これでSSHでログインしたときもコンソールでログインしたときも文字コードがutf-8に変わります。

```
# console character ja.utf8
```

## hostnameみたいな設定をする
RTX自体にciscoとかでいうhostnameみたいな設定はないみたいなので、以下でそれっぽい文字列をconfigに表示し、プロンプトにホスト名を出すようにする。
それだけだと寂しいので、ついでに内部の簡易DNSサーバーにホスト名を登録。
```
# console prompt rtx1220 //http://www.rtpro.yamaha.co.jp/RT/manual/rt-common/
rtx1220#
rtx1220# ip host rtx1220 127.0.0.1 //

```
https://fanblogs.jp/iphone7/archive/35/0
https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q10234537010

## その他参考
ヤマハの機器設定に関してのリファレンスは下記のとおりです
http://www.rtpro.yamaha.co.jp/RT/manual/rt-common/

また下記記事を参考にしています。
https://changineer.info/network/yamaha_router_rtx/yamaha_router_rtx_initial.html