ホーム » コンピュータ (ページ 19)

コンピュータ」カテゴリーアーカイブ

システム

最近の投稿

アーカイブ

カテゴリー

LEGOでスマホスタンド

{CAPTION}

homebridge-gsh 不調が回復

最近、homebridge の機能を Google home から制御するためのプラグイン homebridge-gsh が動かない状態であった。ひとまず “Siri” 中心にしてたけど、回復。

google アシスタントで、homebridge との接続を解除して、デバイスをすべて削除した後、再度接続を行う。この時、google アシスタントのデバイスの登録画面などが随分雰囲気が変わっていたので、Google Home, アシスタントの機能が更新されて、homebrige と通信ができなくなっていたのが原因かもしれない。

Siriのシーン登録

Google Homeでhomebridge制御が動かないときがある

最近、Google home mini からRaspberry Pi の homebridge の制御で「homebridgeが見つかりません」の返答が返ってくることが増えた。
どうも、homebridge-gsh では裏で無料のクラウドサービスが使われているけど、たぶんこのクラウドの反応が悪いのかもしれない。(追記:google home の機能変更が原因?)

しかし、Home Pod mini を使い始めてるし、”Hey Siri”で頼むのに切り替えればいい。ただ、”Ok google, 行ってきます”で、テレビと部屋の照明を消す機能の、Siri での設定に悩んだ。

iOS ホームのシーンの登録

“Google Home”アプリでは、複数機能の連動ではルーティン機能を使っていたので、”Google Home” の iOS版ということで、”ショートカット機能”ばかり調べてた。でも、こういう設定は、iOS ではホームアプリのシーン機能だった。ただ、”Google Home”であれば、「いってきます」で、テレビを消した後に「天気」を喋らせたりと、機器制御以外の処理も連動できたけど、iOS “ホーム” では機器制御しかできない。

{CAPTION}  {CAPTION}

ntpが正しく動かなくなった

ntp サーバが正しく動かない

NTPが正しく動いていない。nagios で、check_ntp_peer コマンドにて、NTP サーバの動作を検証しているが、

# /usr/lib/nagios/plugins/check_ntp_peer -H 127.0.0.1
NTP CRITICAL: Server not synchronized, Offset unknown|offset=0.000000s;60.000000;120.000000;

にて、同期がとれていないとのメッセージ。いろいろと、/etc/ntp.conf を触ってみるが、うまく動いていない。

ntp プロセスを確認すると、

# ps ax | grep ntp
9999 ? Ssl  0:00 /usr/sbin/ntpd -p /var/run/ntpd.pid -g -c /run/ntp.conf.dhcp -u 122:130

となっていて、設定ファイル /etc/ntp.conf を参照せずに、/run/ntp.conf.dhcp を読み込んでいる。この設定ファイルでは、dhclient で DHCP にて IP アドレスをもらう際に、ntp-server が指定されていたら、それを使うための設定らしい。じゃあ、この /run/ntp.conf.dhcp を作っているのはだれ?となる。

NetworkManager が原因

色々と確認したら、NetworkManager が原因のようだ。NetworkManager が管理しているデバイスだと、上記の余計な設定をしてくれるらしい。時期的には、Debian/bookworm に切り替えて、普通に upgrade したら、NetworkManager の機能が増えたんだろう。

eth0 を NetworkManager の管理から外すと無事に動き出す

ということで、NetworkManager が eth0 の設定を触らないようにさせる。

((( /etc/systemd/network/eth0.network で固定アドレスを割振る設定 )))
[Match]
Name=eth0
[Network]
Address=192.168.xx.2/24
Gateway=192.168.xx.1

((( /etc/NetworkManager/conf.d/99-unmanaged-devices.conf )))
[keyfile]
unmanaged-devices=interface-name:eth0

((( NetworkMangaerを再起動 )))
# systemctl reload NetworkManager

((( NetworkManagerの確認 )))
# nmcli device status 
DEVICE  TYPE      STATE     CONNECTION
eth0    ethernet  管理無し  --
lo      loopback  管理無し  --

((( ntpの起動状態を確認 )))
# ps ax | grep ntp
9999 ? Ssl  0:00 /usr/sbin/ntpd -p /var/run/ntpd.pid -g -u 122:130

ということで、無事に eth0 が NetworkManager の管理から外れ、ntp が正しい設定ファイル /etc/ntp.conf を読むようになった。

でも、”ps ax” を試すと、”dhclient eth0″ が動いている。どうも、IPアドレスの設定がおかしい。以前に、nmcli コマンドを試したときのゴミが残っているのかな。設定情報のファイルを編集。

(((  /etc/NetworkManager/system-connections/eth0.nmconnection )))
[connection]
id=static        <-- ここが eth0 と書かれていた。ここは、dhcp か static になるべき。
uuid=xxxxxxxxxxx
type=ethernet
interface-name=eth0
:

CCS811は、CO2センサーではない

TVで「最近コロナ対策のCO2センサーは怪しいものが多い」との番組をやってた。

んで、我が家でも安い空気品質センサーということで、Raspberry-PiにCCS811というセンサーをつけてモニタリングしている。んで、CO2値もモニタしてるけど、この番組でも「安い家庭用センサーばらしたけど、CO2センサーといいながらVOC(揮発性有機ガス)センサーしかないじゃん、これじゃ正しくCO2値は測れない。確かめたかったら、消毒用のアルコールをを近づけたら…」という解説だった。

ということで、やってみた。みごとにアルコールに反応して、CO2値が激増。(つまりCO2増えてないはずなのに反応するのは「CO2センサーという意味では、まがい物」)

