それマグで!

知識はカップより、マグでゆっくり頂きます。 takuya_1stのブログ

習慣に早くから配慮した者は、 おそらく人生の実りも大きい。

linux

dig コマンドの結果をYAMLで取得して再利用しやすくする

dig コマンドの結果をYAMLで取得して再利用しやすくする dig t.co @8.8.8.8 +yaml dig コマンドは、結果をYAMLで返してくれる。 JSONもあれば嬉しかったけど、dig はyaml形式をサポートしたみたい。python や npm でいい感じに変換すればいいよね。 実際の例…

digコマンドでプロトコルを指定する(HTTPS/TLS/TCP)

dig コマンドでプロトコルを指定する。 dig コマンドは UDP/53以外にもTCP / TLS(DoT) / HTTPS (DoH ) を指定できる。 dig g.co @dns.google +https dig gco @dns.google +tls dig g.co @dns.google +tcp それぞれ、プロトコルを+オプションで付与してあげる…

linuxのnftables(nft)でルータ機能を作る

linuxで単純なルータ機能を作る マスカレードやDNAT/SNATをして、ルータ機能を作ってみる。 先のiptablesと比較してnft でどうなるのかを見たいので、試した。 ネットワーク構成図 以下のようなネットワーク構成を作る 実際に作った構成 ipコマンドには netn…

linuxのiptablesでルータを作る

iptablesでルータを作る Ubuntu Linuxでiptablesを使って、ネットワークの練習をする。WEBサイトに潤沢な検索結果があってとくにメモを残してない。 いつもiptablesを検索し直してて非効率なので、ここらで一旦まとめ直しておく。 今回は、lxc ホストと ip n…

dig コマンドでDoH/DoTする。書換え検出する(本当に8.8.8.8と通信しているか)

dig コマンドはDoHに対応しています。 dns over https で dig を使えます。 dig t.co @dns.google +https dig コマンドは DoTに対応しています。 dns over tls で dig を使えます。 dig t.co @dns.google +tls 活用例: DNSがDNATで捻じ曲げられててないかど…

ip コマンドで rule を使う。(ポリシールーティング)

ip コマンドで rule を使う。 テーブル100を作って、指定のマークが有るパケットだけを、別のルーティングテーブルへ掛ける iptablesでパケットにマークング(フラグ)設定しておいて、マーク済みパケット対象のルーティングテーブルを作る。通称がポリシ…

WindowsのバックアップをSambaへ作成する

Windowsバックアップをどうやって作る? Windowsのバックアップは、フルバックアップをHDDに保存することができます。 なぜか、Windows7バックアップという名前になっていますが、Windowsのフルバックアップは従来からコントロール・パネルに用意されている…

Airdrop的にブラウザでファイルを送信したい。Snapdropの実行

AirDrop的にファイルを送受信したい。 Windows-iOSや iOS-Android間で、ファイルを送受信したい。 SnapDropというWebアプリケーションがある。 MacとWindowsでファイルのやり取りがとても不便なので、ちょっとしたテキストを送受信するのに便利だと思う。 公…

stunnel を使ってTLS通信を肩代わりする

stunnel を使ってTLS通信にする。 stunnel を使うと、TLS非対応な通信をTLS化して暗号化通信に昇格(?)にして、盗聴・改竄・詐称を防止することができる。 stunnel 利用例 stunnel をつかうと、主に3つ(2+1)のパターンを使って通信ができる。 TLS非…

lxc の storage / btrfs で 圧縮を有効にする

lxc ディスクの圧縮 以前も試したのだが、Raspiを構成し直すにあたり、もう一度やってみた。 lxd のストレージ・プールbtrfsに透過圧縮(zstd)を有効にする。 - それマグで! 圧縮を有効にする lxc storage set default btrfs.mount_options compress=zstd …

ip route のOn-Linkがよくわからないので、ちょっと調べた。

on-linkしてるのにルートが作られない。、なぜだろう。 ip route での onlink について。 onlink は on-link (強制的にルートを入れる)と意味です。 似たようなものに、scope link があって勘違いしてました。 いくつかの記事から見てみます。 https://for…

openvpn access server の管理画面をcurlで書き換える。

OpenVPN の Access Server のAPIを使って設定を書き換えようと思ったが、APIを探し出したり、管理コマンドをSSH経由で実行するのもめんどくさい。 curl でwebUIを叩いてみることにした。 WEB画面のSSL証明書を更新する例。 DOMAIN=ovpn.example.tld CERT_PAT…

EFIでマルチブートを作ると区別できない。(全部Ubuntuで区別つかん)

EFI パーティションにデュアルブートを作りました。 EFIパーティションには、OSごとにブートを設定を書くことができます。 EFIパーティションを使うように grub をインストールする。 sudo grub-install --target=x86_64-efi 細かく指定すると grub-install …

btrfsを使う前に調査。雰囲気で使ってるbtrfsをよく知ろう。

btrfs の練習 僕も、雰囲気でbtrfsを使ってる。 サブボリューム スナップショット マウント スクラブ ( scrub ) デフラグ バックアップ(send/receive) スパニング(LVM/raid) リサイズ 重複排除 lxc storage btrfsって多機能なんだぜ?でも、LVM+ext4で事足…

grubメニューからLinux起動の手順をみて、Grubのコマンドを扱う方法を調べる。

GrubメニューでLinuxをコマンドから起動する。 めったに使わないし、そこまで重要でもない。ので、いつも忘れてググってる。最近は古の記事が削除されて、検索に苦労するのでメモとしてまとめる。 コマンドライン GRUBメニューからキー c を押すとGRUBのコマ…

