2025年10月5日

RaspberryPiにおけるNTPサーバを使った時間同期設定の実証


下瀬美術館屋上から見る大野瀬戸
下瀬美術館屋上から見る大野瀬戸     


先に「RaspberryPiとUnboundを使ったローカルDNSキャッシュサーバの構築例」を記述しましたが、運用中に動作が重くなる事象が発生しました。

早速、ログ(ここでは/var/log/unbound/unbound.log)を調査したところ,「pool.ntp.org」というメッセージが大量に出力し,時刻サーバとの同期が上手く取れていない事が分かりました。そのため,RaspberryPiの負荷が上がり支障が出たということです。

本来,RaspberryPiは,RTC(Real Time Clock:電子機器の内蔵時計)機能を持たないため,NTP(Network Time Protocol)デーモンがインストールされており,設定ファイル「/etc/systemd/timesyncd.conf」を編集する事で時刻が自動的に修正されます。

しかし,それが上手く動作しない場合は手動で時刻調整を実施するか、NPTサーバとの同期受信デーモンを再構築する必要があります。

先日、雷で停電があり、再度、ローカルDNSキャッシュサーバの負荷が高くなる事象が発生しましたので、毎回時刻設定するのは面倒なので同期受信デーモンを再構築しました。

今回は、この構築方法に関する記述です。

【システム構成】
  • Raspberry Pi1 Model B Rev.2 512 MB of RAM
  • OS :  Raspbian GNU/Linux 12 (bookworm) (CMD : lsb_release -a)
それでは,学習を始めます。

2025年9月4日

OpenSSL/Win11/WSL2の独自SSLサーバ証明書作成とWebサーバの設定


大竹市下瀬美術館の庭園
大竹市下瀬美術館の庭園       


前回はWin11/WSL2上に自己認証(CA)局を構築しました。今回はこれを使ってSSLサーバ証明書を作成しWebサーバに設定してみます。

これにより,クライアントPCのWebブラウザとWebサーバ間でSSL通信できることを実証します。

正規のSSL証明書ではありませんが、ファイアーウォールで守られたローカルネットワーク内で廉価に使うことが出来、小規模事業所内で独自ドメインが扱えるので内部セキュリティの強化にもつながると考えます。

【実証前提条件】
・パソコン : Windows11 pro 24H2 (IPアドレス:IPv4固定値)
・Linux ディストリビューション : Ubuntu-24.04 LTS(lsb_release -a)
・WSL2        バーション   :   2.4.12.0 (wsl --version)
・OpenSSL バージョン : 3.5.2(openssl version)

それでは,学習を始めます。

2025年8月29日

OpenSSL/Win11/WSL2の自己認証局(CA)構築とCA証明書のClient-Install


大竹市下瀬美術館から見る宮島
大竹市下瀬美術館から見る宮島     


ローカルネットワーク内にプライベートドメインを作成すると,次はそのドメインのSSL証明書をどうするかという課題に直面します。

例えば,Windows/WSL2を使って,ローカル用にWebサーバを立ち上げた場合,そのドメインのSSL証明書がないとブラウザが「信頼できない通信」と警告を発します。

それを防ぐ方法としては,SSL証明書を正式に取得するか,独自に作成するかのどちらかになります。

正式に取得した方がいいのですが有料になりますし,ローカルネットワーク内だけで使うのであれば,独自に認証局を立ち上げてSSLサーバ証明書を作成するのも一つの方法です。

そこで,今回はWSL2環境における自己認証局の作成とSSLサーバ証明書の作成を学習してみたいと思います。

学習内容が長いため,自己認証局(CA)構築~CA証明書のクライアントインストールまでを今回記述し,独自SSLサーバ証明書の作成~Webサーバの設定までを次回記述します。

