クーの自由研究

マスターのかえるのクーは、弟子達の召喚術により新たな依り代を得てⅡ世として復活しました。

UEFI HTTP BOOT でディスクレス Linuxクライアント(CentOS)を起動する

tftpのかわりにhttpを使う感じみたいです

夏まつり 宵かがり、かえるのクーの助手の「井戸中 聖」です。

夢はつまり 想い出のあとさき。

f:id:AssistantOfKoo:20200816124254p:plain

さて、それではUEFI http bootします。

これも情報が非常に少ないので、全世界的に使っている方は少ないと思われます。

通常のPXE/UEFIブートサーバに少し手を加えれば、UEFI http bootできます。

ほぼ、この記事一択です。

設定トレースは以下の通りです

ここまでで、PXE/UEFIブートサーバが準備できていることが前提です。

httpサーバを設定します。(サーバは pxe_server.srv.world です)

 サーバを外部にアクセスできるように(NAT + dhcpクライアント)設定して再起動します。※定義をcopy & pasteするときは未定義文字の巻き込みに注意ください。

# dnf -y install httpd

# mv /etc/httpd/conf.d/welcome.conf /etc/httpd/conf.d/welcome.conf.org      ※ welcome.confは存在をさせません

# vi /etc/httpd/conf/httpd.conf  ※ いろいろかえます

#ServerAdmin root@localhost
ServerAdmin root@srv.world ※管理者の設定

#ServerName www.example.com:80
ServerName pxe_server.srv.world:80 ※サーバ名の設定

 

ServerTokens Prod ※末尾に追加
KeepAlive On ※末尾に追加

 その他、必要があればhttpのセキュリティを確保する設定をします。

# systemctl enable --now httpd
# firewall-cmd --add-service=http --permanent
# firewall-cmd --reload

# vi /etc/httpd/conf.d/pxeboot.conf     ※Boot用の定義を設定します(新規作成)。

alias /centOS/ "/var/lib/tftpboot/"
<Directory "/var/lib/tftpboot/">
    Options Indexes FollowSymLinks
    AllowOverride None
    Require all granted
</Directory>

# vi /etc/dhcp/dhcpd.conf    ※青色部分を追加します。

    class "pxeclients" {
        match if substring (option vendor-class-identifier, 0, 9) = "PXEClient";
        ...

   }
    class "httpclients" {
        match if substring (option vendor-class-identifier, 0, 10) = "HTTPClient";
        option vendor-class-identifier "HTTPClient";
        filename "http://10.0.0.1/centOS/BOOTX64.EFI";
    }
}

サーバのアドレス設定をもとに戻して再起動します(ブリッジ + 10.0.0.1/24)  

tftpを使わないことを確認にするために、サーバのtftpを非活性にします。(確認のためだけ。実際にはそのままでOK)

# systemctl stop tftp.socket

# systemctl status tftp.socket

httpdとdhcpdは動作していることを確認しておきます。

# systemctl status httpd

# systemctl status dhcpd

クライアントの設定

クライアントの設定を UEFI http IPv4に設定します。(古いマザーボードやNICでは設定がありません) 

f:id:AssistantOfKoo:20200816122803p:plain

クライアントの起動

bootします。

f:id:AssistantOfKoo:20200816123459p:plain f:id:AssistantOfKoo:20200816122258p:plain

同様にメニューが表示されます。

f:id:AssistantOfKoo:20200816123530p:plain

以降はPXE/UEFIと同じで、問題なくCentOSが起動します。

 

以上で夏休みの自由研究の発表をおわります。

f:id:AssistantOfKoo:20200816123948p:plain