Redhat

僅通過 HTTPS 啟動

  • October 19, 2016

背景:在 powerppc (IBM pSeries) 上啟動 RHEL7

所以多年來我一直在無人看管的情況下啟動,過去不得不使用 yaboot、NFS 等進行啟動。現在正在嘗試現代化。我有一個僅使用 HTTP (Apache)(和 TFTP)的工作啟動。我的問題在於嘗試使用 https 。不確定這是否可能,但人們會認為這是因為您可以指定 https。

如果我有 HTTP 和 HTTPS(相同的 htdocs)的先前工作的 Web 伺服器答案,以及以下grub.conf,它工作正常(IP 和 FQDN 顯然被屏蔽):

menuentry 'Install RHEL 7 via Kickstart...' {
   set root=http,WEBIP
   linux https://WEBFQDN/software/rhel/ppc/ppc64/vmlinuz ro ip=dhcp ks=https://WEBFQDN/kickstart/rhel7-power.ks
   echo 'Loading initial ramdisk ...'
   inst.repo=https://WEBFQDN/software/rhel/
   initrd https://WEBFQDN/software/rhel/ppc/ppc64/initrd.img
}

然而,tcpdump 顯示它仍在使用 HTTP 處理大量流量。實際上,如果我將 Web 伺服器重新配置為RedirectMatch (.*) https://WEBFQDN/$1(將所有 http 重定向到 https,不提供 http),我會收到以下錯誤:

錯誤:無效的獨立於架構的 ELF 魔法。

如果我刪除RedirectMatch(並返回允許 http 而不是重定向),它會再次正常工作。

因此,我可以使用 http,但理想情況下,Web 伺服器只是 https(因為它包含許多除了 kickstart 之外的敏感數據)。這可能嗎?我錯過了一個關鍵標誌嗎?我試過root=https,...但後來我得到一個“找不到文件”(我猜是不支持的網路選項)。

感謝您的任何指點!

因此,我最終確實從 Red Hat 後線得到了答案。它們表明 grub 不支持 HTTPS,即使一些文件表明您可以使用 HTTPS。事實上,您可以在配置中使用 HTTPS……但它仍會回滾並改用 HTTP。據他們說,Grub 沒有載入任何證書或 SSL 庫。因此,當時沒有 HTTPS 支持。

然後,對該問題的答案並經過測試:grub.conf 配置為使用 TFTP 來獲取 vmlinuz 和 initrd.img 文件(本地),而不是 HTTPS (HTTP)。ks=https://… 和 inst.repo=https://… 行可以是 HTTPS,因為一旦核心被載入,它就有 SSL 並且可以通過 HTTPS 獲取 kickstart 文件和 repo 文件。這樣,不使用 HTTP。

引用自:https://serverfault.com/questions/805049