Allied Telesis CentreCOM の小技

最近のアラテレは SDNへの注力もあって ATxシリーズへの世代移行が加速しており、昔ながらの CentreCOMシリーズは青息吐息な感があるけれども、かえってかつての高級機が手頃な値段でオークション等に出回るようになった。ここでは CentreCOM系では最後にして現役の AR5xxルータおよびそれと同族の 8xxxスイッチ関係の小技をいくつか取り上げる。1


    コンソールへのアラートを黙らせる

    AR系や87xx系でファイアウォールを有効にすると、デフォルトではルールにないパケットを受信する度にマネージャ権限以上でログインしているコンソール(async/telnet/ssh)にアラート通知が流れてしまう。

    XXX.XXX.XXX.XXX attempting to use non-policy interface
    
    Denial of service attack from XXX.XXX.XXX.XXX is finished  
    

    設定作業中にこれらが次々に流れてゆくと作業の邪魔も甚だしい(電源を切りたくなる)ので、次のコマンドでコンソールへのアラートは止めてしまおう。

    disable firewall notify=manager  
    

    UnTagポートにTagパケットが入ってきた時も attempting to use non-policyと怒られるので、VLAN変更をしている最中にも、これをしておくと結構助かる。

    なおnotify=allにするとすべてのアラートが止まるが、ログにも残らなくなる。ファイアウォール設定が充分固まって逆に FIRE ATACK 通知で sh log が埋まるようになったら、全部止めたほうがむしろ都合が良いだろう。


    時系列逆順ログ

    コマンドラインヘルプ(?キーのあれ)では表示されないので気づきにくいが show log reverse (sh log rev) でログを時系列の逆順に見ることが出来る。最新のログだけ確認して Quitで抜けるのに便利だ。

    > sh log rev
    
    Date/Time   S Mod  Type  SType Message  
    -------------------------------------------------------------------------------
    27 17:58:21 3 IPG  IPFIL DUMP  Received invalid DA 8.240.213.66>22.103.89.96  
                                   Prot=17 Int=ppp5
    27 17:57:57 3 IPG  IPFIL FRAG  DirBcast Fail 6.102.80.241>22.103.89.103  
                                   Prot=6 Int=vlan12
    27 17:57:43 3 IPG  IPFIL FRAG  DirBcast Fail 19.6.240.45>22.103.89.103 Prot=6  
                                   Int=vlan12
    

    もちろん moduleと組み合わせて特定カテゴリのログだけ表示するときにも使える。

    > sh log reverse module=ssh
    
    Date/Time   S Mod  Type  SType Message  
    -------------------------------------------------------------------------------
    27 17:51:39 3 SSH  SSH   RJCT  Rejecting SSH connection from 43.29.53.43  
                                   incompatible versions
    27 17:43:23 3 SSH  SSH   RJCT  Rejecting SSH connection from 45.14.11.37  
                                   incompatible versions
    27 17:37:53 3 SSH  SSH   RJCT  Rejecting SSH connection from 43.29.53.51  
                                   incompatible versions
    

    この機能は AR5xxS系や8xxxXL系で使えるが、9424T/SP等では使えない。


    Security Mode の有効時間を伸ばす

    IPSec/PKI/SSH を有効化して SECURITYOFFICERユーザに切り替えると、デフォルトでは1分で再ログインを求められるようになる。いくらなんでもこれは短いと感じた時は、次のコマンドを打ち込む。

    set user securedelay=3600  
    

    設定可能な範囲は 10〜3600秒である。最短の10秒にすると相当の苦行を味わえるが、タイプ速度が上達する効能もある。


    非同期ポートのボーレートを変更する

    アラテレ製品では、管理用シリアルコンソールポートを非同期ポートと呼称する。初期値は baud=9600なのでこれを変更するには、次のようなコマンドを打ち込む。

    set asyn=0 speed=115200
    
    # 以下でも同じ(show conf dynの表示はこちら)
    set asyn=asyn0 speed=115200  
    

    打ち込んだ瞬間に設定が反映されるので、現在正に非同期ポートでログインしている場合は、対向端末側も設定を合わせるまで制御不能になることに注意しよう。

    だがこの設定にかかわらず、機器ブート(起動時診断)メッセージは baud=9600固定である。従って動的にボーレートを変更できる端末ソフトを使っていないと思ったより難儀してしまう。結局できるだけ 9600固定で運用するほうがいざというとき慌てずに済むかもしれない。

    なお設定内容は show asyn=0 で確認できる。


    NTPモジュール

    NTP時刻合わせのテンプレを以下に示す。ログ記録に関わるので、機器に IPを付したら真っ先に行う作業だ。

    # NTPモジュールを活かして時差を指定する
    enable ntp  
    set ntp utc=+09:00:00
    
    # peerアドレスは一つだけ書ける
    # DNSモジュールを活かしていても FQDNでは指定できない。
    add ntp peer=133.243.238.163
    
    # 強制同期
    # "ACTIVATE NTP" コマンドではない(そういうものはない)
    reset ntp
    
    # ステータス表示
    show ntp
    
    # peerアドレスの変更
    # "SET NTP PEER"コマンドが存在しないので "DEL"して "ADD"する
    # 当然DNSラウンドロビンも出来ないので機器毎にバラけた設定をしたりする
    del ntp peer=133.243.238.163  
    add ntp peer=133.243.238.164  
    

    L3スイッチでの PPP接続

    L3スイッチでのLAN型PPP接続の例を挙げる。下記は 8948XL、8724SL/8748SLでの場合だ。2

    # Port1をアップリンクポートとして ONU接続に使う
    create vlan="PPPoE-FLET" vid=4  
    add vlan="4" port=1
    
    # そのポートの中に PPPセッションを張って PPPインタフェースを作る
    create ppp=4 over=vlan4-any  
    set ppp=4 bap=off iprequest=on username="<ISPアカウント>" password="<パスワード>"  
    set ppp=4 over=vlan4-any lqr=off echo=10 
    
    # PPPインタフェースの IPは ISPから貰う
    enable ip  
    enable ip remote  
    add ip int=ppp4 ip=0.0.0.0
    
    # ・・・ことにしつつ、内側のVLANにそのIPを付けて NETMASKを切る
    # これがL3スイッチ配下から見たゲートウェイIPになる
    add ip int=vlan1 ip=<付与されたグローバルIPのひとつ> mask=255.255.255.248
    
    # デフォルトルートは PPPインタフェースに丸投げする
    add ip rou=0.0.0.0 mask=0.0.0.0 int=ppp4 next=0.0.0.0  
    

    上位への接続は L3ルーティングとなる。設定のミソは本来 PPPインタフェースに付くべき IPを、内側の VLANにつけるところだ。

    言うまでもなかろうが、IPが一つしか付与されない端末型接続の PPPでは、NATが使えなければおよそ意味が無い。L3スイッチ系では通常は NAT接続ができないので(ファイアウォールライセンスの購入が別途必須)、その場合はおとなしく ARシリーズを使おう。AR系と 89xx/87xx系の使い分けは、装備された物理ポートの数とNAT機能の有無で、PPPインタフェースの設定については概ね互換性がある。


    工場出荷時初期化

    Security Mode 状態から工場出荷時設定へ一気に戻すには次のようにする。AR550S v2.9.2 で確認した。

    # 非同期ポート速度を初期値に変更
    set asyn=0 speed=9600
    
    # 設定ファイルを読み込まずにコールドスタート
    restart router config=none
    
    Warning: Config file MUST add a user with SECURITY OFFICER privilege.  
    Do you wish to proceed with restart using specified config?(y/n)
    
    INFO: Initialising Flash File System.  
    INFO: Router startup complete
    
    # 規定値ユーザの manager/friend でログイン
    login: manager  
    Password:
    
    # SECURITY_MODE を切る
    disable system security_mode
    
    Warning: This command will disable security mode and delete all security files.  
    Are you sure you wish to proceed?(y/n)  y
    
    Info (1034003): Operation successful.
    
    # 起動設定を消して、元の起動設定ファイルを rename あるいは delete fileする
    set conf=none  
    rename boot.cfg boot-old.cfg  
    

    見れば解るが、デフォルトの managerユーザは Security Mode を切ることができる。起動設定ファイル(規定値では boot.cfg)を削除して再起動しても同じことだが、Security Mode 状態は設定ファイルと関係なく EEPROM内に保存されているため、これを切る方法を知らないと show confも create confも出来ない。

    ところで起動診断時に以下のメッセージの途中で数秒間止まる。そこで "y" を押すと何が起きるだろう?

    INFO: Self tests beginning.  
    INFO: RAM test beginning.  
    PASS: RAM test, 65536k bytes found.  
    INFO: Self tests complete.  
    INFO: Downloading router software.  
    Force EPROM download (Y) ? 
    
    INFO: Initialising Flash File System.  
    
    INFO: Executing configuration script <flash:boot-1.cfg>  
    INFO: Router startup complete
    
    AR550S login:  
    

    答えは「起動設定ファイルは読み込むが、すべてのEnableコマンドを無視する(組み込みモジュールを有効化しない)」である。このため Security Mode は切れて起動するものの、SET USERは通常通り実行されているために SECURITY OFFICERでログインすることが出来ず、かつ managerユーザが設定ファイルから削除もしくはパスワード変更されていたならば、結局は再ログイン手段が得られずに行き詰まる。

    ところがここで "y" ではなく "s" を押すとどうなるだろう?3

    Force EPROM download (Y) ?  
    INFO: Initial download successful.
    
    INFO: Initialising Flash File System.  
    
    
    INFO: Router startup complete
    
     login: 
    

    ログインプロンプトに "SET SYS NAME" が反映されていなければ成功である。つまり起動設定ファイルを読み込まないで起動できる。こうなれば自動的に managerユーザが復活するので、それでログインして Security Modeを切り、工場出荷時状態に戻してしまえる。

    この Undocumentedな挙動は、対応しているいくつかの機種・ファームウェアでのみ可能4ですべての機種で可能なわけではない。同じ機種でもファームウェアによっては(Undocumentedなのだから当然だが)そもそも対応していなかったり、GS916M/GS924M に至っては managerユーザは復活するもののパスワードはリセットされない5ので、パスワード忘れ事案には対応できない。


    1. CentreCOMは開発担当部署によっていくつかの製品グループがある。AR5xxSルータと89xxXL/83xxXLは同族だが、87xxSLはそれより1世代古くて多少性格が異なり、94xxTSと GS9xxMはいずれも全く異なる出自と設計なので似て非なる挙動を示したりする。これらの見分け方というか個性の違いは、見たとおり型番ルールの類似性や(アンドキュメントな)隠し機能の有無、コンソールエラーメッセージの違いに強く現れる。

    2. 8948XLは正式には PPPに対応しておらず Undocumentedなのだが、実際には 8724SL/8748SLと同様の設定と運用ができる。両者の決定的な違いはファイアウォール(NAT機能)追加ライセンスが設定されているか否かだ。だが NAT設定が不要=LAN型接続であれば、8948XLでも不都合なく設定して運用できる。

    3. 恐らく SKIP の頭文字だ。必ずしもすべてのファームウェアで対応している保証はない。別の一部機種では起動メッセージ中で明示的に "S"と表示しているものもあるが、AR5xxS系の場合はノーヒントである。

    4. アラテレ製品の場合、パスワード忘れによる工場出荷時初期化は、有償修理対応が原則である。エンドユーザレベルでこれが出来るのは一部機種の隠し機能に限られる。

    5. GS916M/GS924Mは、パスワードが EEPROMに独立して記録されるため設定ファイルを読み飛ばしても再ログイン可能にはならない。だがこの機種はブートローダー起動中に特定の操作をすると、ブートローダーシェルに入ることができる。そこで EEPROM内容のダンプ&エディットが不可能でもない。

    RECENT LINKS