まあ、CCS811の説明みても、TVOC値からCO2を推定している。”eCO2“/二酸化炭素相当のセンサー。測定値も かといって、部屋に有機系ガスが溜まっているから、換気したほうがいいよ…ということには違いない。ということで、このCCS811の測定結果は、CO2値というよりは換気の目安だね。

munin-2.0.67-2 で lock ファイルのトラブル

Debian の更新をかけたら、munin-2.0.67-2 となってから、以下のメールが定時処理で届く。

Creating lock /var/run/munin/munin-update.lock failed: Permission denied
 at /usr/share/perl5/Munin/Master/Update.pm line 127.

検索をすると、どうも 2.0.67-2 で出たトラブルで、対応中みたい。当分、様子見かな。
munin は、止めたくないしなぁ…
でも、5分毎の警告メールはうざいなぁ…

スマートプラグ何を買う?

iPhoneの充電って、満充電状態が長いとバッテリー劣化との話もあるし、スマートプラグでACアダプタのUSBの充電プラグを制御させることを考えた。

んで、ACアダプタのスマートプラグを買おうと思ったんだけど、安いのはAmazon とかかな。どうせ、Raspberry-Pi の homebridge で制御することになるだろうし、どこでもいいかもしれないんだけど、SwitchBot.comのスイッチや、LinkJapanのeRemote3やら、ごちゃ混ぜなので、スマホ版のアプリがばらばら。そうなると、LinkJapanさんの、ePlug かなぁ。Amazonさんよりちょっと高い。

ダイソーの100均LANケーブル

以前、パソコンまわりのネットワークの配線で、100均で買ったLANケーブル(1m)を使っている。100円だし、TV, CATVチューナ, ゲーム機といった、10 or 100BASE の速度だし、十分。

んで、追加で買おうと100均巡りをしたけど、全然みつからない。仕方がないので、ダイソーオンラインで発注。ただし1個(100円)単位で通販できるわけもなく、10個単位。アマゾンで同じようなケーブル探しても5本組で買っても、ダイソー10個送料付きと同じような値段かな。

ケーブルを入れ替えた後のHUBは、すっきり。

 

{CAPTION}

FireWall用のブラックリスト自動生成

自宅サーバでは、FireWall を動かしているけど、アクセス履歴を見ると色々と怪しい接続が気になる。ある程度は LOG を確認して、FireWall の拒否リストを整理していたけど、自動化してみた。

FireWall では、主要なのは iptables で管理し、巨大な拒否リストになりそうなものは、ipset で拒否リストを作り、iptables から、その ipset を参照するようにしている。

GEOIPDENY により国ごと拒否

  • 国ごと拒否リスト make-geoip-deny.pl
    RIR の IPアドレス範囲と国ドメインのデータベースをダウンロードして、拒否リストを生成。かなり巨大なリストが作られる。
((更新状況を確認))
[root]# ./make-geoip-deny.pl -d | head
/usr/bin/wget -q -O - 'ftp://ftp.arin.net/pub/stats/arin/delegated-arin-extended-latest'
/usr/bin/wget -q -O - 'ftp://ftp.ripe.net/pub/stats/ripencc/delegated-ripencc-extended-latest'
/usr/bin/wget -q -O - 'ftp://ftp.apnic.net/pub/stats/apnic/delegated-apnic-extended-latest'
/usr/bin/wget -q -O - 'ftp://ftp.lacnic.net/pub/stats/lacnic/delegated-lacnic-extended-latest'
/usr/bin/wget -q -O - 'ftp://ftp.afrinic.net/pub/stats/afrinic/delegated-afrinic-extended-latest'
ipset count before : 65658
ipset count merge : 26038
ipset count after : 39526

((FireWallの更新))
[root]# systemctl stop ferm && systemctl start ferm

25か国の接続を拒否しているけど、単純に RIR の情報だと 65658件のアドレスブロック。25か国のアドレスブロックで隣接しているアドレスブロックをマージして、26038件に減らせた。しかし、サブネットマスクに指定できるアドレスブロックに変換して、最終的に 39526 行の拒否リストが出来上がっている。

RIRのデータのダウンロードに時間がかかり30秒ほどかかるし、国に割り振られる IPv4 アドレスなんて変化も少ないので、気が向いた時に更新かな。

SMTPDENY と SSHDENY

  • SMTPの拒否リスト make-smtp-deny.pl
    SASL login を試す攻撃が多いので、/var/log/mail.log の履歴から、拒否リストを生成。
  • SSHの拒否リスト make-ssh-deny.pl
    ssh は、/etc/hosts.allow で、自分が使うネットワーク以外は接続を拒否して ssh 自身は既に守っているけど、接続を試すような相手はヤバイので ssh 以外すべての接続を拒否させる。/var/log/messages の履歴から生成。

怪しい接続をしてくる IP アドレスを抽出し、クラス C でグループ化して、数十回の接続履歴のあるものを抜粋して、拒否リストを生成している。それぞれ 30 行ほどの拒否リストとなった。

この拒否リストは、生成も1秒程度で生成できるので、cron.weekly にて更新。

 

homebridge用にnode.jsの更新

家電制御用に動かしている Raspberry Pi の homebridge のために、node.js と npm の更新。

ついでに、最新の node.js を 16.3 にアップグレードしてみた。

$ sudo systemctl stop homebridge
$ sudo curl -fsSL https://deb.nodesource.com/setup_16.x | bash -
$ sudo systemctl stop homebridge
$ sudo apt-get install -y nodejs
$ sudo systemctl start homebridge
$ sudo npm update
$ sudo node -v
16.3.0
$ sudo npm -v
7.15.1

SwitchBot の制御が動かなくなり、プラグインを別の物に切り替え。

Google 検索

My Google   Yahoo

Microsoft

ファンサイト