【実証前提条件】
・パソコン : Windows11 pro 24H2 (IPアドレス:IPv4固定値)
・Linux ディストリビューション : Ubuntu-24.04 LTS(lsb_release -a)
・WSL2 バーション   :   2.4.12.0 (wsl --version)
・OpenSSL バージョン :  3.5.2(openssl version)

それでは,学習を始めます。

2025年6月20日

Debian系Linuxでのタイマー設定によるコマンド自動実行の実証


三段峡猿飛の二段滝
三段峡猿飛の二段滝        


 Debian系Linuxとは、Debian GNU/LinuxをベースとしたLinuxディストリビューションの総称です。Debian自体が非常に安定しており、多くのディストリビューションの基盤となっているため、Debian系と呼ばれるグループを形成しています。

UbuntuもDebianをベースに開発された最も有名なディストリビューションの一つです。

前回,このDebianをベースにしたRaspberryPi OSを使って,ローカル用のDNSキャッシュサーバを作成しました。

その中で「root.hints」というファイルを定期的に自動更新する必要が生じましたので,タイマーを使った自動実行方法を学習したいと思います。

通常,Linuxではcronを使うのが主流ですが,最近ではタイマーを使う方法が増えています。

【実証前提条件】
  • Raspberry Pi1 Model B Rev.2 512 MB of RAM
  • OS :  Raspbian GNU/Linux 12 (bookworm) (CMD : lsb_release -a)

それでは学習を始めます。

2025年5月31日

RaspberryPiとUnboundを使ったローカルDNSキャッシュサーバの構築


海に佇む朱の鳥居
海に佇む朱の鳥居        


WSL2などを使ってローカル内に独自システム環境を構築すると,Webサーバのためのローカルドメインがどうしても使いたくなります。

IPアドレスでアクセスも出来ますが,IPアドレスがwebブラウザ上で表記されるのも良くありません。

これを解決する方法としては正規ドメインをドメインレジストラから取得する方法と,独自のDNSキャッシュサーバを作成してプライベートドメインを設定する方法があります。
  • ドメインレジストラとは、ドメイン名の登録申請を受け付け、レジストリ(ドメインデータベースを管理する機関)に登録する業者
正規のドメインを使うのが最も良いのですが費用がかかります。一方,プライベートドメインの場合は名前衝突問題が発生するので注意が必要です。

名前衝突の可能性が低いドメイン名(gTLD で使われていない)を使い,かつインターネットと分離したローカル内で名前解決できる環境を整備しなくてはなりません。
  • gTLD (generic Top Level Domain; 分野別トップレベルドメイン)とは,特定の国や地域によらず、世界中から誰でも登録できるトップレベルドメインのことです。
そこで,古くなったRaspberryPiとDNSキャッシュサーバ用のソフトである「Unbound」を使って,ローカルDNSキャッシュサーバを作成しプライベートドメインを実証してみました。

【実証前提条件】
  • Raspberry Pi1 Model B Rev.2 512 MB of RAM
  • OS :  Raspbian GNU/Linux 12 (bookworm) (CMD : lsb_release -a)
  • Ubound : Version 1.17.1 (CMD : unbound -h | grep Version)

それでは学習を始めます。

2025年4月23日

Win11/WSL2のミラーモード「Mirrored」ネットの実証

広島三段峡の三段滝
広島三段峡の三段滝        



WSL2「Windows Subsystem for Linux 2」への外部からのアクセスは,「netsh」コマンドによるポートフォワーディングが一般的です。

しかし,最近,新しい手法として「ミラーモード」という機能がサポートされました。

この機能はWindows11 22H2 以降のPCで利用でき,「C:\Users\ユーザ名」下にある「.wslconfig」ファイル内に以下のように定義することで有効化されます。

[wsl2]
networkingMode=mirrored

 この設定により、WSL2はWindows 上のネットワーク インターフェースをLinux にミラーリングするというまったく新しいネットワークアーキテクチャに変更されます。

