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

Linux」カテゴリーアーカイブ

システム

最近の投稿

アーカイブ

カテゴリー

homebridgeのメモ

iOS 10 に切り替えると、"HomeKit" のアイコンが増える。 家庭内のライトやテレビといった機器のON/OFF制御などが できる機能。

で、調べてみたけど、海外ではそれなりの機器が出ている ようだけど、AmazonやAppleで調べてみても、 電球型のHomeKit対応ライトと言った程度で、便利さを 感じるようなものが出ていない。

我が家では、Tira2 という赤外線リモコンで、家電制御など を使っているので、Siri に「テレビをつけて」をやってみたいと 考えてしまう。

調べてみると、"homebridge"という互換ソフトが出ているみたい。 node.js をベースにしたソフトらしい。

ということで、ひとまず node.js とかを入れてみた。

((node.jsのインストール))
$ sudo aptitude install nodejs npm
$ sudo ln -sf /usr/bin/nodejs /usr/bin/node
((homebridgeのインストール))
$ sudo npm install -g homebridge
((コマンドラインベースの命令を呼び出すモジュール))
$ sudo npm install -g homebridge-cmd
or
$ sudo npm install -g homebridge-cmdswitch2

でも、node.js のことをさっぱり解っていないので、 あとの作業用に、ココまでをメモ。

https://datahotel.io/archives/725

BoWに開発環境とLaTeXをインストール

Bash on Windows を使ってインストールをしていたら、 開発環境が入っていない。Visual Studio があるけど、 gcc とかは入れておこう。

開発環境

 (( パッケージ更新 ))
$ sudo aptitude upgrade ; sudo aptitude safe-upgrade
 (( 開発環境 ))
$ sudo aptitude install gcc g++ make automake bison flex
$ sudo aptitude install perl ruby python

LaTeX環境

今までは LaTeX を使いたいときは、データをDropboxにおいて、 Linux サーバに入って platex + divpdfmx を行い、 Windows 環境で PDF の確認を行っていた。 しかし、Dropbox の同期のタイムラグがちょっと不便だった。

BoW のパッケージを見ていたら、普通に texlive があるので、 cjk-latex をインストール。

 (( latex ))
$ sudo aptitude install cjk-latex texlive-lang-cjk texlive-binaries

これで、Windows 環境だけで LaTeX のコンパイルができるようになった。 Windows 環境用の LaTeX は出てはいるけど、セッティングが面倒だった。 でも Ubuntu が動くんだから、一発でインストール完了。

