j3iiifn’s blog

ネットワーク、インフラ、セキュリティ、プログラミング(Python、Android)についての備忘録

SNMP TrapをAlertmanagerでアラート化する試み

SNMP Trapを受信したらメールやSlack等で通知する仕組みはsnmptrapdのtraphandleで簡単に実現できる。 単発のTrapがときどき来る程度であればその仕組みでも良いと思う。 しかし、大抵のシステムは何らかの故障時にTrapが大量に発生する。 すると、通知もそ…

VyOSのプライベートMIBをNet-SNMPに読み込ませる

SNMP Trapを勉強しようと思い、VyOSでTrapが飛ぶようなイベントを発生させて、Trapの内容を見ていた。 Link up/downはRFCで定義されたMIBを使用しているので問題なく読めた。 しかし、BGP peer up/downはVyOS独自(正確に言うとGNU Zebra独自)のMIBを使用し…

dpktのpack_hdrメソッドを読んだ

dpktはパケットを作成したり解析したりするPythonモジュールである。pcapファイルを読み込むときなどに使う。 kbandla/dpkt: fast, simple packet creation / parsing, with definitions for the basic TCP/IP protocols バイト列をやりとりする通信プログラ…

テキストファイルで タスク管理 兼 備忘録 を実現する

2年くらい続けているタスク管理&備忘録システムを紹介する。 タスクを管理するためのメソッドやツールは世の中にいろいろあるが、なかなか自分に合うものがなかった。 私がタスク管理ツールに望むものをざっと列挙してみる。 タスクの入れ子構造を許してほ…

readコマンドで1つの文字列から複数の変数に代入するとき

前提 Bash やりたいこと 変数 var_input に文字列が入っている。その文字列には、複数の値がカンマ区切りで記録されている。 input_var="aaa,bbb,ccc,ddd" 変数 input_var を読み込み、カンマ区切りで第1フィールドを変数 var_a に、第2フィールドを変数 var…

AndroidのChromeアプリで開いているタブのURLを全部取得する方法

通勤中にスマホで気になることをググったり、はてなブックマークやTwitterで話題の記事を見たりするのが習慣なのだが、一度開いたページを閉じられない病にかかっている。 後で見返したいページはブクマして閉じればいいし、実際そうしようと努力しているの…

Android端末にインストールされているアプリの一覧を作るワンライナー

動機 先日、Google Pixel 3aを購入した。 付属のアダプタを使用して古いAndroid端末からデータを移行してみたが、すべてのアプリのデータを移行できるわけではなかった。 仕方ないのでアプリをひとつひとつ開いてデータの移行ができているかチェックすること…

CodiMDのユーザ認証にオレオレ証明書のLDAPSを使う

やりたいこと CodiMDのユーザ認証にLDAPを使いたい LDAPサーバとの通信はLDAPSにしたい LDAPサーバにはオレオレ証明書(自己署名証明書, self-signed certificate)が入っている 困ったこと とりあえずCodiMDの公式ドキュメント Active Directory (LDAP) の…

止めていると主張が激しいストップウォッチを作った

Web: https://j3iiifn.github.io/blinking-stopwatch/ Code: https://github.com/j3iiifn/blinking-stopwatch 2年前にJavaScriptの練習で作ったストップウォッチを今更ながら公開した。GitHub Pagesはこういうのをサーバを用意せずにサッと公開できるから便…

まっさらなHPE製サーバにESXiをインストールするまでの道のり

HPE ProLiant DL ラックサーバにESXiをインストールする機会があったので、その手順をメモっておく。 1. リモートからiLOにアクセスできるようにする iLOのIPアドレスとユーザアカウントを設定する。 ここだけは現地での物理作業が必要。 サーバにディスプレ…

iLOやiDRACでOSをインストールするために、ISOファイルを配信する簡易HTTPサーバを立てる

やりたいこと iLOやiDRACを使って、リモートからOSをインストールしたい URL経由でISOイメージファイルをサーバに仮想的にマウントしたい iLO4の場合 Integrated Lights-Out 4 (iLO4) - リモートコンソールの使用方法 iDRAC9の場合 Integrated Dell Remote A…

Ubuntu 18.04 serverでちょろっとWebブラウザを開きたいとき

やりたいこと Webブラウザでとあるファイルをダウンロードしたい cURLやwgetではなく、Webブラウザからでないとダウンロードできないものがたまにある 例えば、VMware vSphere Hypervisor (ESXi) ISOファイルをダウンロードするには、WebブラウザでMy VMware…

Ubuntuでtracerouteとinetutils-tracerouteのどちらをインストールすればいいか?

Ubuntuでtracerouteコマンドを実行しようとすると、 $ traceroute Command 'traceroute' not found, but can be installed with: sudo apt install inetutils-traceroute sudo apt install traceroute このようにパッケージのインストールを求められるのだが…

iptables-persistent / netfilter-persistent を理解する

Ubuntu 18.04.2でNetfilterルールを自動でリストアするために、iptables-persistent / netfilter-persistentを使うことにした。 その内部処理を調べたのでまとめてみる。 動作確認環境 Ubuntu 18.04.2 $ dpkg -l | grep persistent ii iptables-persistent 1…

Netfilterルールを保存したりリストアしたりする方法はいろいろある

Netfilter自体には、ルールを保存したりリストアしたりする機能は用意されていない。 せっかく慣れないiptablesコマンドを勉強しながら頑張って設定しても、OS再起動後は全部消えてしまっているのである。 したがって、ルールの保存・リストアを行う仕組みが…

Ubuntu 18.04にしたらcurlで"sslv3 alert handshake failure"エラーが出るようになった

環境 Ubuntu 18.04.2 curl 7.58.0 OpenSSL 1.1.0g 事象 とあるダイナミックDNSサービスを長年愛用している。 自宅のIPアドレスが変更されたらcurlコマンドを叩き、そのダイナミックDNSサービスに通知する仕組みにしていた。 ところが、Ubuntu 18.04に上げて…

/etc/cloud/cloud.cfg.d/hoge.cfg に書いた ssh_pwauth が効かない

やりたいこと SSHのパスワード認証方式を禁止したい。それをcloud-initで設定したい。 前提条件 機種: Raspberry Pi 2 Model B OSイメージ: ubuntu-18.04.2-preinstalled-server-armhf+raspi2.img.xz https://wiki.ubuntu.com/ARM/RaspberryPi からダウンロ…

Raspberry Piの初期設定をcloud-initで半自動化する

2年くらい稼働させっぱなしにしていたRasPiのSDカードが故障した。 もはやどんな設定を入れていたか忘れたし、次回壊れたときに構築し直すのも面倒くさい。 そこで、今流行りのInfrastructure as Codeってやつを試してみることにした。 細かい設定はAnsible…

Oxidizedのconfigファイルの場所を勘違いした

Oxidizedとは ここを見て ytti/oxidized: configuration backup software (IOS, JunOS) - silly attempt at rancid 勘違い 環境変数 OXIDIZED_HOME を設定した場合、 ${OXIDIZED_HOME}/config をconfigファイルとして読み込んでくれると思っていたが、それは…