网络攻击种类繁多,应对方法也大不相同,稍有不慎,不仅会导致网站和使用者资讯泄露,还可能让品牌形象一落千丈、资金损失惨重。而从
SEO角度来看,Google如今对网络安全问题愈发重视,这意味著网站一旦出现任何安全问题,极有可能对整体SEO成效造成负面影响,连带网站的流量和曝光度也出现明显的下滑。
那么,如何才能确保网站安全?
香港网页(HKWEB)表示,在众多网络安全措施中,安装SSL证书是首要且关键的进一步。然而,令人费解的是,明明
SSL证书安装非常简单,但为什么还会有各种问题出现?
什么是SSL证书?为什么会出现SSL证书安装错误的问题?SSL(Secure Sockets Layer),中文翻译为安全通讯端层,是一种加密式网际网络安全性通讯协定。该协定最初由Netscape在1995年开发,用于确定网络通讯中的隐私、验证和资料整合性。
过去网际网络上的资料都是以纯文字形式传输的,任何人只要截获这些讯息都可以读取。但是,当网站安装SSL证书后,将会对使用者和网站伺服器之间传输的任何资料进行加密,任何人即使截获这些资料也只能看到混乱的字元,从而保障网站和使用者的资讯保安。此外,SSL还可以对网站伺服器进行身份验证,阻止攻击者透过伪造网站来欺骗与窃取使用者资讯,以及防止攻击者篡改传输中的资料。
尽管SSL证书对保证网站及使用者资讯保安至关重要,但仍有不少网站管理员在安装和使用SSL证书过程中出现各种问题,像是:
● SSL证书不受信任此错误可能与证书是由浏览器不信任的证书授权单位办法有关。当网站出现这种SSL证书错误时,浏览器会显示「您的连线并非私人连线」的警告资讯,从而阻止使用者访问网站。
【解决方案】
1. 将SSL证书更换为受信任的CA证书,如在公认的证书授权单位申请证书、避免使用自签名证书等。
2. 检查伺服器是否上传完整的证书链,包括中间证书和根证书。
3. 检查伺服器配置,如:
Apache:确认SSLCertificateFile和SSLCertificateChainFile配置正确。
Nginx:确保ssl_certificate指令包含完整的证书链(证书+中间证书)。
● SSL版本错误网络威胁并不是一成不变,而是持续进化并呈现出新的模式和技术,因此为了修复漏洞和加快验证过程,SSL/TLS通讯协议也进行过多次的更新。目前网络上最新且使用最广泛的SSL版本是TLS 1.3,但TLS 1.2仍在使用中,因此如果客户端仅接受最新版本的通讯协议,而不支援TLS 1.2版本,使用者浏览器可能会出现「建立 TLS 客户端认证时发生致命错误」的提示。
【解决方案】
1. 禁用不安全的协议(SSLv2/SSLv3/TLS 1.0/1.1),启用TLS 1.2和1.3,如:
Apache:SSLProtocol all -SSLv2 -SSLv3 -TLSv1 -TLSv1.1 +TLSv1.2 +TLSv1.3
Nginx:ssl_protocols TLSv1.2 TLSv1.3;
2. 如果客户端(如旧版浏览器或应用)不支援TLS 1.2,需升级客户端或调整伺服器以提供后向相容(临时方案)。
3. 使用openssl s_client -connect example.com:443 -tls1_2测试协议握手。
● SSL证书过期就像我们的身份证会在一定年限后过期一样,SSL证书同样具备时效性。如果网站安装的SSL凭证已经过期,就会导致网站伺服器和客户端无法建立无法安全连线。此外,如果客户端的时钟不正确,同样会出现此错误,这是因为浏览器可能无法准确判断SSL凭证是否已经过期。
【解决方案】
1. 透过CA平台续期证书,确保新证书已正确安装并重启伺服器。
2. 指导使用者同步装置时间(如Windows时间设定或ntpdate命令)。
● 通用名称不符的错误当SSL证书上的名称与客户端输入的URL不符时,就会出现这种情况的错误。除此之外,输入的顶层网域与预期不同、证书上未列出「www」时输入该名称、错误拼写网域,或者网站管理员错误标记其证书或未能包含其网域面向公众的所有名称、客户端或伺服器不支援SNI延伸等,都有可能发生常见的名称不符错误。
【解决方案】
1. 确保申请证书时包含所有需要的域名,如使用万用字元证书或多域名证书)
2. 确保使用者访问的URL与证书域名完全一致(包括http://和https://)。
3. 确保伺服器和客户端均支援SNI,如伺服器配置:
Apache:确认已启用mod_ssl且无SNI相关错误日志。
Nginx:预设支援SNI,无需额外配置。
● 主伺服器不使用 SNI伺服器名称指示(SNI)是 TLS 通讯协议的扩充功能,主要用于一台伺服器上托管多个网域的情况。当客户端开始连线时,SNI就像一个智慧的地址指示器,在每个IP地址上新增一个公寓编号,以便伺服器知道将SSL连线要求导向到哪个网站。如果前往伺服器的请求不使用SNI,伺服器可能会向发起连线的客户端显示错误的SSL证书,导致常见的名称不符错误。
【解决方案】
1. 使用支援SNI的伺服器版本(如Apache 2.2.12+、Nginx 1.5.0+、IIS 8+)。
2. 配置虚拟主机,如:
Apache: 为每个域名配置独立的
块并指定证书。

3. 如果无法启用SNI,可申请万用字元证书(如*.example.com)覆盖所有子域名。
【最后】
当发现网站SSL凭证出现错误时,建议使用线上工具如SSLChecker、SSLCertificate Checker或SSLServer Test等,诊断网站上出现SSL证书错误的问题,像是SSL证书是否已安装且未过期、域名是否正确列在证书上等。
找到导致SSL凭证错误的原因后,你可以按照上述方法进行最佳化,又或者直接咨询香港网页(HKWEB)为你服务,我们将根据你的情况制定全方位的网页方案,助你的网站在网络市场中更上一层楼!