現時点での利点は次のとおりです。
  • IPv6 のサポート
  • localhost アドレス 127.0.0.1を使用して Linux 内から Windows サーバーに接続できます。(但し, IPv6 localhost アドレス ::1 はサポートされていません。)
  • VPN のネットワーク互換性の向上
  • マルチキャストのサポート
  • ローカル エリア ネットワーク (LAN) から WSL に直接接続します。

新しいネットワークモードは、NAT (ネットワーク アドレス変換) ベースのアーキテクチャにおいて,WindowsとLinuxが異なるIPアドレスを持つという課題を解決します。 

外部からWSL2へアクセスするのに「netsh」コマンドを利用しなくてもいいというメリットは大きいと言えます。

そこで,WSL2のミラーモードを使って,外部ネットワークからSSHリモート接続を実証してみます。

実証前提条件
・パソコン : Windows11 pro 24H2 (IPアドレス:IPv4固定値)
・Linux ディストリビューション : Ubuntu-24.04.1 LTS
・WSL2  バーション   :   2.4.12.0 

それでは学習を始めます。

2025年4月12日

Win11/WSL2外部アクセスポートフォワーディングの自動化

山口県角島大橋
山口県角島大橋         



WSL2「Windows Subsystem for Linux 2」への外部からのアクセスは,「netsh」コマンドによるポートフォワーディング手法が一般的です。

しかし,この手法は,PCの電源再起動が起こるとHyper-V仮想環境のIPアドレスが変更される可能性があり,その都度再設定する必要があります。

パソコンの電源再起動の度にWSL2のIPアドレスを調べて,「netsh」コマンドによりポートフォワーディング設定することは大変な手間です。

そこで,このコマンド設定を自動化する方法について学習します。

※「netsh」コマンドは、ネットワーク全般の制御用コマンドです。

実証前提条件
・パソコン : Windows11 pro 24H2 (IPアドレス:IPv4固定値)
・Linux ディストリビューション : Ubuntu-24.04 LTS
・WSL2  バーション   :   2.4.10.0 


それでは学習を始めます。

2025年3月18日

Win11/WSL2への外部からのアクセス(ポートフォワーディング)について



宮島五重塔を望む
宮島五重塔を望む      



WSL2「Windows Subsystem for Linux 2」をインストールし,Linuxディストリビューションを立ち上げると,次は「外部ネットワークからどうやってアクセスするか」という課題に直面します。

それは,WSL2がHyper-Vと呼ばれる仮想環境上でLinuxカーネルを動作させるため,Windowsが使うIPアドレスとは全く別のIPアドレスが付与されるからです。

そのため,パソコン外部からWindows経由でアクセスがあった場合,どのようにWSL2に伝えるかが課題になります。

具体的には「netsh」コマンドを使って,WindowsのIPアドレスポートで入って来た通信を,WSL2のIPアドレスポートでリッスン「listen」させることになります。

※「netsh」コマンドは、ネットワーク全般の制御用コマンドです。

そこで,今回はSSHリモート通信を例に,WSL2のIPアドレスにアクセスするためのオーソドックスな「ポートフォワーディング」方法を学習します。

※ポートフォワーディングとは特定ポート番号宛てに届いたパケットを、予め設定したLAN側の機器に転送する機能です。

なお,WSL2のIPアドレスは,Windowsが再起動される度に原則変わりますので,その都度,「netsh」コマンドを使ってネットワークを再設定させなければなりません。

それでは,「netsh」コマンドを使ったネットワーク設定について見ていきましょう。

実証前提条件
・パソコン : Windows11 pro 24H2 (IPアドレス:IPv4固定値とする)
・Linux ディストリビューション : Ubuntu-24.04 LTS 起動中
・WSL2  バーション   :   2.4.10.0 
・テキストエディター :  Vim等でファイル内容を修正できる方


学習を始めます。

2025年2月8日

Win11/WSL2のファイル操作からバックアップまで


瀬戸内海亀老山展望公園から
瀬戸内海亀老山展望公園から  



