ほっしーの技術ネタ備忘録

技術ネタの備忘録です。基本的に私が忘れないためのものです。他の人の役にも立つといいなぁ。

ezjail の simple イメージの拡張

毎回ググってる気がするので。 $ sudo ezjail-admin stop ${NAME} $ sudo truncate -c -s +100M /usr/jails/${NAME}.img $ sudo mdconfig -a -t vnode -f /usr/jails/${NAME}.img md2 $ sudo growfs /dev/md2 $ sudo mdconfig -d -u 2 $ sudo ezjail-admin s…

jail の devfs ルールを名前で指定したい

もうメンテが止まって長いこと経っている ezjail の例ですが。 他の管理ツールを使っていても、環境変数から jail の設定ファイルを錬成してるなら応用できそうな気はします。 dhcpd を jail 内で動かしたい時とか、 /dev から隠してたデバイスを見せるため…

14.0-R に上げたときのメモ

14.0-R の(私的)差分ピックアップ もうすぐ 14.2-R が出ようとしてる時期ですが、当時のメモを発掘したので投稿しておきますね! 個人的には、おうちサーバのダウンタイムを可能な限り短くできる方法を模索しているので、 その手順の1つとして一応記録に…

ディスク内総検索その2(高速化してみた)

FreeBSD システムのディスク全体から特定の記述を探したい場合、ありますよね。 例えば IPv6 プレフィックスが変わったので全体の設定を変えなきゃいけない時とか。どこに設定したっけ…?みたいな。 そんな時はざっくり全体から検索してしまいましょう。 $ s…

自宅ネットワークが不安定だった話

自宅のネットワークがめちゃくちゃ不安定で、まともに仕事ができなかったので真面目に調査して対応した話。 結論から言うと、NTT からレンタルの PR-600KI がアレという所に着地したんですけどね。 ただそこにたどり着くまでにいろいろなトラップにハマって…

一定時間での ping 結果を見たいとき

こういうスクリプトを実行するとたまに悲しいことになります。 #!/bin/sh -x ping 192.168.0.1 & sleep 1.005 kill -INT %1 FreeBSD だと sleep の引数は小数点以下も有効なので。 ミリ秒の桁で発生頻度が変わりますが、うまく調整するとこうなります。 + sl…

tcpdump するたびにログがでてうるさい

ネットワークトラブルなどのとき、FreeBSD で tcpdump を使うとログに kernel: lo0: promiscuous mode enabled kernel: lo0: promiscuous mode disabled とか出てきてうるさいです。 重要なログを見落とすやろ…… という訳で、そんな時は /boot/loader.conf …

daemon コマンドでコンソールログを残す方法

以前の記事で、 daemon コマンドを使うとシェルスクリプトとかを簡単に デーモンとして常時稼働させられるねーこれ便利ねーみたいな話を書きました。 認証エラーログを見て ipfw で ban するやつ - ほっしーの技術ネタ備忘録 そのデーモン化したいプログラム…

screen のロック機能を殺す

みなさん screen 使ってますか? 私は未だに使ってますが、世の中的には tmux が主流なんでしょうかね。 こいつにはなぜかスクリーンロックって機能があって、 ワンタッチで画面(コンソールだけど)をパスワードロックできます。 まぁ、イマドキな環境なら…

openntpd で時刻合わせ

ついうっかり設定を忘れていたものがあったので、設定の手順をメモ。 まずは openntpd をインストールします。 $ sudo pkg install openntpd で、 /usr/local/etc/ntpd.conf を編集。 servers ntp.nict.jp もうこの1行だけでいいんじゃないかな。 次は /etc…

.xz ファイルの破損チェック

FreeBSD だと最近は度々目にする .xz ファイル。 圧縮ファイル形式なのだけれども、そのものずばり、 xz コマンドでいろいろ扱える。 今回はファイルの破損チェックのために $ xz -t hoge.tar.xz 壊れてると、なんかメッセージが出てくる。 今回はただの備忘…

nc でデータを送りたいとき

まず、受け側は ipfw のポートを開けます。 $ sudo ipfw add 10060 pass tcp from any to xxx.xxx.xxx.xxx 8080 setup keep-state で、 nc で LISTEN しますが、引数がポイント。 $ nc -l -N -d 8080 送る側からも nc で送ります。 $ echo "ABC" | nc xxx.xx…

nc で IPv6 で Listen する

メモ書き。 nc で Listen したいとき。 $ nc -l 8080 だと IPv4 でしか Listen してくれません。 実際、 $ netstat -an | grep 8080 tcp4 0 0 *.8080 *.* LISTEN という感じで tcp4 で Listen してます。 IPv6 でやりたいときは $ nc -6 -l 8080 $ netstat -…

ファイルの重複行検知

UNIX シェルでテキストファイルをばばーっと処理してる時に、 データ数となりがちな行数を数えるコマンドは良く知られてると思います。 $ wc -l file.txt さて、これで表示されるのはあくまで行数なので、 データ数がこれより多いことはあり得ませんが、少な…

システムファイルの自動バックアップの話

最近お世話になることがあったので。FreeBSD は、cron から起動される periodic で、 いくつかシステムにとって重要なデータがバックアップされています。/var/backups にいろいろ置いてあって、aliases だとか、 起動パーティションのデータとか、gpart の…

