designetwork

ネットワークを軸としたIT技術メモ

Node.jsでSJIS文字列をSHA1ハッシュする

日本国内のシステムでは、いまだに文字コードとしてSJIS(シフトJIS, Shift JIS)が使われているものがある。電文の送受信にあたり、整合性の確認のためにハッシュ値を付与する場合、暗号化ライブラリで文字コードを指定してハッシュを生成する必要がある。 参…

Node.jsでSJIS文字列を3DES暗号化する

日本国内のシステムでは、いまだに文字コードとしてSJIS(シフトJIS, Shift JIS)が使われているものがある。電文の送受信にあたり、暗号化が必要となる場合は暗号化ライブラリで文字コードを指定して暗号化・復号する必要がある。 Node.jsでSJIS文字列を3DES…

Microsoft Store AnyConnectアプリを併用して複数AnyConnect VPN接続する

Cisco AnyConnectは基本的にひとつの接続先にのみVPN接続できる。複数の環境にVPN接続する必要がある場合は、都度VPN接続先を切り替えなければならいない。 しかし、Ciscoから提供されるAnyConnect Secure Mobility Clientに加え、Microsoft Storeで提供され…

DMARCレポートを分析・監視する (無料枠・個人利用 - PowerDMARC, EasyDMARC)

独自のメールドメインを運用する中で、昨今のEmotetの脅威を踏まえて、加害者とならないようにセキュリティの考慮が重要になる。SPF (Sender Policy Framework), DKIM (DomainKeys identified mail) などメールセキュリティの機能は各種あり、今回はDMARC (D…

Speedtest CLI & Elastic Stackで回線速度を可視化・監視する

Ookla Speedtest CLIにより定期的にスピードテストを実行して、結果ログをFilebeat→Logstash→Elasticsearchと格納して、Kibanaで可視化する。インターネットが遅いときはPraeco (ElastAlert)でSlack通知することもできるようになる。 Kibanaダッシュボード S…

個人事業主がSBペイメントサービスの決済代行サービスをshop by経由で契約する

EC

ECサイトの運用において、決済代行サービスは切っても切れない関係にある。決済代行サービスを使用することで、クレジッドカード決済、コンビニ決済、キャリア決済、PayPayなど、各種決済手段の導入・管理が容易になる。 SBペイメントサービスがshop by経由…

会社員が個人ネットショップを開設するために準備したこと(バーチャルオフィス・050電話番号・メールドメイン)

EC

簡単にネットショップを開設できるサービスは多くリリースされている。Word PressやEC Cubeを使用して自前で構築するとこもできるが、SaaS形態のBASEやshop byなどであれば、サーバの準備なくネットショップを開設できる。 開設自体は簡単なのだが、販売開始…

Dell OptimizerによりZoom通信にDSCP46(EF)が付与されてQoS優先対象になる

WebミーティングツールのZoomで、音声が途切れる・遅れる、画面共有が遅い、「インターネット接続が不安定です」になることが多く、原因を調査した。原因は環境によるので一概に言えないが、基本的にネットワークの輻輳を回避して、QoSによる優先制御と帯域…

Postfix on EC2で独自ドメイン宛メールをAmazon SESでGmailに転送・統合する

独自ドメインのメールアドレスを開設する際に、メールボックスは既存の自身のGmailに統合したく、EC2公開サーバにPostfixを構築してAmazon SES経由で転送できるようにした。ドメイン認証など、期待する構成とするために各種設定が必要だった。 なお、AWSでは…

Docker対応PBRで複数NICのLinuxで必ず受信IFから応答(非対称ルーティング回避)するよう設定する

運用NICを持つLinuxサーバなどでは、非対称ルーティングを回避するためにPBR(Policy-Based Routing: ポリシーベースルーティング)を設定する場合がある。Dockerコンテナ宛通信もPBR対象とするためには、単純なソースIFでのPBRだけでは制御できないため、fwma…

BIG-IP iRuleでReferer・CookieベースでPoolを振り分ける

Webサーバの負荷分散をするBIG-IPで、同一Virtual Server (VIP)で受けるHTTPリクエストを、Refererヘッダによって分散先のPoolを切り替えられるようにする。 モチベーション 動作確認環境 Virtual Server・Pool設定 iRule Referer振り分け Cookie Insert Coo…

Logstash週次indexはYYYY.wwではなくxxxx.wwを使う

LogstashからElasticsearchへログ等の時系列データを送信する際に、インデックス数、シャード数の考慮により週次でのindexローテーションとすることがある。 単純にYYYY.MM.ddからYYYY.wwとするだけでは、年またぎのタイミングで想定外のindexが作成されるこ…

VPN経由RDP「接続品質の評価中」・SSHコマンド応答なしをMTU調整で解決する

自宅からのVPN経由サーバリモート操作に不具合があり、いろいろ試した結果PCのMTU調整により解消したため共有。また、同問題で通信が遅いサイトも動作が改善された。 環境情報 リモート操作不具合 リモートデスクトップ接続(RDP) SSH 原因 MTU調整 最適MTU…

OpenSSL SECLEVELによるwrong signature typeエラーの概要

OpenSSLのSECLEVEL設定により以下のようなエラーが発生する場合がある。キャプチャ・確認ポイント等をまとめる。 curl curl: (35) error:1414D172:SSL routines:tls12_check_peer_sigalg:wrong signature type Nginx R-Proxy 2020/09/29 22:25:40 [crit] 379…

BIG-IP Pool, Node状態とiRule LB::statusの対応 (up/down/session_enabled/session_disabled)

F5 BIG-IP iRuleで LB::status によりSorryページへの振り分け等を実装する際の、Pool, Node状態と LB::status の対応メモ。 検証バージョン Pool, Node状態と LB::status の対応 session_enabled は割愛 show ltm pool <pool> の結果 参考 LB::statusの公式情報 B</pool>…

ソフトバンク光WiFiがブチブチ切れるのはIPv6が原因?

ソフトバンク光のルーター(BBユニット)について、遅い、切れるなどの記事をよく見かける。解決策として、バッファローのWi-Fiルーターを多段で接続し、BBユニットのWi-Fi(無線機能)を無効化することをあげているケースもあるが、私の環境では設定を変えるだ…

Helm repo indexしたパッケージ更新で既存のtimestampを書き換えないようにする

helm repo index .してGitHub Pagesで公開している自作Helmチャートの更新運用時に、既存パッケージ(旧バージョン)のタイムスタンプが更新されてしまう事象が発生したので対処メモ。 QuickFix 単純にhelm repo index .すると既存パッケージのタイムスタンプ…

Praeco (ElastAlert GUI) を Helm で Kubernetes にインストールする (Beta)

以前より本ブログで取り上げている Praeco (ElastAlert GUI) の Helm Chart を作成した。 Praecoについてはこちら参照 designetwork.daichi703n.com Betaリリース repo 対応Elasticsearchバージョン Installation Screen Shots with BOSH まとめ - Praeco (E…

Praeco + ElastAlert2.0 + ES7.x 構成の不具合対応方法

(2020/04/24 id:naoyukisano1 様からの情報を追記) こちらの記事で紹介したPraecoだが、Elasticsearchのバージョンアップに伴いElastAlertもバージョンが上がり、2020/2月時点ではElastAlertのバグで正常に動作しない状態となっている。 designetwork.daichi…

BOSH-Lite Directorの証明書一式を更新する

こちらの記事で構築したBOSH-Lite環境だが、1年が経過し生成された証明書の期限が切れた。 designetwork.daichi703n.com 監視の仕組みを作っておらず、BOSH環境が停止してしまっていたため、証明書を更新(再生成)し復旧させた。 エラー内容 証明書更新 更新…

CI/CD for CI/CDs Dockerイメージの継続的最新化 with ConcourseCI

CI/CD Advent Calendar 2019 の 7日目 qiita.com 数日前に書いた記事のQiita向け調整版です。 AWS CLI on Alpine Docker Image 自動更新ビルド with Concourse - designetwork ConcourseでのAWS関連作業用コンテナとして、AWS CLIのDocker Imageをビルドする…

AWS CLI on Alpine Docker Image 自動更新ビルド with Concourse

ConcourseでのAWS関連作業用コンテナとして、AWS CLIのDocker Imageをビルドする。ビルドにはConcourse CIを使用することで継続的に更新し続ける仕組みを作る。 最終的な成果物としてのDocker Imageはこちら daichi703n/awscli 後から再調査したところ、こち…

MySQL(RDS, Aurora)のSSL証明書有効期限を確認する

Amazon AWS RDSのCA証明書が更新されることを受けて、MySQLのSSL証明書の有効期限の確認方法を検証した。 動作確認は以下のインスタンスで実施した。 Amazon RDS (MariaDB, 10.1.31) Amazon Aurora (Aurora MySQL, 5.7.mysql_aurora.2.04.3) opensslコマンド…

Pivotal.IO 2019 登壇しました 「決済システム内製化に向けたプラットフォーム構築 - PCF・BOSHによるオブザーバブルプラットフォーム」

Pivotal.IO 2019に登壇させていただきました。 pivotal.omniattend.com 資料をアップロードしましたのでご参照ください。 決済システム内製化に向けたプラットフォーム構築 - PCF・BOSHによるオブザーバブルプラットフォーム 決済システム内製化に向けたプラ…

Error: `sass-loader` requires `node-sass` >=4. エラー発生時の対処方法のひとつ

※発生原因・根本対策について詳細確認できていませんので、各自の判断で適用ください。 Node.jsで以下のエラーが発生した際の対処方法。前提構成・詳細は割愛するが、暫定対処として記載しておく。 Error: `sass-loader` requires `node-sass` >=4. Please i…

Praeco (ElastAlert GUI)でElasticsearchログアラートする

Elasticsearchのデータを元にアラート通知できるElastAlertは、X-Pack(Watcher Alert)を導入しない環境において、ログ監視を実装する有用な方法として広く使用されている。 しかし、ElastAlertはコマンド・設定ファイル(YAML)ベースでの動作のみをサポートし…

ElastiFlowでNetFlow可視化する

以前、こちらの記事にまとめた通りオープンソース(OSS)のNetFlowコレクタを調査した。 designetwork.daichi703n.com 改めて調査したところ、ElastiFlowという、Elasticsearch + Logstash + Kibana (ELKスタック) ベースのNetFlowコレクタ、ビジュアライザを…

iptablesのNATコネクション状態を確認する(AWS NATインスタンスなど)

AWS NATインスタンスなど、LinuxでiptablesによりNATマシンを作成することがある。 ルータ、FWなどのNW機器の操作経験があるネットワークエンジニアであれば、コネクション状態を確認したいケースが多いと思う。 netstat-natコマンドを使用してshow xlateの…

Kibanaが参照するElasticsearchを冗長化する(v6.6.0-)

Kibana 6.6.0 から標準で参照するElasticsearchを複数設定できるようになった。設定方法と動作を確認する。 Release Note Kibana->Elasticsearch冗長化方式 設定項目 設定と動作確認 Kibana, Elasticsearch状態 Kibana自体の冗長化 BOSH環境へのデプロイ ま…

JMeter Dashboard Report グラフの粒度を変更する

Apache JMeterはWebシステム等のシナリオ試験、性能試験、負荷試験等で広く使用されている。テスト結果からレポート・ダッシュボードを生成することもでき、結果報告書等にも利用できる。 標準で出力されるグラフは1分単位で詳細が把握できないため、グラフ…