スマホ向けサイトのスコア付け71点(^^;

スマホ向けのサイトになっているかをテストするサービス。

https://testmysite.thinkwithgoogle.com/

1606050609_894x501.PNG

debianでletsencrypt.shを使ってみた

無料で、SSL鍵を利用できる let's encrypt というソフトが Debian でも使えるようなので、 試してみました。まずは、必要なソフトのインストール。

# aptitude install letsencrypt.sh letsencrypt.sh-apache2

基本は /etc/letsencrypt.sh/config.sh を修正してもいいが、 /etc/letsencrypt.sh/conf.d の中に *.sh の拡張子で設定を保存すると 書いてあるので、 連絡用のメールアドレスなどの登録情報は、この中に保存。

(( /etc/letsencrypt.sh/conf.d/contact_mail.sh ))
CONTACT_EMAIL=連絡用メールアドレス

letsencrypt.sh のデータは、/var/lib/letsencrypt.sh/ に保存され、 取得するドメインは、以下のファイルに記載しておく。

(( /var/lib/letsencrypt.sh/domains.txt ))
ドメイン
# mkdir /var/lib/letsencrypt.sh/certs
# /usr/bin/letsencrypt.sh -c
(出力)
# INFO: Using main config file /etc/letsencrypt.sh/config.sh
# INFO: Using additional config file
/etc/letsencrypt.sh/conf.d/contact_mail.sh
+ Generating account key...
+ Registering account key with letsencrypt...
Processing ドメイン
+ Signing domains...
+ Creating new directory /var/lib/letsencrypt.sh/certs/ドメイン ...
+ Generating private key...
+ Generating signing request...
:

できあがった、SSL の情報を Apache に設定する。

(( /etc/apache2/sites-available/default-ssl.conf ))
SSLCertificateFile /var/lib/letsencrypt.sh/certs/ドメイン/cert.pem
SSLCertificateKeyFile /var/lib/letsencrypt.sh/certs/ドメイン/privkey.pem
SSLCertificateChainFile /var/lib/letsencrypt.sh/certs/ドメイン/chain.pem
# /etc/init.d/apache2 restart
1606021701_622x264.png

あとは定期的に更新

SSL鍵は、流石に無償だし、有効期限が短い。 定期的に更新が必要。今回は一ヶ月毎に更新。

(( /etc/cron.d/update-letsencrypt ))
#m h D	M W user command
0  3 1 * * root test -x /usr/bin/letsencrypt.sh && /usr/bin/letsencrypt.sh -c

movabletype-opensourceのCGI制限

自宅のBLOGは、movabletype-opensourceを使っているけど、 一応、サポート切れとなっているため、脆弱性攻撃を受ける可能性もある。 ただ、攻撃といっても、CGI の呼び出し経由だし、コメントやトラックバックも SPAMが多くて使っていないので、記事編集は自宅内のみと割り切って、 アクセス制限を加えてみる。

Alias /mt-static /usr/share/movabletype/static
<Directory /usr/lib/cgi-bin/movabletype>
# 初期設定の時だけ
<Files mt-wizard.cgi>
<IfVersion >= 2.3>
Require all denied
</IfVersion>
<IfVersion < 2.3>
Deny from all
</IfVersion>
</Files>
# コメントトラックバック
<FilesMatch "mt-(comments|tb)\.cgi$">
Require ip 127.0.0.1 192.168.0.0/16
</FilesMatch>
# データ連携
<FilesMatch "mt-(data-api|feed|xmlrpc|atom)\.cgi$">
Require ip 127.0.0.1 192.168.0.0/16
</FilesMatch>
# 検索機能は制限せず
#<FilesMatch "mt-(ftsearch|search)\.cgi$">
# ### Require ip 127.0.0.1 192.168.0.0/16
#</FilesMatch>
# その他
<FilesMatch "mt-(check|testbg|upgrade)\.cgi$">
Require ip 127.0.0.1 192.168.0.0/16
</FilesMatch>
# 基本機能
<FilesMatch "mt\.cgi$">
Require ip 127.0.0.1 192.168.0.0/16
</FilesMatch>
</Directory>

gcalcliが動かなくなる

仕事の予定管理や家族の予定の把握には、Google Calendar をすごく 活用しているけど、その予定をミニ掲示板に表示する機能が動かなくなっていた。 中で使っている、gcalcli が"Missing module – cannot import name run"と いうメッセージで動かなくなっている。

調べてみると、ライブラリモジュール"oauth2client"を1.4.12以下にしろとか出てくるけど、 "pip install oauth2client==1.4.12"を実行すると、他のモジュールを更新しろとか でてきて思うように動いてくれない。

モジュールのバージョン調整だけで動かしたかったけど、 https://github.com/insanum/gcalcli/issues/229に記載されているように、 手動パッチをあてて動かした。

$ sudo pip install oauth2client --upgrade
$ sudo pip install gcalcli --upgrade
この後、手動パッチ

HTTP/2の有効化

ネットの記事で、Chrome の SPDY サポート打ち切りなどが 記載されていて、HTTP/2 への移行が進んでいるらしい。

ということで、自宅サーバがどうだっけ?ということで調べると、 HTTP/2 は a2enmod されていないみたい。

 (( HTTP/2のモジュールの有効化 ))
$ sudo a2enmod http2
$ sudo systemctl restart apache2.service

トップページの reload をかけてみたけど、速くなった気がする。 自宅トップページは、リンク集的によく使うサービスのアイコンを並べてあるけど、 こういう小さいデータは効果がでるはず。
# 気のせいかもしれんけどぉ〜

ifupdown2 のトラブル

ソフトの更新とかかけていて、久々に reboot をかけたら、 パソコンなどが、ネットワークにつながらずトラブル。

確認すると、dhcpd サーバが動いていない。設定ファイルなどを みるけど、特に問題もない。 おかしいおかしいと改めて 確認していると、上流ルータへの ping が通らないことも判明。

理由が分からず、色々動かしていると、eth0 が起動していない(link upしていない)。 ifup eth0 を手作業で実行して、設定をさらに調べていると、 ping 127.0.0.1 さえも通らず、localhost さえ link up していない。

こうなると、/etc/init.d/networking がおかしい…と思うけど、 このご時世は、systemd になっている。なんだかよくわかんないけど、 systemctl -a とかを実行したら、 networking が inactive dead って 表示されている。 そういえば、ひと月ほど前、 ifupdown2 なんていう パッケージに更新した記憶があるし、 どうもこれが原因。

# aptitude install ifupdown

を実行して、再起動したら、すべてがようやく元通り。

Windows10のSNMP監視が止まってる

自宅では、パソコンの稼働状況をモニタリングするために、 WindowsのSNMP機能を ON にして、サーバ側から munin を 使って、ディスク容量やネットワーク通信の監視をさせていた。

しかし、最近モニタリングのグラフが表示されていないことに 気づいた。どうも 2015/10月中旬あたりから。

Windows10 のパッチが影響したと思うのだが、なんだろう。

munin の snmp のチェックをかけるけど、返答がない。

nagios3からicingaに移行

自宅サーバは Debian/testing で運用しているけど、 "aptitude safe-upgrade"しても、大量の保留。

試しに"aptitude full-upgrade"を実行すると、nagios3 が perl-5.20 に 依存していて、 perl 関連のライブラリがこぞって保留となっている。

icingaに切り替え

nagios4 とかがあるかと思って、"aptitude search nagios"を実行すると、 pnp4nagios なるものがひっかかり、インストールをしようとすると、 "icinga" を入れようとする。モニタリングは icinga が担当しているようで、 設定ファイルもほとんど nagios と同じ。 pnp4nagios は、表示を担当するようだけど、 内部で使う mysql とかの設定が悪いのか、 動かない。 ひとまず、icinga でも状況は確認できるので、pnp4nagios はやめておく。

自宅では、室内の温度センサーが一定気温を越えたらメールさせるとか、 アホなルータが間違ってDHCPを起動させていないとか、独自チェックも させているので、 手間取るかとおもったが、無事移行ができた。

external commandが実行できない

nagios3をセッティングした時とまるっきり同じ症状だけど、監視の一時停止などを行う、 インタフェースが動かない。 設定がオフになっているのと、 処理を起動するためのパイプが入っているディレクトリの アクセス権限の問題なので、設定を変更。 この手の設定は、nagios3 を icinga に読み替えるだけなのは、nagios の fork だから、そのまんま。

(( /etc/icinga/icinga.cfg ))
check_external_commands=1
$ sudo dpkg-statoverride --update --add nagios www-data 2710 /var/lib/icinga/rw
$ sudo dpkg-statoverride --update --add nagios nagios 751 /var/lib/icinga

Google 検索

My Google   Yahoo

Microsoft

ファンサイト