You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

AWS EC2 Linux服务器中使用Curl与Wget无法下载文件的问题排查求助

解决AWS EC2 RHEL7.8上无法下载SonarScanner等HTTPS资源的问题

看起来你遇到的是一个针对性的HTTPS下载故障——普通网页能正常访问,但所有带下载端点的HTTPS资源都无法获取,而且跳过证书检查也没用,这确实挺让人头疼的。结合你的环境(RHEL7.8 EC2)和测试结果,我给你几个可行的排查和解决方向:

1. 检查EC2安全组与网络ACL配置

下载类的HTTPS请求需要完整的TCP握手和会话维持,有可能是安全组或NACL的规则限制了这类流量:

  • 确认安全组的出站规则:确保允许所有HTTPS(443端口)流量指向0.0.0.0/0,或者至少覆盖SonarSource、Apache等资源的IP段;
  • 检查网络ACL(NACL):由于NACL是无状态的,要同时确认入站规则允许443端口的响应流量,出站规则允许443端口的请求流量,避免双向流量被阻断。

2. 更新系统CA证书库

RHEL7.8默认的CA证书版本较旧,部分新的HTTPS站点证书链可能不被识别,哪怕跳过证书检查也可能导致连接中断:
执行以下命令更新CA证书:

yum update -y ca-certificates

更新完成后重新尝试下载操作。

3. 强制使用高版本TLS协议

你使用的wget(1.14)和curl(7.29)都是比较旧的版本,默认支持的TLS协议可能仅限于TLS1.0/1.1,而多数现代下载服务器已经不再支持这些旧版本:

  • 对curl强制使用TLS1.2:
    curl -O -v --tlsv1.2 https://binaries.sonarsource.com/Distribution/sonar-scanner-cli/sonar-scanner-cli-4.7.0.2747-linux.zip
    
  • 对wget强制使用TLS1.2(注意旧版本wget的参数格式):
    wget -v --secure-protocol=TLSv1_2 https://binaries.sonarsource.com/Distribution/sonar-scanner-cli/sonar-scanner-cli-4.7.0.2747-linux.zip
    

4. 排查网络路径与区域限制

某些AWS区域可能对特定外部资源有访问限制,或者SonarSource的CDN在你的区域存在网络链路问题:

  • 用traceroute或mtr排查网络路径:
    traceroute binaries.sonarsource.com
    
    或者
    mtr --report binaries.sonarsource.com
    
    查看是否在某个节点出现严重丢包或延迟;
  • 可以尝试在其他AWS区域创建临时实例测试,或者联系AWS支持确认是否存在区域级的网络限制。

5. 临时解决方案:本地下载后上传

如果上述方法都无法解决,可以先绕开出站下载问题:

  1. 在本地电脑下载SonarScanner的zip包;
  2. 用scp命令上传到EC2实例:
    scp sonar-scanner-cli-4.7.0.2747-linux.zip root@<你的EC2公网IP>:/root/
    

内容的提问来源于stack exchange,提问作者Galih

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.28 23:32:34