サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
衆院選
hnakamur.github.io
2024-07-22 はじめに nginxとそのフォークのfreenginxはAgeレスポンスヘッダーの値を一切更新しないという挙動になっていましたが、freenginxではそれが改善されたという話です。 ただし、コミットはされましたがリリースはまだです。おそらく次のリリースに含まれると思います。 過去 2012年に#146 (Age header for proxy_http_version 1.1) – nginxというイシューは作られていましたが、対応されないままになっていました。 今回の経緯 2024-06-14 nginx-develメーリングリストにパッチを投げてみました。 が、出来が悪かったようで[PATCH 0 of 3] Update Age response header correctly、コメントがつきませんでした。 2024-06-20 freenginx-dev
出力ファイル名の日付部分は出力した際の日時になっていました。 基本4情報 総務省|マイナンバー制度とマイナンバーカード|マイナンバーカード に以下の説明があります。 「署名用電子証明書」は、氏名、住所、生年月日、性別の4情報が記載され、e-Taxの確定申告など電子文書を送信する際に使用できます。 openssl で 署名用電子証明書の SAN (Subject Alternative Name) を見てみると以下のようになっていました。 $ openssl x509 -noout -ext subjectAltName -in CertUserSign*.cer X509v3 Subject Alternative Name: othername: 1.2.392.200149.8.5.5.1::【氏名】, othername: 1.2.392.200149.8.5.5.4::【生年月日X
2022-08-06 はじめに 以下の記事を参考にGPGのプライマリーキーとサブキーを作成してGitのコミットの署名をやってみたメモです。 脱線多めですが、自分用の記録ということで。 GnuPG - ArchWiki GPGで自分用の秘密鍵を1つに統一する · JoeMPhilips ED25519のGPGキーを生成してコミットに署名する - Weblog by shuuji3 GitのコミットにGnuPGで署名する - Qiita LXD でオフラインのコンテナを作成して起動 How to switch off networking for a container? - LXD - Linux Containers Forum によると eth0 をコンテナから削除すればオフラインで実行できるとのことなので、これでやってみました。 通常はコンテナの作成と起動は lxc launch サブ
2020-02-22 はじめに PSReadLine で PowerShell を bash のキーバインドにする - Qiita と PowerShellのキーバインドをEmacs風にする【PSReadLine】 - メモ.org を参考に設定したメモです。 インストール手順 PowerShell/PSReadLine: A bash inspired readline implementation for PowerShell と PowerShellGet のインストール - PowerShell | Microsoft Docs PowerShell を管理者権限で開き、以下のコマンドで PowerShellGet をインストールします。 Install-Module -Name PowerShellGet 次に PSReadLine をインストールします。 Install-Mod
2021-10-31 はじめに OpenSSLのSSL_sendfileとパッチを当てたnginxでLinuxのkTLSを試してみた · hnakamur’s blog を書いてから1年半経って状況が変わっていたので再度試してみました。 9日前に SSL: SSL_sendfile() support with kernel TLS. · nginx/nginx@1fc61b7 で Linux の kernel TLS を使って sendfile するコードが nginx に入っていました。 コミットメッセージによると enable-tls オプションを有効にした OpenSSL 3.0 が必要とのことです。 検証環境 $ cat /etc/os-release | grep ^VERSION= VERSION="20.04.3 LTS (Focal Fossa)" $ uname -r
2021-02-11 2021-06-26 追記 2021-05-07 に A New AWS SDK for Rust – Alpha Launch | AWS Developer Tools Blog という記事が出て、今後は awslabs/aws-sdk-rust に移行していくそうです。 今日確認したところでは rusoto/rusoto: AWS SDK for Rust の README に Rusoto is in maintenance mode. と書かれていました。 一方、 awslabs/aws-sdk-rust のほうは Please Note: The SDK is currently released as an alpha and is intended strictly for feedback purposes only. Do not use this
2020-12-10 2022-05-17 追記:別のスクリプトを書きました https://github.com/hnakamur/setup-my-ubuntu-desktop/blob/main/my-apt-add-repository 事前に gpg, coreutils パッケージがインストールされている必要があります。 使用例 curl -sS 'https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x532a4a026239fc3baeb7869c60d954a11017341e' | my-apt-key-add - hnakamur-ubuntu-nginx-jammy 2021-07-21 追記:このスクリプトは使わないでください 第675回 apt-keyはなぜ廃止予定となったのか:Ubuntu Weekly
2020-08-09 はじめに サーバーのメトリックを確認するのに sysstat の sar コマンドが便利ですが、 ksar でグラフで見るほうがさらに便利です。 ということで手順をメモしておきます。 sysstat のインストールと設定 sysstat のインストール Ubuntu では以下のように sysstat パッケージをインストールします。 1分単位に記録するように設定変更 パッケージに含まれる sysstat の cron 用の設定ファイル /etc/cron.d/sysstat は以下のように10分ごとにメトリックを記録するようになっています。 # The first element of the path is a directory where the debian-sa1 # script is located PATH=/usr/lib/sysstat:/usr/
2020-08-07 はじめに 初めてこの話題を聞いたのは umeda.go #2 で発表してきた - kawaken’s blog でした(スライドは Goの時刻に関するテスト)。 その節は良いお話をありがとうございました。 この時点ではGoのアプリケーションのビルド時にGoの標準ライブラリーのコードを差し替えるのは別の用途で試して便利だったものの、時刻に関するテストは自分では試してませんでした。 その後、自分でも試そうと思い、紹介されていたライブラリー以外のライブラリーも調べてみたのでメモです。 Mocking time and testing event loops in Go [Dmitry Frank] の記事がとても詳しくて素晴らしいです。 こちらのサンプルコードをベースにしたもので検証してみました。 time.Now() だけならライブラリーを使わない選択もある Goの時刻に
すると apt show lxd で以下のように出力され、lxd の deb パッケージはダミーで snap でインストールするように書かれていました。 $ apt show lxd Package: lxd Version: 1:0.9 Priority: optional Section: universe/admin Origin: Ubuntu Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com> Bugs: https://bugs.launchpad.net/ubuntu/+filebug Installed-Size: 79.9 kB Pre-Depends: debconf, snapd Depends: debconf (>= 0.5) | debconf-2.0 Breaks: lxd
2020-05-29 はじめに wsl-ssh-agentでWindows Subsystem for LinuxからWindowsのssh-agentを使う設定手順 · hnakamur’s blog は快適だったのですが WSL2 では使えないことが分かりました。 wsl-ssh-agent の WSL 2 compatibility に回避策が書いてあるのを見つけ Use an ssh-agent in WSL with your ssh setup from windows 10 も読んで設定してみたので手順をメモしておきます。 KeePass と KeeAgent プラグインをセットアップ KeePass Password Safe はパスワードマネージャーですが、 KeeAgent – lechnology.com プラグインを入れると experimental ではありますが
wsl-ssh-agentでWindows Subsystem for LinuxからWindowsのssh-agentを使う設定手順 2020-03-06 はじめに Windows 10 に OpenSSH クライアントをインストール · hnakamur’s blog で Windows の ssh-agent を使いだしてから Windows Subsystem for Linux (以下WSLと略)からも使いたいと思うようになりました。 調べてみると wsl-ssh-agent で出来るそうなので設定手順をメモ。 設定手順 wsl-ssh-agent のダウンロードと解凍 Releases · rupor-github/wsl-ssh-agent から最新版の wsl-ssh-agent.7z をダウンロードします。 解凍するには ダウンロード | 7-Zip から 7-Zip を
2020-05-25 はじめに macOS で GlobalProtect - Palo Alto Networks でVPNに接続した際に Multipass で作成したHypervisor.frameworkベースのVMとそのVM上のLXDコンテナからの通信をNATにする方法を調べたのでメモです。 Troubleshooting networking on macOS | Multipass documentation の “Potential workaround for VPN conflicts” に書いてありました。 GlobalProtect のネットワークインターフェース名を ifconfig で確認 GlobalProtect でVPNに接続した状態で、以下のコマンドを実行して GlobalProtect のネットワークインターフェース名を確認します。 私の環境では gp
2020-04-07 はじめに io_uring について以下の素晴らしい入門記事を知ったので試してみたメモです。 io_uring By Example: An Article Series - Unixism io_uring by example: Part 1 - Introduction - Unixism io_uring By Example: Part 2 - Queuing multiple requests - Unixism io_uring By Example: Part 3 - A Web Server with io_uring - Unixism サンプルソースコード shuveb/io_uring-by-example: A companion repository for the io_uring by Example article series RE
2020-03-21 はじめに XMLSecでの証明書検証のコードリーディング · hnakamur’s blog の結果を元に hnakamur/nginx-lua-saml-service-provider で SAML レスポンスを検証する処理を外部コマンド呼び出し方式から LuaJIT FFI でのライブラリ関数呼び出し方式に書き換えました。 Add response:verify_response_memory method by hnakamur · Pull Request #4 · hnakamur/nginx-lua-saml-service-provider 今回の作業で LuaJIT FFI でモジュールを書く際の知見が少し溜まったのでメモしておきます。とは言ってもガーベジコレクションといった深いところは触ってないので対象外です。 背景: なぜ C 言語で Lua 用
2020-03-05 はじめに 職場で tmuxで複数サーバの同時オペレーション – NaviPlus Engineers’ Blog のスクリプトを使わせて頂いているのですが、リモートワークに伴って他のユーザーの tmux セッションを閲覧したいという話になりました。 当初 tmux をソケットファイルを使うという単純な改変をしてみたのですが、スクリプト内で tmux セッションを作っているので、作業者がこのスクリプトを実行するたびに閲覧者が接続する必要がありました。 そこで閲覧者が一度接続したら、作業者はずっとそのセッション内で作業を継続し、複数サーバー同時オペレーションに切り替えてまた戻ってと行ったり来たりできるようにスクリプトを改変してみました。まだ練習で一度試してみただけですが、うまく動いているようなのでメモしておきます。 sudo 権限設定で他のユーザーの tmux ソケットの
PostgreSQLのデータベースを強制削除する¶ 作成日 2019-01-04 試した環境 Ubuntu 18.04 LTS, postgresql-11 11.1-1.pgdg18.04+1 sudo -iu postgres dropdb データベース名 で削除しようとしたら以下のように他のユーザによってアクセス中のため削除できないというエラーメッセージが表示されるケースがありました。 $ sudo -iu postgres dropdb zabbix dropdb: database removal failed: ERROR: database "zabbix" is being accessed by other users DETAIL: There are 4 other sessions using the database.
2017-05-13 はじめに EdgeRouter Lite (ERLite-3)をCLI (Command Line Interface)で設定しているうちにようやく基本が理解できたのでメモです。 EdgeOSとは EdgeOS 日本語Wiki [非公式] の「EdgeOS とは」と「VyOS・Vyatta との違い」の説明がわかりやすかったです。 CLIの設定の基本操作 コマンド > コマンド一覧 - EdgeOS 日本語Wiki [非公式] の「CLI の基本操作」がとっかかりとしては良かったです。 公式のEdgeOS User Guideのダウンロード Ubiquiti NetworksのERLite-3用のファームウェアとドキュメントのダウンロードページ から “EdgeOS(TM) User Guide” がダウンロードできました。 .. image:: {attach}/i
2018-07-05 はじめに nginxとshibbolethでSAML2のシングルサインオンを試してみた で使ったCentOS7のLXDコンテナのイメージをエクスポートし、別のマシンにコピーしてインポートするのを試してみたのでメモです。 LXD 3.2で試しました。 Backup the container and install it on another server - LXD - Linux Containers Forum の手順ほぼそのままでOKでした。 リモートのLXDにアクセスできる場合は、このコメントのように lxc copy コマンド一発でコピーできるのですが、今回はエクスポートしてインポートする方式を試しました。 エクスポート まずスナップショットを作成します。 以下のコマンドを CONTAINER_NAME を実際の環境に合わせて変更して実行します。 lxc s
2018-07-31 はじめに nginxとshibbolethでSAML2のシングルサインオンを試してみた では Service Provider – Shibboleth Consortium を使いましたが、汎用的な分、設定方法のドキュメント NativeSPConfiguration - Shibboleth 2 - Shibboleth Wiki を見ても圧倒される感がありました (なお、ページ上部の囲みを見ると Shibboleth SP は先日 3.x がリリースされて 2.x はEOLになったそうです)。 そこで、 nginx lua で SAML の Service Provider (以下 SP と略)を書いてみたところ、動くものが出来たので公開して説明を書いておきます。 hnakamur/nginx-lua-saml-service-provider ただし、この S
2017-09-02 2022-05-17 追記:代替スクリプトを書きました https://github.com/hnakamur/setup-my-ubuntu-desktop/blob/main/my-apt-add-repository 事前に curl, gpg, coreutils パッケージがインストールされている必要があります。 使用例 my-apt-add-repository ppa:hnakamur/nginx GPG公開鍵の登録は 第675回 apt-keyはなぜ廃止予定となったのか:Ubuntu Weekly Recipe|gihyo.jp … 技術評論社 で解説されている手順に沿っています。 はじめに PPAのページにはPPAを追加するには add-apt-respository コマンドを使うように書かれています。 例えば gcc-7 などを配布しているPPA
2017-07-05 はじめに git-buildpackage を使ってカスタムdebパッケージをビルドして Personal Package Archives : Ubuntu (PPA) にアップロードする手順のメモです。 自分で試行錯誤してまとめた手順なので、他のニーズには合わなかったり、改善の余地があるかもしれません。 UbuntuのLTS (Long Time Support)版を使うにあたって、古いdebパッケージをアップデートしてPPAにアップデートするのが主な用途です。 ということで以下では Ubuntu 16.04 (xenial) で提供されている luajit 2.0.4 を2.0.5にアップデートしてPPAにアップロードする例で説明します。 まず読む参考文献 debパッケージ作成についての文書はたくさんあるのですが、 Debian 開発者向けマニュアル が概要を把
2018-03-23 はじめに 個人的にLinuxデスクトップの機運が高まってきたので、Ubuntu 17.10のデスクトップ環境を試してみました。 例によって自分用メモです。 FlutterでiOSアプリをビルドするのを試してみたりするのにmacOSは引き続き必要なのでデュアルブート 構成にします。 Antergosを試そうかとも思ったのですが、自宅サーバでUbuntuを使っていてPPAで独自debパッケージを作る のにも慣れてきていることもあり、まずはUbuntuのデスクトップ環境を試すことにしました。 1ヶ月後にはUbuntu 18.04 LTSが出るので、そちらのベータとかdaily buildを試すのも良さそうかとも 思ったのですが、 Linuxデスクトップを使うのは約10年ぶりなのでまずは安定版で慣れようということで Ubuntu 17.10にしました。 今回試したのは Mac
2018-01-30 はじめに Allocation Efficiency in High-Performance Go Services · Segment Blog という記事を読みました。素晴らしいのでぜひ一読をお勧めします。 この記事は自分の理解と実際に試してみた結果のメモです。 一番のポイントは go build -gcflags '-m' のようにオプションを指定してビルドすればコードのどの箇所でヒープ割り当てが発生したかを確認できるということです。 pprof や go test -benchmem でもヒープ割り当ての発生回数は確認できますが、上の方法ではコードのどこ(何行目の何カラム目)でヒープ割り当てが発生したかとなぜ発生したかの理由を確認できます。 元記事の内容メモ 冒頭にあげた記事を読んで私が理解した内容のメモです。 元記事の全ての内容を書いているわけでないので、元
2017-09-18 はじめに 私はChromeとFirefox用に以下の拡張機能を書いて使っています。 FormatLink-Chrome FormatLink-Firefox 今回UIを改変する際についでに async と await を使って書くように変更してみたのでメモです。 async/await が使える Firefox と Chrome のバージョン Can I use… Support tables for HTML5, CSS3, etc で “Showing all” をクリックして確認すると Chrome はバージョン 55 、 Firefox はバージョン 52 から async/await をサポートしているとのことです。 Promise を返す API を async/await で呼び出す async function - JavaScript | MDN に
2016-05-07 参考記事 公式ドキュメントのLinux Containers - LXD - はじめに - コマンドラインによくまとまっているのですが、より詳細には The LXD 2.0 Story (Prologue) | Ubuntu Insights にリストアップされている記事がわかりやすかったです。 Ubuntu 16.04 serverでのLXDの初期セットアップ Ubuntu 16.04 serverならLXDはインストール済みなので、 apt-get install lxd と newgrp lxd は不要でした。 LXCではコンテナ一覧表示は lxc-ls、コンテナ作成は lxc-create のように別々のコマンドになっていましたが、 LXDではそれぞれ lxc list, lxc launch と lxc コマンドのサブコマンドになっています。 また lxd
2017-05-13 はじめに 会社の同僚と話していて、私もそろそろIPv6に触れる機会を作っておかないとまずいなと思い、IIJmioひかりとIPoEとひかり電話を契約してDS-Liteというのを試してみることにしました。 ネットワークは経験不足で苦手な意識の強い私ですが、少しずつでも経験を積んで多少は理解できるようになりたいという思いもあります。 で、先人たちのブログ記事に助けられながら、なんとか設定できたので一旦メモです。 Edgerouter Lite-3でDS-Lite - Qiita が、NTT東日本と西日本という違い以外は同じ構成なので大いに参考にさせていただきました。 実は当初は、パスワードなど環境に応じて異なる部分の値だけ書き換えて流せばよいかと甘く考えていました。が、実際やってみて、細かく分けて1歩1歩設定を進めていくほうが良いというか、そうでないと私には無理だということ
2017-05-28 はじめに IIJmioひかりとEdgeRouter-LiteでDS-Liteを試してみた の後、多少調整して一旦自分の希望通りの動きで落ち着いた状態になっていましたが、ブログに書いておかないと忘れそうなのでメモです。 IPv6の静的アドレスとルーティング設定 Edgerouter Lite-3でDS-Lite - Qiita では という設定でルータのWAN側のIPv6アドレスをホームゲートウェイからもらってルーティングも自動設定するようになっていました。 これは楽な反面、ルータ起動後10分程度しないとIPv6アドレスがつかないので、その間はIPv4 PPPoEにしないとインターネットに繋がりません。 ルータの再起動は約2分半かかるので、そこからさらに約10分かかるというのは中々辛い感じでした。 が、会社の同僚に教えてもらいつつ試行錯誤したところ、以下のように静的にア
2017-07-08 はじめに サーバプロセスを無停止で実行ファイルを更新し再起動できるグレースフルリスタートは 非常に便利な仕組みです。 今までは Go言語でGraceful Restartをする - Shogo’s Blog と一連の記事を参考に lestrrat/go-server-starter: Go port of start_server utility (Server::Starter) を使わせていただいていました。 ありがとうございます! 今回自分好みの構成にするためにサーバ起動のGoライブラリを自作してみたのでメモです。 検証環境は以下の通りです。 $ go version go version go1.9beta2 linux/amd64 $ grep ^VERSION= /etc/os-release VERSION="16.04.2 LTS (Xenial Xe
次のページ
このページを最初にブックマークしてみませんか?
『hnakamur.github.io』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く