apt / yum / dnf で Proxy を利用する
Linux はディストリビューションによってパッケージ管理用のコマンドが apt、yum、dnf と異なります。 各々の場合で Proxy を利用する場合の設定ファイルは異なります。
Linux はディストリビューションによってパッケージ管理用のコマンドが apt、yum、dnf と異なります。 各々の場合で Proxy を利用する場合の設定ファイルは異なります。
AWS Workspaces で Windows 以外にも Amazon Linux2 のバンドルを利用することが出来ます。 この Amazon Linux2 に限った話ではありませんが、Linux 上から Windows へ RDP したい場合には remmina という RDP クライアントを利用することが出来ます。 Amazon Linux2 の場合、以下を実行することで remmina をインストールすることが出来ます。
以前に Python + responder + gunicorn + systemd + Nginx で Web アプリを起動する というメモを書きました。 Apache2 + responder に置き換えた内容で改めてメモしておきます。 Python アプリケーションは venv 環境の中に作成します。
responder でアプリケーションを書いても AttributeError: module 'typesystem' has no attribute 'SchemaDefinitions'
というエラーになる場合があります。 例えば以下のように pip で gunicorn や responder をインストールせずにインストールし、アプリケーションを実行した場合にエラーになるかも知れません。
Python で venv 環境を作成した際、該当ディレクトリに移動する毎に source venv/bin/activate
する必要があります。 direnv を使うことでこれを自動化することが出来ます。 direnv は現時点で Release v2.31.0 が最新ですがバイナリが登録されていない為、今回は Release v2.30.3 を利用します。 尚、今回は Ubuntu 20.04LTS 上でテストしました。
batfish でルーティングや ACL のテストを実施する際、ルータやファイアウォールとは別にダミーのホストを利用したい場合があります。 こういった場合は .json ファイルを用意することで簡単にダミーホストを用意出来ます。 Modeling hosts に .json ファイルのフォーマットが書かれています。
Ubuntu でファイルシステムへの IO (Read/Write) を監視するには inotify
を使います。 今回は Ubuntu 20.04LTS で検証を行いました。
Linux でパッケージのアップデート時、カーネルが自動更新されないように固定するにはディストリビューション毎に以下のようにします。
batfish を利用する際、「コンフィグは変更せずに特定インターフェイスをダウン状態とみなす」為には interface_blacklist
というファイルを使います。 今回はこの interface_blacklist
の使い方をメモしておきます。
batfish に同梱されているサンプルスクリプトや、インターネット上で見かけるスクリプト例は「スナップショットの有無に関わらず、スナップショットを生成する」ものが多いと思います ("例" なので、そういうものなのだと思います)。 仮に何度もスクリプトを実行し直す場合は、「コンフィグに変化が無いのであれば、毎回のスナップショット再作成は不要」という場合もあると思います。 そういった場合の実装例をメモしておきます。
例として Question には ipOwners を利用していますが、どの Question を利用してもスナップショット初期化部分の考え方は同じです。