なんか fdc0 がエラー吐いてるが…?

という訳で、たまにシステムアップデートして再起動すると、 なんか起動時のログで fdc0 がエラーを吐いている訳です。 fdc0: <Enhanced floppy controller> at port 0x3f0-0x3f5,0x3f7 irq 6 drq 2 on isa0 fdc0: non-PNP ISA device will be removed from GENERIC in FreeBSD 14. fdc0:</enhanced>…

PPPoE ルータの機能も持ってきてしまった話

普通に Buffalo とか NEC の民生用ルータを使ってたんだけれども、 いい加減いろいろ嫌気がさしてきたので。 まぁ、おうちサーバのメンテをするとインターネットに繋がらなくなる問題があるので、 今まで妥協して民生用ルータを使っていたけれども、最近は I…

geom 管理領域を(無理やり)消す

gmirror とか glabel の管理情報は、該当するオブジェクトの最終セクタに書いてあります。 なので、grom_mirror.so を読み込まない状態で、dd とかを使って最終セクタをつぶすと、 そのオブジェクトは gmirror への参加をしなくなったり、glabel データがな…

ポート 33060 ってなんぞ??

netstat を眺めてたら覚えのないポートがあいてたので調べてみた。 なんか知らんけど MySQL の Extended Interface とかいうものらしい。 なんぞ?? という訳で、 my.cnf に以下の行を加えて再起動。 mysqlx=OFF これで消えました。なんだったんだ…?? 今…

ezjail の終了に 10 秒かかる問題を直した

なんか、いつ頃からか。 ある ezjail の仮想マシンを終了するときに 10 秒待たされることに気づいたのでした。 そう、前回の記事と同時に発症してたのです。まぁ、終了時にしか stop しなければ……と思ってましたが、やっぱり不便なのです。 そこでいろいろ調…

ezjail の終了時に umount できない問題を直した

いつの頃からか、手動で ezjail-admin stop とするとエラーがでる。 どうやら Device is busy とのこと。 mount | grep /mnt/jails とかやってみると、ルートを umount できてない様子。 まぁ、どうせシャットダウン時しかやらなければいいし……とか思って放…

MAP-E の設定を永続化した話

ここまでのあらすじ。 FreeBSD 13.1-R で MAP-E 対応が降りてきたので、いろいろ試して仮組みながら動くようになったのがこの辺。 13.1-R で MAP-E ルータを作ってみる - ほっしーの技術ネタ備忘録 で、その後いろいろ不具合を直した話がこっち。 使い物にな…

認証エラーログを見て ipfw で ban するやつ

せっかく(10年くらい前に)作ったのでここで公開しておく。 ログを監視して IP アドレスごとバンするやつ こういうスクリプトを root で走らせておく。 #!/bin/sh detect() { ip=`echo "$1" | egrep -o -e "\[([[:digit:]]+\.){3}[[:digit:]]+\]" | sed -e …

ssh での接続がなんか遅い問題の対策

なんか知らんけど、前々からさくら VPS にある FreeBSD マシンへ SSH するときに限って、 なんか接続に時間がかかる。 ssh って打ってから公開鍵のパスフレーズを聞かれるまでに体感で 5 秒くらい待たされる。 でも2回目以降は他の場所にあるマシンと同じく…

令和にもなって MTU とか MSS とかを思い出した日

ある日から突然届くようになった daily メールの一部分。 Mail in local queue: -Queue ID- --Size-- ----Arrival Time---- -Sender/Recipient------- 4E0851D6401 2276 --- J** 18 22:39:25 ****@*******.com (conversation with mx01.******.jp[**.**.**.*…

使い物になる NAT with pf を作る

前回までで FreeBSD の pf で MAP-E ルータとしてかろうじて動く設定になりました。 でもなんかいろいろおかしくて、ちゃんと通信できなかったので今度こそ。 一番の問題。Google が開けない。 tcpdump をいろいろ眺めた結果、おかしな部分は分かった。 gif0…

13.1-R で MAP-E ルータを作ってみる

前回は pf の map-e-portset で NAT した場合のこちら側ポートをいい感じに設定してもらいました。 今回はもっとちゃんとルータっぽくするために、宛先のルーティングをいい感じにします。 MAP-E 経由の宛先だけルーティングテーブルに書くのはしんどいから…

13.1-R で MAP-E を試してみる

そろそろ 13.0-R のサポートが切れてしまうので、しれっとアップデートしました。 さて。そういうことなので pf の NAT に map-e-portset 対応が増えているのです。 という訳で試してみました。 まずは前回のおさらい 前回の記事を見ながら gif0 を設定。 う…

MAP-E を試してみる

どうやら、うちにつないでいる v6 プラスだと、MAP-E での IPv4 接続が 無料でついてくるらしい。しかも、PPPoE と比べて速度が出る(IPv6 相当の速度になる)という噂。 ……という訳で、それを試してみたという話。 hoshizuki.hateblo.jp この時と真逆のこと…

コマンドラインで雑にパスワードを生成する

$ cat /dev/random | env LC_ALL=C tr -dc "[:alnum:]+-/^" | head -c 10 | awk 1 作業をしていて、適当にワンタイムパスワードが必要になったりした場合に。 ググったら似たようなテクニックがたくさん見つかったので、 アプローチはいろいろあるみたいです…