文字コード

コンピューター上で文字を表す際に基準とする取り決めのようなもの。受け取ったデータをコンピューターがどう解釈するのか、という規則のようなもの。アプリケーションによって様々。Windowsの場合、多くのアプリケーションでShift-JISが使われている。Unix系ではEUC.JPが多い。電子メール(アプリケーション)で標準的に使われているのはISO-2022.JPだったりする。互換性などの観点からUTF-8がオススメ。 (例1)文字コード:shift-jis受け取ったデータ:8E52コンピューター上での出力:山(漢字になる) (例2)文字コード:shift-jis受け取ったデータ:90ECコンピューター上での出力:川(漢字になる)

dockerでサクッとhttps環境を構築しようとしてハマった点

docker-hubにhttps-portal という大変便利なコンテナイメージがあり、お試し感覚で使ってみたところ、様々な点でハマってしまったため、備忘録的に綴る。 ざっくり言うと「リバースプロキシとして動作するnginxコンテナが他のwebサーバコンテナ達のhttpsアクセラレータとして動作してくれる」といったもの。httpsで使用する証明書については、コンテナ起動時にLet’s Encrypt(DV認証)から取得する仕組み。ハマりポイント(実施したほうが良い作業)だけを簡潔に書くと、 dockerホストのselinux無効化 インターネット側からhttps-portalコンテナに対して80/tcpで 通信可能な状態にする(Let’s Encrypt対策) インターネット側のDNSサーバーに取得済ドメインのAレコードを設定 といったところ。 Let’s Encryptの証明書を使わないで自己署名証明書を使う場合はコンテナに渡す環境変数「STAGE」を「local」にしてあげればOK。その場合は閉鎖された環境でも構築可能。 詳しい使い方についてはこちら。 ViVa Docker!

paloalto メンテナンスモード

パロアルト (Paloalto) 機器を工場出荷状態に戻す際の手順をメモ。 再起動してすぐに、「Enter ‘maint’ for boot menu.」などとメッセージが表示され、「Entry:」のプロンプトが表示されたら、「maint」と入力してEnter。すると「GNU GRUB version x.xx」と題されたメニューが表示されるので、「PANOS (maint)」を選択してEnter。するとメンテナンスメニューに入るので、「Continue」をEnterして、初期化やIPアドレスの設定など、やりたいことを存分にするといい。

Windowsでハッシュ値を算出する方法

windows10 のコマンドプロンプトで任意のファイルのハッシュ値を生成できる。 ハッシュアルゴリズムも「MD2」「MD4」「MD5」「SHA1」「SHA256」「SHA384」「SHA512」から選べる。未指定だとデフォルト値の「SHA1」になる。 SHA512でハッシュ値を算出するとこう。

teraterm.ini で何も考えずにとりあえず編集する箇所

掲題の通り。Webブラウザの「お気に入りインポート」のように自分の趣向にマッチした環境設定を準備するようなもの。 アプリケーション起動時のTeraterm表示位置をデスクトップの左上に固定 アプシケーション終了時のTeraterm表示位置を記憶しない(常にVTPosの値にする) 切断(アプリケーション終了)時に確認ダイアログを表示しない

DNA Centerを使用して管理しているAPをモビリティエクスプレスモードからCAPWAPモードに変更する方法

“How to convert cisco access point from mobility express mode to capwap mode in case of using cisco dna center.” とでも題するべきか。 どうやらファームウェアのバージョン等も関係していそう。 CiscoのAccessPoint(以下AP)にMobilityExpress(以下ME)のファームウェアをインポートしてMobilityExpress-modeとして使用した後に、集中管理型であるcapwap-modeに変更したいことがある。 コミュニティサイトによればAP上でコマンドを実行すれば切り替わるらしいけど、DNA Center(以下DNA)のPlug and Playを使用する場合は、これだけで安心すると少し困ることになる。というのも、この状態だとファームウェアはMEなので、DNAがAPを適切に認識してくれない。結果としてAPはWLCにjoinすることができない。 解決策としては、APがDNAを介さずに直接WLCにjoinし、その後APのコンフィグクリアを実行すればOK。WLCにjoinした時点でWLCがAPのファームウェアを上書きしてくれるのでDNAがAPを認識可能になる。 とこの文面だとMEのファームウェアがDNA認識不良の原因のように見えるけど、自身が検証した結果から推測したに過ぎない点に注意。Ciscoから見解をもらったりしたわけではない。 また、上記コミュニティサイトの手順でcapwap-modeに変更後、”capwap ap erase all”を実行したらPoEネゴシエートに失敗するようになった。この場合、”AP起動時modeボタン10秒プッシュ”方式によるリセットを実施し、更にcapwap-modeに変更した後にWlc-Join-WithoutDna(WJWDと勝手に命名)を実施することになる。 また、MEが入ってないAPでもPoEに失敗する事象を確認したけどそれはまだ原因不明。

Perl で Ping 監視

第1引数のIPアドレスにPingを5回実行して、全てNGだったらSlackにPostし、さらに任意の宛先にメールを送信するPerlスクリプト。メールは日本語に対応。ちなみに、Ping実行時にRTTを取得といてMRTGでグラフ化して満足する。状況に応じて監視対象除外を設定することも想定。 Ping監視対象IPを記述したファイル /etc/mrtg/all-address.csv(カンマ区切りで IP,名称\n(改行) という形式で対象IPの数だけ複数行に渡って記述) Ping監視除外IPを記述したファイル /etc/mrtg/exception-address.csv(上記と同じ形式) スクリプト内容