当我设置 cronjob 以每 30 天更新 LetsEncrypt 证书时,我可以设置 Public-Key-Pins 吗?
如果证书被更新,那么公钥密码也会被更新,对吗?
当我设置 cronjob 以每 30 天更新 LetsEncrypt 证书时,我可以设置 Public-Key-Pins 吗?
如果证书被更新,那么公钥密码也会被更新,对吗?
我运行具有两个外部 IPv4 地址的服务器。IP 地址 A (IP-A) 和 IP 地址 B (IP-B)。
我只想通过 HTTPS 端口 443 和 SSH 端口 22 访问 IP-A。IP-B 不应监听任何传入流量。
然后我希望服务器仅对所有传出流量使用 IP-B。或者至少告诉服务器将 IP-B 用于仅针对特定命令的传出流量。
1: I connect to the server over IP-A and call `ping example.com`
2: The server executes it and sends the ping requests outgoing from IP-B to example.com.
3: I can read the output of the command on my connection with IP-A
因为我将使用的管理控制台位于 IP-A 上。我希望 IP-A 与 IP-B 不直接相关(至少对于外界而言)。相反,我希望 example.com 看到“我收到了来自 IP-B 的 ping 请求。”。当有人连接到 IP-B 时,该 IP 地址不会监听任何内容。虽然 IP-A 不在他们的日志中。
最终,我想添加更多地址并能够告诉 IP-A:
关于如何配置上述场景的任何想法?我目前正在使用 Ubuntu,但我对其他 Linux 发行版的建议持开放态度。
我有以下情况,我正在开发一个 API。我将所有流量重写为一个名为: 的 PHP 脚本route.php
,使用mod_rewrite
如下:
1: RewriteEngine On
2: RewriteCond %{REQUEST_FILENAME} -f [OR]
3: RewriteCond %{REQUEST_FILENAME} -d
4: RewriteRule ^.* route.php [L]
其他文件不应该被访问,这就是为什么我route.php
只使用白名单来访问。因此我使用这个:
order allow,deny
<FilesMatch "route\.php">
allow from all
</FilesMatch>
我想将所有 1xx、2xx(200 除外)、4xx 和 5xx HTTP 状态代码发送到 PHP 脚本(假设error.php?code=404
显示该状态代码的动态错误页面。在这种情况下,我可能必须允许访问error.php
也在FilesMatch
部分。
我找到了部分我想要的东西,如本文所述,但我无法实现或设法让它按照我上面描述的方式工作。
我的目的是error.php
显示一个 JSON 输出(基于状态码动态),{'statusCode':'404','status':'Not Found'}
包括我使用的所有常见(安全)HTTP 标头。
首先,我想知道将 Apache 的虚拟主机彼此隔离的最佳方法是什么。我想这也与 Linux 文件系统有关,因为在同一个 Linux 用户/组下拥有文件夹(/var/www/site1.com/public_html
和文件)并不是一个好习惯。/var/www/site2.com/public_html
我发现了类似的帖子:Isolating Apache virtualhosts from the rest of the system,但注意到这是关于将虚拟主机与系统隔离开来。一个很好的做法,但不是我所说的。
我不想要任何site1.com
可以访问文件的可能方式,site2.com
如果可能的话,除了它自己的目录和子目录之外,文件系统也没有任何不必要的东西。
其次,chmod 对用户权限有什么影响。假设两个站点都在自己的用户和用户组中运行。但是site1.com
有一个文件或目录的 chmod 权限为 777。将site2.com
能够使用该文件/目录吗?