我们刚刚迁移到亚马逊 AWS。我们目前有一个运行良好的 EC2 实例。它在前端运行 Nginx,在后端运行 Apache。这也运行良好。所有站点都已正确启动,并包含从 EC2 提供的文件的 Cache-Control 标头。
问题在于我们放置在Amazon S3中的所有静态文件都是通过CloudFront CDN访问的。我们可以正常访问文件(并且 CORS 没有问题),但显然CloudFront 不提供带有 Cache-Control 标头的文件。我们想利用浏览器缓存。
在我看来,EC2 实例在这里不起作用,因为静态文件由 S3+CloudFront 直接提供,请求不会转到 EC2 中的 Web 服务器。
我完全迷失了。
问题:1)在这种情况下如何设置Cache-Control?2)是否可以设置Cache-Control?从 S3 还是 CloudFront?
注意:我在 Google 中找到了几个页面,您可以在其中为单个对象设置 S3 中的 Header。这真的不是一种特别有效的方法,因为在我的情况下,我们正在谈论几个对象。
谢谢!
我正在运行Let's Encrypt 的SSL 证书。我已经在运行 Apache 的 Ubuntu 机器上安装了它们。设置工作正常,我可以启动网站,看到绿色挂锁,甚至在 SSL Labs 上获得了 A+。
问题是,当我执行apachectl configtest 时,服务器会返回一个找不到文件的错误:
SSLCertificateFile: file '/etc/letsencrypt/live/www.example.com/fullchain.pem' not exist or is empty.
Run Code Online (Sandbox Code Playgroud)
但sudo service apache2 restart
工作得很好。
我在Let's Encrypt Community遇到了这个问题,但问题尚未解决。
sudo cat /etc/letsencrypt/live/www.example.com/fullchain.pem
有效,返回有效的证书详细信息。
sudo x509 -text -noout -in /etc/letsencrypt/live/www.example.com/fullchain.pem
Run Code Online (Sandbox Code Playgroud)
不起作用并返回以下错误:
Error opening Certificate /etc/letsencrypt/live/www.example.com/fullchain.pem
139774254929568:error:02001002:system library:fopen:No such file or directory:bss_file.c:398:fopen('/etc/letsencrypt/live/www.example.com/fullchain.pem.','r')
139774254929568:error:2007402:BIO routines:FILE_CTRL:system lib:bss_file.c:400:
ubable to load certificate
Run Code Online (Sandbox Code Playgroud)
关于为什么我在apachectl configtest和openssl上遇到错误的任何想法?
谢谢你们!
我们有一个在亚马逊上运行的 EC2。它有一个公共 IP和公共 DNS。
我们通过为 www.example.com 创建 A 记录在我们的域记录中使用公共 IP。然后该站点变得可访问。如果我们使用公共 DNS,我们将使用 CNAME 而不是 A 记录。
我的问题是关于两者的技术性和功能性。一个比另一个有优势吗?
我DKIM: FAIL with domain null
在 GMail 中遇到错误。当我在 GMail 中查看原始文件时,我得到dkim=fail header.i=@example.com;
.
在我的 DNS 中,我有以下 TXT 记录:
DMARC TXT 条目:_dmarc v=DMARC1;p=reject;sp=reject;rf=afrf;pct=100;ruf=mailto:authfail@example.com;rua=mailto:mailreport@example.com;ri=86400
SPF TXT 条目:example.com
v=spf1 +a +mx +ip4:70.xxx.xxx.xxx +ip4:71.xxx.xxx.xxx +ip4:72.xxx.xxx.xxx ~all
Run Code Online (Sandbox Code Playgroud)
DKIM TXT 条目:_default._domainkey
v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAo/HYr74H9Ty6HjTpjawYIfiDa7kOPx+0GJiw4rw7IYkfvrfrLojmGLuS4lg3NbIqYmLg9Ziz77q9vVT15ftrFB1+lTz6+Ei19b6AM8FGCJoDWRHRwB+YN0InJaFs/kPfy1SktqQI8TntPNfH2+tTOUrIT1gi8fjwSnfSkUsbNuSpIp3XrAU6pYzEjXF2h1A3UMFV+7+jLRzEvunj2YCsJ3vaifTihat+Nsw7eP5L2iAzW8b0joP3z6k/UkhUa7/35oNC4Xn1dY532irsBunMJz9QsBxIaNpepiZZkTxfglsq2RP4FWGZbiVFRDDcvsnpi4kFx3eAQtAoo+szLA70FQIDAQAB
Run Code Online (Sandbox Code Playgroud)
我通过https://www.mail-tester.com/spf-dkim-check和http://dkimcore.org/tools/keycheck.html测试了我的记录,并全部检查出来。公钥是 2048 位。我读到 GMail 使用较小的密钥使 DKIM 失败。
我还使用http://unlocktheinbox.com和 DKIM Validation Check 对其进行了测试,它说:
Signature Found: Yes
SmarterMail DKIM Test: Failed - Bad Signature
MailBee.NET DKIM Test: Failed - SignatureInvalid
Run Code Online (Sandbox Code Playgroud)
GMail 似乎对我的 …
我们的系统前面有 Nginx,后面有 Apache 代理。我们使用 SSL/TLS 进行连接。
题:
这是我的配置:
ssl_certificate /path/ssl.crt;
ssl_certificate_key /path/ssl.key;
ssl_dhparam /path/dh.pem;
ssl_buffer_size 4k;
ssl_session_timeout 4h;
ssl_session_cache shared:SSL:20m;
ssl_session_tickets on;
ssl_trusted_certificate /path/trust.crt;
ssl_stapling on;
ssl_stapling_verify on;
resolver 8.8.8.8 8.8.4.4 valid=300s;
resolver_timeout 5s;
Run Code Online (Sandbox Code Playgroud)
我使用Mozilla SSL 配置生成器在下面生成我的密码。
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers 'ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES256-SHA:ECDHE-ECDSA-DES-CBC3-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:DES-CBC3-SHA:!DSS';
ssl_prefer_server_ciphers on;
Run Code Online (Sandbox Code Playgroud)
密码是为了适应大多数浏览器。我也设置了Strict-Transport-Security。
我们的系统使用 CloudFront 在 Amazon AWS 上运行。目前,SSL Labs 需要大约 130 秒来运行测试。Pingdom 显示一个请求的SSL 连接至少需要220ms。
谢谢!
我正在阅读这个Samba 手册页,根据这个,你可以设置 TLS。我有2个问题。
我们有几台 Windows 机器,我们在 Ubuntu 14.04 上运行 Samba 来共享文件。当前运行 Samba 版本 4.3.9。
我正在尝试使用 cifs 在 Ubuntu 14.04 上安装 samba 网络共享。
在服务器上,我已经运行了共享。我已经可以将其映射为 Windows 中的驱动器。该共享有用户名和密码。
在 ubuntu 机器上,我找到了/etc/samba/user
保存凭据的位置。我还有要挂载共享的目录/mounthere
。
我在/etc/fstab上有这个
//192.168.1.1/sharename /mounthere cifs credentials=/etc/samba/user 0 0
当我这样做时,sudo mount -a
我收到此错误:
mount error(112): Host is down
Run Code Online (Sandbox Code Playgroud)
楼主没挂啊 我已经在 Windows 上运行了。我已经仔细检查了凭据和可能的防火墙问题。
我还安装了cifs-utils。
任何人都可以指出我正确的方向吗?
谢谢你!
我在 Ubuntu 上运行 Apache 2.4.20,并且配置了 SSL。我有一个SAN SSL 证书,www.example.com和www2.example.com共享同一个证书。
当我包含以下内容时,我收到421 Misdirected Request错误:
Protocols h2 h2c http/1.1
H2Upgrade on
H2Direct
H2WindowSize 128000
Run Code Online (Sandbox Code Playgroud)
如果我删除它们,网站会正常运行。
如果在同一浏览器上打开www.example.com和www2.example.com,我会收到错误消息。如果我先访问www.example.com,它将正确加载。当我从该 SAN SSL 证书加载第二个站点时出现错误,例如www2.example.com。我先去哪个网站并不重要。它总是在第二个站点上响应421 Misdirected Request。
我使用 HTTP/2 指令有什么问题?(顺便说一下,它们在 VirtualHost 中)
或者 HTTP/2 和 SAN SSL 实施是否存在问题?
如果重要的话,www.example.com 和 www2.example.com 都位于 AWS 中托管的同一台服务器上。
谢谢。
编辑:
我还尝试了以下设置,结果相同。
Protocols h2 http/1.1
H2Direct
H2WindowSize 128000
Run Code Online (Sandbox Code Playgroud)
在 SSL 配置中
<IfModule mod_ssl.c>
SSLRandomSeed startup …
Run Code Online (Sandbox Code Playgroud) ssl ×3
apache-2.4 ×2
samba ×2
ubuntu ×2
ubuntu-14.04 ×2
amazon-ec2 ×1
amazon-s3 ×1
cache ×1
cdn ×1
cifs ×1
dkim ×1
email ×1
encryption ×1
filesystems ×1
gmail ×1
https ×1
lets-encrypt ×1
nginx ×1
performance ×1
tls ×1