我在中華電信註冊了一個域名,並在Let's Encrypt上對該域名申請了一個憑證。
我將憑證導入我的網站專案,以443作為網站的port。
以下面ip和域名為例子。
1.假設我的域名為:abcdefgh.org.tw
2.假設我用來綁定域名的對外ip為:166.166.166.166
3.憑證核發對象是給abcdefgh.org.tw
[情境一]
當我連線https://166.166.166.166 可以成功連上網站,不過會顯示憑證不安全,畢竟這個憑證核發是給abcdefgh.org.tw的。
示意圖:
[情境二]
當我連線http://abcdefgh.org.tw 可以連上網站,但是他會說Bad Request
This combination of host and port requires TLS.
示意圖:
[情境三]
當我連線https://abcdefgh.org.tw ,會完全無法連上網站
示意圖:
我的網站是基於Java SpringBoot框架開發的,其中配置TLS憑證的方式與此教學雷同:https://blog.terrynow.com/2022/11/22/springboot-config-ssl-cert-to-support-https-requests/
請問,為什麼我的域名採用http為開頭時還可以連得上網站,但是改為https為開頭時就無法連上了呢,會不會是我在中華電信的轉址設定配置有誤,或者網站專案裡面的TLS憑證配置有問題呢,麻煩大家提供我任何可能的原因,由於有些中華電信的設定,或者專案開發的細節比較多,無法全部截圖出來,如果有需要我補充的地方也麻煩各位留言,謝謝。
--2023/02/09 10:51更新--
我換了一種憑證生成方式,透過certbot工具申請SSL憑證,生成方式按照此教學:https://blog.miniasp.com/post/2021/02/11/Create-SSL-TLS-certificates-from-LetsEncrypt-using-Certbot
我在google瀏覽器查看的憑證資訊如下:
示意圖:
請問示意圖中的憑證階層內容是正常的嗎,我看到其他網站的憑證階層都能展開好幾層,但是我的憑證階層最上層就是自己的申請的萬用網域名稱,這是不是表示我的憑證有問題?
基本上如果是用Spring boot進行憑證的話,要把申請過後的憑證再進行加密之後,放到Resource資料夾中,然後Properties要增加這個憑證的資訊。
也就是說你必須使用那兩個你找到的方法,先申請Let's encrypt憑證,然後再把那個憑證進行加密就可以了。
我是AWS的雲端配合Spring boot啟動Https,有甚麼我能幫得上忙得再跟我說。
1.請問你在啟用https的時候,有將application.properties的server.port參數設為443嗎?
我沒有用443,不過我參考的網站是用Port443的,參考連結如下:https://blog.csdn.net/axky000/article/details/116944945
2.請問您的雲端主機是否有對外IP呢? 另外您是否有購買域名呢? 如果有的話,您有將這個IP綁定到域名上面嗎?
有對外IP,有購買域名,申請憑證的時候就會綁定IP跟域名,然後就會產出對應這個IP跟域名的憑證,然後再把憑證用Java加密綁定在一起。
您好,想要向您請教幾個問題:
1.請問你在啟用https的時候,有將application.properties的server.port參數設為443嗎?
2.請問您的雲端主機是否有對外IP呢? 另外您是否有購買域名呢? 如果有的話,您有將這個IP綁定到域名上面嗎?
我的主要問題是,在伺服器server.port為443的狀況下,是否要把域名,綁定到對外IP的443 PORT上面,才能正常啟用https,例如我在中華電信填寫的來源網址、目的網址格式如下:
來源網址:http://abcdefgh.org.tw
目的網址:http://166.166.166.166:443
不知道這樣的綁定方式是否正確呢?
我是不懂你弄什麼,不過比較合理的設定應該是
來源網址:https://abcdefgh.org.tw
目的網址:https://166.166.166.166:443
對外服務IP的443 PORT當然也要可以通才行