Advanced NW boardU アップデートモジュール ◆バージョンとモジュール名 ---Ver.5.01.00--- ◇総合バージョン  Ver.5.01.00 18-04-17 ◇モジュール  up5_01_00.udf ◆重要項目 ◇18年3月6日に更新されましたGoogle Chromeバージョン65にてCookieの扱いの変更によりログインできなくなる問題に対応しました。 (Ver.5.00.05で対応済み)  いくつかあるCookieの登録方法の1つがGoogle Chrome 65から無効となり、  本ボードでは、無効になった方法を採用していたため、Cookieへの書き込みができなくなり、  ログイン管理にはCookieを使用していたため、ログインできなくなりました。  Cookieを登録する方法を別の方法に変更しました。  既にChrome 65にアップデートしたため、ログインできない場合、以下の方法でアップデートを行ってください。  方法1. 別のブラウザ、例えばInternet ExplorerやEdge、Firefoxでは問題ございませんので、これらでログインし、 「アップデート/バージョン情報」からアップデート操作を行ってください。   なお、Chrome 65にてログインボタンを何回か押すと、「ログイン制限数を越えました。しばらくしてから   再度ログインしなおしてください。」と表示されることがあります。その際は他のブラウザからもログイン   できなくなりますので、「アカウント設定」の「タイムアウト時間(デフォルトは15分)」経過を待つか、   ボードのRESETボタンを押し、再起動してください。  方法2   USBメモリでのアップデートも可能です。ブラウザでのアクセスは不要ですので、方法1が行えない場合は、   こちらの方法でアップデートしてください。 以下の手順で行ってください。   アップデートファイルをUSBメモリのルートディレクトリにコピーし、ボードのUSBコネクタに挿入します。   USBメモリにアップデートファイル(拡張子が"udf")が複数ある場合、日時が一番新しいものが採用されますが、   誤動作を避けるために他のアップデートファイルは削除してください。   USBメモリを挿入し、ボードがUSBメモリを認識するとLEDが「左端が点灯、右端が点滅(○●●◎)」の様になりますので、   このようになっているかを確認してください。LEDの点灯状態がこのようにならない場合、USBメモリを指し直し、   もしくはボードのRESETを行い、それでも認識しない場合は、他のUSBメモリをご使用ください。   ボードのCONFIGスイッチを1にあわせ、INITスイッチを押し続けると、LEDが左端から点滅を始め、数秒後に左から2番目が   点滅している状態(●◎●●)で、INITスイッチを一旦離し、5秒以内に再度INITスイッチを押しますと、USBメモリにある   アップデートファイルでアップデートを開始します。   アップデート中はLEDの左2つが点滅(◎◎●●)します。アップデート処理時間はUSBメモリの種類等で変わりますが、   約20〜40秒かかります。   すぐに元の状態(LEDの左端が点灯、右端が点滅(○●●◎))に戻る場合は、USBメモリにアップデートファイルが入っていないか、   もしくはアップデートファイルを検出できない場合です。この場合、USBメモリの内容を確認するか、別のUSBメモリでお試しください。   アップデート処理(LEDの左2つが点滅(◎◎●●))後、再起動しない時は、USBメモリのアップデートファイルが正しく読み込めないか、   壊れている可能性があります。再度、USBメモリにコピーし直すか、ダウンロードし直してください。   アップデートが正常に動作した場合、自動的に再起動が行われます。   その後、USBメモリを抜き、CONFIGスイッチは必ず0に戻してください ◆機能追加 ◇旧Advanced NW boardでバックアップしたパラメータファイルの読み込み(リストア)に対応しました。  操作は通常のリストアと同じです。  但し、下記の制限があります。  ・スケジュール設定はデータ形式、概念が異なるため、パラメータの移行はできません。  ・アカウント関係は旧Advanced NW boardでは保存していないので、移行はできません。  ・スクリプト設定の「選択方式」で旧Advanced NW boardにあったいくつかの選択肢は新Advanced NW boardUでは削除しましたので、 削除された選択肢分は、編集方式エリアにスクリプトを登録し、選択方式では「カスタム」となるようにしました。 編集方式エリアに登録する際、選択方式のどれであったかをコメントとして記録するようにしています。 以下の選択方式が新Advanced NW boardUでは削除しました。 ・Solaris系(telnet) ・HP-UX 10(telnet) ・HP-UX 11(telnet) ・FreeBSD系(telnet) ・QNX(telnet) ・Solaris OpenSSH(password認証) ・Solaris OpenSSH((公開鍵認証) ・Linux Wall(openSSH(password認証)) ・Linux Wall(openSSH(公開鍵認証)) ◇ユーザ定義イベントに「ホスト監視」を追加しました。 「ホスト監視/WOL」で監視対象の状態が変化したら、ユーザ定義イベントの設定に応じてユーザ定義イベントを発行します。  8ヶ所まで設定できますが、1ヶ所だけ設定した場合、その1ヶ所の「起動、停止」でユーザ定義イベントを発行できます。  ユーザ定義イベントは10組定義可能ですが、複数箇所に「ホスト監視」を設定し、それぞれ別のホストを設定することも可能です。 ◇ユーザ定義イベントに「異常/警告」を追加しました。  いくつかの警告(過負荷やバッテリ限界(容量低下)等)は個別にイベントが割り振られていますが、  バッテリ異常発生は「初期バッテリ異常、インターバルバッテリ異常、バッテリ異常」のいずれかが発生すると発行されますが、  どれで発生したかはメール通知やログを見ないと判別しませんでした。  同様に故障系は全てをまとめて「UPS重故障発生」となっています。  ユーザ定義イベントの「異常/警告」では、設定により個別にイベントを発行する事か可能となります。 ◇ユーザ定義イベントの「繰り返し時間」は秒のみで設定し、最大99999秒(約27時間)でしたが、  指定時間が「日、時、分」で割り切れる場合、その単位で表示するようにしました。  また、単位を指定し、時間を設定することも可能にしました。  最小は20秒、最大999日(86313600秒)まで指定できるようにしました。 ◇スケジュール設定の個別設定で「起動、停止、無効」以外にユーザ定義イベントを登録できるようにしました。  これは「起動、停止」とは独立して動作します。  指定されたユーザ定義イベント自身には設定をする必要は無く(「設定しない」のままでかまいません)、 スケジュールした時刻に指定したユーザ定義イベントが発行されますので「イベント設定」で設定することでスクリプトの  実行やメール通知などが行えます。 ◇スケジュール一覧で既に実施済みか、これから実施するかをわかりやすくするために背景色を変えるようにしました。  これから実施するスケジュールは背景色が「緑」になります。  既に実施済み、または時刻との関係から実施されることがないスケジュールは背景色が「白」になります。  背景色が白のスケジュールであっても全てを実施したわけではありません。 ◇スクリプトのイベントを表す以下の変数の内容を変更できるようにしました。  Ver.5.00系ではイベント番号か関係する変数が参照するのは「最終イベント番号」でしたので、スクリプト実行中に 他のイベントが発生すると、そのイベントの内容となってしまいました。  例えば、「停電シャットダウン開始」でスクリプトを呼び出したが、その後に「バッテリ限界(容量低下)」になると、  $eventStrは「バッテリ限界(容量低下)」となってしまいました。  そのため、このスクリプトを呼び出したイベントを記録し、スクリプト中は元となったイベントを維持するようにしました。  先の例では$eventStrは「停電シャットダウン開始」を維持します。  なお、過去との互換を保つため、デフォルトではVer.5.00系と同じ動作とし、EventSourceコマンドで切替ら得られるようにしました。   EventSource < 0 | 1 > : 0:互換モード(最終イベント)、1:イベント発行時のイベント情報を保持  この変更で内容が変更可能になる変数一覧 $eventNo イベント番号 $eventStr イベント項目名 $eventStrU イベント項目名、"_"版 $eventStrEn イベント項目名(英語) $eventStrEnU イベント項目名(英語)、"_"版 $scriptNo スクリプト番号(Scnum) $ueventNo ユーザイベント番号(-1ならユーザイベント以外) $ueventMsg ユーザイベントメッセージの文字列化 $ueventItem イベントの項目の文字列化(shr_userevtcrt[].EventKindMsg[30];) $ueventLimit 上位または下位検出値の文字列化(shr_userevtcrt[].LimitNumMsg[30]; $ueventValue イベント発行時の値の文字列化(shr_userevtcrt[].ValueNumMsg[30]; // $ueventDir ユーザイベント検出時の方向の文字列。"以上" or "以下"。(shr_userevtcrt[].Direction[10];) ◇Webの「イベント設定」で、イベント項目1行毎に背景色を変更しました。  縦方向にはスクリプト4つ毎に縦線を太くしました。  さらにマウスカーソルをイベント項目に乗せると背景色が濃くなるようにし、選択しているイベント項目を目立つようにしました。 ◇「動作モード」にて「sshサーバ機能」を停止可能にしました。 ◇ボード起動時にINITボタンの操作でパラメータを読み込まず、初期状態で起動するようにしました。  万一、パラメータ設定を変更したことで起動しなくなった場合やIPアドレス、アクセス制限の設定を誤った場合、  この方法で起動し、Webの「再起動/パラメータ保存/読出/初期化」で「パラメータ読み出し」で以前のパラメータを読み出すことで、  問題が解決することがあります。  また、「再起動/パラメータ保存/読出/初期化」で完全初期化も可能です。  初期状態ですので、重要な設定は以下になっています。   IPアドレス      192.168.0.10   サブネットマスク 255.255.255.0  ユーザ名、パスワード "upsuser"  操作方法はペン先等で、パネルのRESETボタンを押し、直ちにINITボタンを押し続けます。  ロータリスイッチの下のLEDが「全消灯」→「全点灯」→「左端点滅」→「左から2つ目点滅」と変化しますので、  「左から2つ目点滅」になればINITボタンを離しますと、パラメータの読み込みを行わず、起動します。  また、「パラメータ読み出し」を行うとVer.5.00系では読み出し後に再起動を行いましたが、  Ver.5.01以降では読み出した設定を変更できるよう、読み出しのみとしました。 ◇バイパス切替を行うと、従来は管理プロセスにのみ記録を残していましたが、イベントログにも記録するようにしました。  メンテナンススイッチによるバイパス切替、故障発生によるバイパス切替のいずれでも同じ記録を残します。 ◆仕様変更 ◇openssl、opensshを18年3月時点の最新にしました。   openssl 1.0.2o 27 Mar 2018  openssh 7.6 Ver.5.00系では   openssl 1.0.2k 27 Jan 2017  openssh 7.4  でした。 ◇スケジュール実行時の動作の一部が旧Advanced NW boardと異なるため、旧ボードと動作をあわせる様にし、  動作を選択できるようにしました。  スケジュールを設定し、UPSが完全停止中にスケジュール時刻を超えた後に、復電等でボードが起動した場合、  新Advanced NW boardUでは、そのスケジュール設定が起動、停止にかかわらず、常に直近の未実行のスケジュールを実行していました。  旧Advanced NW boardでは上記のような場合、直近のスケジュール設定が停止の場合は無効とし、起動の場合のみ実行しておりました。  Ver.5.01系以降ではデフォルトの動作を旧Advanced NW boardと同じとし、さらに、「スケジュール設定」に【共通設定】の項目を追加し、  ・ボードの停止期間中に過ぎたスケジュール停止がある場合は実行する  ・ボードの停止期間中に過ぎたユーザ定義イベントスケジュールがある場合は実行する  を選択できるようにしました。デフォルトでは両方ともチェックが入っておらず、旧Advanced NW boardと同じ動作になるように  しております。 ◇Ver.5.01系以降ではtelnetのオプションとして"-E"(エスケープ文字を無視)を指定しています。  それ以前のバージョンで「エスケープ文字を無視」したい場合は"-E"を指定してください。  telnetの「エスケープ文字」とは、それをキー入力(スクリプトでは"Sendコマンド")でASCIIコード0x1D(Ctrl+])を入力すると  telnetの対話型モードへの移行する文字で、スクリプト処理中に対話型モードに移行するとスクリプト処理が継続でず、  タイムアウトエラー163になります。  本ボードはUnix系のtelnetクライアントを使用しておりますが、0x1Dだけでなく、0x80を加算した0x9Dもエスケープ文字として  認識してしまいます。  Shift-JISをご使用の場合、例えば1バイト目に0x9Dを含む文字として"戞"(9D49)、"戡"(9D41)、2文字目に含む文字として"往"(899D)、  "茅"(8A9D)など多数あります。  これらの文字があっても対話型モードに移行しないように"-E"の指定を追加しました。  sshの「エスケープ文字」は"~"(チルダ)で、よく使われる文字ですので、既にユーザ様側で対策されている可能性があります。  そのためsshでは「エスケープ文字」を無視するためのオプションは追加していません。追加する場合は「コマンドオプション設定」に  "-e none"を指定してください。 ◇スクリプトで「シャットダウン開始イベントで実行」にチェックを入れた際に、CGIログに記録していなかったので、  チェックを入れた場合、":シャットダウン開始で実行"を記録するようにしました。 ◇SNMP設定で、再起動が必要な項目に※を付けるようにしました。 ◇冗長連携で、相手側が指示停止した際に監視画面で「連携側:冗長管理不可(UPS停電)」としていましたが、  指示停止なのに(UPS停電)では意味が異なるため、「連携側:冗長管理不可(UPS停止処理中)」にしました。  ログにも「停止処理中」にしました。 ◇Webの「イベント設定」画面から起動するイベント発行画面の【注意】に  「本来の手順を行わず、イベントのみ発行しておりますので、全ての場合で正常に動作するとは限りません。」  を追加しました。 ◇Webのイベント設定の「イベント項目」の表示幅を20dot広げました。  Firefox 57やChromeのデフォルトフォント「メイリオ 16dot」で「Advanced NW board U動作開始」が改行されないようにしました。 ◇「再起動/パラメータ保存/読出/初期化」の「パラメータ読み出し」を行うと、  Ver.5.00系では設定を反映させるため読み出し後に再起動を行いましたが、  Ver.5.01以降では読み出した設定を変更できるよう、読み出しのみとしました。設定を反映させるためには再起動が必要です。 ◆不具合修正 ◇Web設定の「タイトル設定」に漢字やいくつかの記号を使用すると文字化けする不具合を修正しました。 (Ver.5.00.05で対応済み) ◇SNMPにてupsAlarmsPresent(1.6.1.0)はmibの定義では型がGauge32(GAUGE)ですが、INTEGERで返していました。  過去の互換のため、Web画面のネットワーク設定のSNMP設定に「RFC1628 upsAlarmsPresentの型」を用意し、 ・従来通りINTEGERとする ・MIB通りGauge32とする で切り替えられるようにしました。 過去の互換のため、デフォルトはINTEGERとします。 ◇SNMPにてupsAlarmsPresent(1.6.1.0)の警告数とupsAlarmDescr(1.6.2.1.2.0)の警告状態の数が  一致していないのを修正しました。 upsAlarmDescr(1.6.2.1.2.0)の警告の検出方法に誤りがあり、正しく応答を返していなかったので、  upsAlarmDescr(1.6.2.1.2.0)を修正し、upsAlarmsPresent(1.6.1.0)の警告数と一致するようにしました。 但し、upsAlarmId(1.6.2.1.1.(index))、upsAlarmTime(1.6.2.1.2.(index))はtrapと連動しているため、  upsAlarmsPresentの値とは一致しません。 ◇パラメータを変更後、「再起動/パラメータ保存/読出/初期化」で「パラメータ保存」を押した場合や、  パラメータ変更後の自動保存により保存された場合に、それらの操作後、約45秒以内にUPSを完全停止(本体SWのOFF中のAC入力停止)や  ボードをUPSより抜く、RESETボタンを押す、等を行うとパラメータが正しくFlash-ROMに保存されず、次回起動時に1つ前のパラメータを 使用(最新の設定変更は消える)することがあったのを修正しました。  なお、パラメータ変更後の自動保存には約10秒かかりますので、それ以前に上記のようなボードが停止する操作を行った場合は  今回の不具合とは無関係にパラメータは保存されていません。  また、パラメータを変更後、「再起動/パラメータ保存/読出/初期化」で「再起動実行」を行った場合は、変更後の時間にかかわらず、  パラメータは正しく保存されます。 ◇いくつかの画面やヘルプでリンク先ミスがあったのを修正しました。  1. Webの「ヘルプ」→「スクリプト設定」→「【選択方式】」の   「その対策としては「SSH公開鍵認証設定」の備考2を参照してください。」のリンク先が間違っていたので修正しました。 2. Webの「ヘルプ」→「公開鍵認証設定」→「〔備考2〕」の一番下の   「sudoの使い方はhttp://www.linux.or.jp/JM/html/sudo/man8/sudo.8.html等をご参照ください。」   がlink切れになっていたので修正しました。  3. Webの「ヘルプ」から開かれるヘルプのトップ画面を変更を変更しました。   「バージョンアップ情報 & シャットダウンスクリプト例」を止め、サポートページとしました。   マニュアルへの直接リンクを止め、サポートページへのリンクにしました。 ◇「ユーザ定義イベント」の繰り返しの「間隔」は20秒以下は受け付けない様にしていますが、  1秒は受け付けていたので、受け付けない様にしました。 ◇「アクセス制限」でSNMP部分の処理に不具合があったのを修正しました。  「SNMPアクセス許可設定」の「トラップ送信先IPアドレス」を一ヶ所以上設定し、  それぞれの「SNMPコマンドを受け付ける」に一切チェックが入っていないと  アクセス制限が無効になっていました。(アクセス拒否になりません)  上記のような場合に、アクセス制限するようにしました。 ◇DNSを設定後、バックアップし、DNSを別のアドレスに設定した後に  バックアップしたパラメータファイルでリストアした後に再起動せず、DNSを確認すると、値が変化していないのを修正しました。  但し、リストアは正常に行われており、再起動後にはリストアしたDNSのアドレスになっています。 ◇冗長連携で以下の場合にログに記録が残らないのを修正しました。  ・「冗長管理しない」を「ローカル」「連携ボード」いずれで設定しても   [冗長管理解除]の記録が残らないのを修正しました。  ・一旦、連携開始になり、一旦解除、再度「冗長管理する」にした際、[冗長管理開始]がログにのこならいのを修正しました。  いずれも、ログへの記録だけの問題であり、冗長連携の動作自身には問題はありません。 ◇セグメント機能のあるUPS(HP、HPFシリーズ)でパラメータをバックアップし、セグメント機能を持っていないUPS(SP/ST/HS)に  リストアすると「リストアでエラーが発生しました。(238)」になる不具合を修正しました。  なお、エラーは表示されますが、リストアは正常に行われております。  その逆にセグメント機能を持っていないUPS(SP/ST/HS)でバックアップしたパラメータをセグメント機能のあるUPS(HP、HPFシリーズ)に  リストアした場合も同様のエラーとなりましたが、同時に修正されております。 ◇いくつかの部分で、バッテリ寿命の返答値を月数ではなく日数を基準にしていたため、入手できる情報が誤っていたのを修正しました。  次の項目で修正しました。  ・telnet/sshでログインし、"v"で"Version and UPS status"を表示した時の「BatteryLife」の項目。  ・ftpでコマンドでのステータスの問い合わせで"StatusBattery"の「battery:RemainMonth」の項目。   「battery:RemainDate(Y/M)」は正しく年月を返していました。  ・SNMPのjemaのjemaUpsBatteryLifeTimeRemaining(1.2.10.0) ◇ボード前面のINITスイッチによる初期化を行っても、NTPのアドレス設定が残るのを修正しました。  ロータリスイッチを3にしての完全初期化や、Webの「再起動/パラメータ保存/読出/初期化」の「完全初期化」では初期化されます。  Webの「再起動/パラメータ保存/読出/初期化」の「IPアドレス/ポート番号関係/アクセス制限」では  これらは初期化されますが、NTPのアドレス設定は残っていました。  これらを含め、いずれでもNTPのアドレス設定も初期化するようにしました。 ◇スクリプトは最大576個まで登録できますが、これを超えて登録しようとすると管理プロセスが異常終了し、  OSが再起動する不具合を修正しました。 実行を終了したものは登録を削除されますので、実行中、実行待ちの総数です。  これを超えて登録しようとした場合は管理プロセスログに記録を残し、登録しないようになります。 ◇「再起動/パラメータ保存/読出/初期化」で「パラメータ読み出し」を行う際、  選択したパラメータが既に存在していないと、ログとパラメータを初期化していた不具合を修正しました。  通常は「再起動/パラメータ保存/読出/初期化」画面を開いた時点の最新のパラメータリストを表示しますが、  他のPCやブラウザ、別のタブ等で、「パラメータ保存」やその他の項目で設定値を変更し、自動保存されると、  「パラメータ読み出し」ボタンを押した時には選択しているパラメータファイルが存在していないことがあります。  その際に、エラーを表示し、さらにログとパラメータを初期化していましたので、エラー表示のみとしました。 ◇バックアップで「シャットダウン設定」の「停電回復後のUPS再起動動作」と「復電後起動遅延時間」の設定変更後にバックアップを行うと  パラメータファイルに保存されない不具合を修正しました。 「シャットダウン設定」のこれらを設定変更後、ボードを再起動した後にバックアップした場合はパラメータファイルに保存されています。   同時に、Webの「シャットダウン設定」画面の「停電回復後のUPS再起動動作」と「復電後起動遅延時間」はバックアップの「装置情報」が  選択されている場合に保存され、それ以外の項目(「停電確認時間」から「UPS停止時間」までと「シャットダウン実行、UPSを停止する」)は  「シャットダウン設定」を選択する場合に保存され、別の項目で保存されるようになっていましたが、Ver.5.01以降ではこれらを全て  バックアップの「シャットダウン設定」に統合しました。  Ver.5.00系からの互換性は保つようにしており、Ver.5.00系で上記の様に再起動後にバックアップしたパラメータファイルを  Ver.5.01以降にリストアした場合、設定は引き継がれます。 ◇「ログメール設定」の「管理プロセスログ」で「フル送信」にチェックが入っていて、ログがフル状態になりメール送信をしようとし、   さらにメール送信に失敗すると、管理プロセスが正常に動作しなくなる不具合を修正しました。 ◇アップデートの際、ボードへのアップデートファイルの転送に時間がかかると、  タイムアウトになり、アップデートができなくなるのを修正しました。