Ssl
HSTS:主域上的 includeSubDomains 是否足夠?
在我的Plesk 網路管理版中,我剛剛在我的主域上啟動了
www.domain.tld
HSTSadd_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always;
ssllabs.com上的測試表明一切正常。問題是我的子域(
subdomain.domain.tld
)。如果我在 ssllabs 上測試我的子域,它會說沒有啟動 HSTS。我應該包括標題
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always;
在我的子域上還是在我的主域上的實現就足夠了?
我認為通過添加
includeSubDomains
不需要在子域上顯式添加它。
該
includeSubDomains
部分僅指示瀏覽器一旦看到它,對其他子域的請求應遵守相同的 HSTS 規則(即,必須存在有效證書)。它不會“推斷”此規則對您的子域的應用,例如,如果使用者以前從未訪問過您的 www.domain.tld 站點。在這種情況下,他們的瀏覽器永遠不會在您的 www 子域上看到此標頭的存在,因此不會應用 HSTS 規則。如果使用者在您的 www 子域上看到此標頭,然後嘗試使用無效證書訪問子域,它將阻止它並阻止使用者繼續。
簡而言之,您需要確保在所有子域中提供相同的 HSTS 標頭,以便 100% 有效。