ipコマンドでMAC アドレスを変更する

MAC Addressを変更したい 一時的にMacAddressを変更したいとき。 INF=enp1s0f0 sudo ip link set dev $INF down sudo ip link set dev $INF address 6c:4b:90:d8:c3:39 sudo ip link set dev $INF up 一時的に変更できたら問題解決ってことが多いと思う。 ip…

sgdisk で末尾から指定サイズを確保する。

末尾から確保する sgdisk で末尾から5Gを確保するには次のようにする。 sudo sgdisk -n ":0:-5G" /dev/sda 先頭から確保する sgdisk -n "0::+512M" /dev/sda 応用:末尾に5GBを残す 末尾に指定サイズを残すには。 sudo sgdisk -n "0::-5G" /dev/sda 比較 "…

atコマンドでタイマーを実験する(date コマンドと組み合わせ)

atq コマンドで、スケジュール・アラーム(目覚まし)機能が作れる。 指定時間のコマンド実行予約が、at コマンドを使って作れる。 at "'19:45 03.05.23'" -f '/usr/bin/whoami' 書式は次のとおりである。 at "時:分 日.月.年" -f コマンド 日付の指定がめん…

パスワードを確認する。(今のパスワード合ってるか

linuxの「パスワード」がわからないとき パスワードの変更コマンドで確認する。 ~$ passwd 生成してみる。 sudo cat /etc/shadow | grep takuya takuya:$y$j9T$txxxxxPxxx.xkxx:19249:0:99999:7::: パスワードのハッシュ値をみて、同じ値を生成してもいいけ…

nftables移行のためnftコマンドとnftablesを調べたときのメモ。

nftablesへの移行 openwrt をアップグレードしたら、fw3 が fw4 にアップグレードされて、nftablesがデフォルトになった。 そして、nftablesを使わないルールがあると、注意・警告が出るようになった。とても煩わしいし、ルールの確認のために見る箇所が増え…

nftablesのv4-v4のsnat/masqueradeとiptablesの比較

nftables linux のiptablesはそのままのコマンドで動作するのですが。 iptablesはnftablesのサブセットのような扱いになっています。 iptablesと比較しながら、超基本的な書式を学ぶことにした。 nftables nftables で masquerade する。 最初にテーブル追加…

GNU screen でマウスホイールでスクロールしたい。履歴になるの不便。

GNU Screen でスクロールを有効にしたい。 ~/.screenrc ## ターミナルでマウスホイールしてカレントのログを登る termcapinfo xterm* ti@:te@ ## xterm以外のクライアント設定になってるなら termcapinfo term* ti@:te@ いまのGNU Screen のデフォルトではコ…

losetup でパーティションが認識されない。

losetup でパーティションが認識されない。 ddイメージファイル(raw)をパーティション検出を有効にしてループバックする。 sudo losetup -P /dev/loop10 ubuntu.raw -P をつけたらうまく行った。 なるほどね。でもdebian man には書いてなかった・・・ --hel…

resize2fs で進捗表示

resize2fs で進捗表示したい resize2fs -p ... man に載ってた. -p resize2fs の各操作について、作業完了分のパーセントを表すバーを表示する。 これによりユーザーはプログラムの動作を追うことができる。 進捗表示 実際に 進捗を表示してみた例。プログレ…

qcow2 をリサイズ(縮小)しメンテナンスやバックアップを行いやすくする。

qcow2 をリサイズ(縮小)しメンテナンスやバックアップを行いやすくする。 qcow2 を必要以上にに巨大サイズで確保したので、とっても扱いにくい。qcow2 を小さくしたい。 今回やった手法は、ダイレクトにパーティションを書き換える方法だ。 ダイレクトにパ…

lxd のストレージ・プールbtrfsに透過圧縮(zstd)を有効にする。

btrfs で透過圧縮ができる。 btrfs はCowで透過圧縮をサポートしている。書き込み量が少なければSSDの寿命にも優しいだろう。 lxd のストレージにbtrfs を採用したのだが、透過圧縮はオフになっている。どうせなら圧縮しておこう。 現在の設定の確認 現在の…

tar から名前を指定して取り出す。

tar から指定ファイルの取り出し tar xvf archive.tar home/takuya/.config 名前の指定 tar xvf archive.tar なまえ フォルダを指定すると、カレントディレクトリにフォルダが作成されて取り出される。 名前の取り出し 名前の一覧を見るには、 tar tv archiv…

rclone でSFTPに接続できない。

rclone で sftpに接続しようとしたらエラーになる。 NewFs: couldn't connect SSH: ssh: handshake failed: ssh: unable to authenticate, 原因がわからずパニックになるが、sshはRSA鍵をデフォルトで無効化したことを思い出した。多分これだろうと予想を立…

プロセス管理でプロセスグループをkillする

プロセスグループをKILLしたい。 プロセスからfork したプロセスから forkしたプロセス、子プロセス・孫プロセスを除去したい。 プロセスグループの確認 ps -ejH で PGIDとSIDを確認する ps -ejH | PID PGID SID TTY TIME CMD 19666 19666 19666 ? 00:00:00 …

openWrtのFirewallにホットプラグする。

OpenWrtはホットプラグで「〇〇したとき」に任意のスクリプトを実行できる。 interface(iface)で、接続時に〇〇するとかできる。 Firewallが追加されたときに、なにかしたいと思ったが、公式サイトに記述がない。 イベントを調べた。 mkdir /etc/hotplug.d/f…