Windows11にWSL2(Windows Subsystem for Linux 2)をインストールし,Linux(ここではUbuntu-24.04.1 LTS)を登録してアプリを作成しようとすると,どうしてもファイル群を編集する必要性が出てきます。

一般的には,TeraTerm等のネットワークリモートアプリを使って,ネットワーク経由でSendとReceiveを行うのですが,WSL2はWindows上で動作しているので,ネットワークリモートアプリを使わなくてもファイルをやり取りすることが可能です。

また,WSL2を使い始めると,定期的にバックアップする必要があります。サーバが壊れた時や移動する時などにバックアップファイルをインプットして回復するためです。

それらのコマンド群について記載します。

なお,PC環境はWindows11 Proエディションを前提としています。

それでは,学習を始めます。


2025年2月6日

Win11/WSL2のインストールから起動方法まで



毛利庭園
山口県毛利庭園にて  

 

Windows11移行に伴い,現在Windows10下で稼働していたシステムを移設しなくてはならなくなりました。WSLもそのひとつです。

WSLとは「Windows Subsystem for Linux」といい、Windows(64bit版)上で動作するLinuxの実行環境です。

このWSLには,WSL1とWSL2という2つのバージョンが存在し,WSL1は,Windowsカーネル上でLXCoreというサブシステムがLinuxの実行環境を作ります。

この環境は,Windowsが使うIPアドレスを直接使えるなどのメリットがありますが,Linuxを使う環境としては不完全なため,インストールやコマンドに制限を受ける事があります。

そこで,ほとんどのLinuxソフトを扱えるようにするため,2019年2月にWSL2バージョンがサポートされました。

このバージョンでは,Hyper-Vと呼ばれる仮想環境上にLinuxカーネルを動作させるため,ほとんどのLinuxアプリを動作できるようになります。

今ではWindows Serverでも動作させることが出来ますので,一つの物理媒体にWindowsとLinuxという二つのOSを共存させることが可能になりました。

WSL2を利用することで手元のWindows OSを,これまでと同様に使いながら同じWindowsサーバ上でLinuxも動かすことが出来るわけです。

WSL2でLinuxを使うにあたり、いちいちOSを再起動する必要はありません。あたかもWindowsにインストールされているソフトウェアの1つのように,Linuxアプリを利用できます。

今回は,windows11移行に伴いWSL2再構築に係る作業を取り纏めることにしました。

なお,PC環境はWindows11 Proエディションを前提としていますが,仮想マシン環境があれば動くので,Windows11 Home エディションも動く仕様のようです。お試し下さい。

それでは,学習を始めます。

2025年1月26日

GoogleBloggerブログサイトを利用する上で最低限認識しておくこと(実証試験から)


生口島にある未来心の丘
生口島にある未来心の丘  
  


Windowsパソコン環境の整理に併せて,「GoogleBlogger」のブログドメインの変更を行ったところ,これまで蓄積してきた検索エンジンのIindex登録が消失しました。

この経験を基に,「GoogleBlogger(以下,Bloggerという)」で新しくブログを始める方の参考となるよう,これまでの知見について投稿することにしました。

ブログを始めるには大きく分けて,個人でサーバとドメインを用意し「WordPress」などのソフトを活用して始める方法と,無料のブログプラットフォームサービスを活用して始める方法の2つがあると思います。

自分でサーバやドメインを用意するのは費用が掛かりますし,インフラを勉強するのにも時間がかかる等の理由で閾値が高く,無料のブログサービスを使う方も多いことでしょう。

Googleが運営するブログプラットフォームサービスの「Blogger」もその一つです。無料で使え広告表示義務もない事からこのサービスを使う人も結構多いと思います。

しかし,無料のサイトであるが故に,良い点もあれば注意すべき点も多々あるのが実態です。

今回,カスタムドメインの適用で2年に亘るインデックス登録作業が水の泡となりましたので参考として投稿します。

それでは説明を始めます。