小编oro*_*aki的帖子

我可以隐藏所有服务器/操作系统信息吗?

我不希望任何人能够从互联网上检测到我正在使用 NGINX 甚至 Ubuntu。有一些工具(例如 BuiltWith)可以扫描服务器以检测它们正在使用哪些工具。此外,一些破解工具可能有助于检测。我可以从外部隐藏所有这些信息的最佳/最接近的方法是什么?

ubuntu nginx

112
推荐指数
7
解决办法
15万
查看次数

NGINX - 限制请求以防止滥用

我之所以要这样做,是因为用户使用 JavaScript 针对我们的 API 进行开发,并且一些开发人员搞砸了并导致访问者使用 AJAX 请求猛烈抨击服务器。发生这种情况时,我希望能够将 API 请求限制为每分钟 50 个请求,或者类似的效果。

注意:(特别是数据库密集型资源,所以可能在路径级别,而不是服务器范围内(例如,节流“/json_api/”,但不是“/static/”)。

nginx throttling rate-limiting

30
推荐指数
1
解决办法
3万
查看次数

在生产服务器上运行“apt-get upgrade”(就稳定性而言)通常是否安全?

我经常登录我的 Ubuntu 12.04.2 服务器(使用 Postgres 9.2.4 运行实时生产数据)并看到类似于:

4 packages can be updated.
4 updates are security updates.
Run Code Online (Sandbox Code Playgroud)

当然,这种情况每隔几天就会发生一次。我对自动更新不感兴趣(我睡着时可以更改的东西越少越好),但我有兴趣始终保持服务器最新,所以我的问题是:当我看到诸如也就是说,运行是否总是被认为是安全的apt-get upgrade,或者有时它会破坏事物。我知道补丁并不总是完美的(因此在标题中引用了“总是”),但作为一般规则,运行它是否被认为是安全的(尤其是考虑到这是一个数据库服务器,而不是仅通过 Nginx 提供 CSS 文件的东西)?

ubuntu update patch-management apt ubuntu-12.04

19
推荐指数
3
解决办法
1万
查看次数

DNS 查询中未显示域密钥

*已解决 - 请参阅这篇文章的底部 *

所以这里的问题是我几天来一直在尝试设置域密钥。我过去成功地做到了,但这次我无法让它发挥作用。

现在,我目前遇到的问题是,当我尝试在 DNS 记录中查找域密钥时,什么也没有出现。例如,当我去 protodave 并在我的域中搜索我的选择器(默认)时,我得到的是:

 DNS QUERY: default._domainkey.palabama.com
 QUERY STATUS: No DNS TXT Record found
 TXT RECORD:
Run Code Online (Sandbox Code Playgroud)

当我尝试挖掘记录时,我没有得到答案部分。
当我去 DKIMcore 时,我得到以下信息:

 This is not a good DKIM key record. You should fix the errors shown in red.
 DNS query failed for 'default._domainkey.palabama.com':NOERROR
 A public-key (p=) is required
Run Code Online (Sandbox Code Playgroud)

事情是,我已经在我的注册商的 DNS 上设置了 DK,这是分配的 dns (namecheap)。

经过几次不同的尝试,这是我在 namecheap 上的设置

 default._domainkey.mail.palabama.com.   TXT  v=DKIM1; g=*; k=rsa;      p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC0kOjYjN2gAfTuQgsyS/rGUcMbZ3zg5Pf5pHyN735OufSnkLbpYgnDJcIyQTjhbeGBPoPwlvL1fOa1/TOsp2vT9fFIFtgGXg8yVpSKrttdOCX7a3CYkQIO4WQU+2MAzT+Z3IBroTBDmjS61fhRSyoUlPBhUYTECodVu3GENkoLUQIDAQAB

 default._domainkey.palabama.com.   TXT  v=DKIM1; g=*; k=rsa;      p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC0kOjYjN2gAfTuQgsyS/rGUcMbZ3zg5Pf5pHyN735OufSnkLbpYgnDJcIyQTjhbeGBPoPwlvL1fOa1/TOsp2vT9fFIFtgGXg8yVpSKrttdOCX7a3CYkQIO4WQU+2MAzT+Z3IBroTBDmjS61fhRSyoUlPBhUYTECodVu3GENkoLUQIDAQAB
Run Code Online (Sandbox Code Playgroud)

我扔了那个mail.palabama.com。记录在想也许,因为我的 MX 记录设置为 mail.palabama.com。它会有所帮助,最初该行不在 DNS 中,并且没有任何改变。

当我在 …

domain-name-system dkim

17
推荐指数
2
解决办法
3万
查看次数

内存是空闲的,但仍在交换?

我确定这是一个非常基本的问题,但我只是想了解运行基于 Rails 的站点的 Ubuntu Hardy 服务器发生了什么。似乎我有可用内存,但系统报告它仍在交换内存(除非我读错了?)。

这是free -m输出

              total       used       free     shared    buffers     cached
Mem:          1024        905        118          0         33        409
-/+ buffers/cache:        462        561
Swap:         2047         95       1952
Run Code Online (Sandbox Code Playgroud)

任何人都可以向我解释一些可能的原因,即它始终保持 95MB 的交换空间(它永远不会更少)?我只是在寻找一些关于我可以检查的内容的线索,这些线索会向我确切地解释 Linux 中如何利用内存。

ubuntu memory swap

7
推荐指数
2
解决办法
1952
查看次数

/usr/local/bin 应该由 root 拥有吗?

包管理器Homebrew(我在 OS X 上,但我对基于 Unix 的安全性一般很好奇,因为它与目录权限有关)将所有者设置/usr/local/bin为我的用户(root默认情况下,对吗?),这意味着现在我可以通过简单地将它们移动到/usr/local/binsudo不需要)来安装可执行文件。

  1. 我对此是否正确,通常/usr/local/binroot?
  2. /usr/local/bin与您的普通用户交流是不是一个巨大的安全问题,因为现在我运行的任何软件都可以代表我安装程序而无需我的密码?

security package-management mac-osx file-permissions

7
推荐指数
1
解决办法
2078
查看次数

连接池应该在我的数据库服务器还是我的应用服务器上运行?

我正准备开始使用 PGBouncer,但我不确定是否应该在我的数据库服务器或应用程序服务器上使用它。如果它在应用程序服务器上,则必然有多个连接池,而不是一个中央连接池供应用程序服务器共享,但随后必须为每个新查询重新创建 TCP 连接,而不是也被池化,大概。哪个是使用像 PGBouncer 这样的连接查看器的“正确”方法,我对每个的观点是否有效?

笔记:

对于那些偶然发现这个问题的人,请参阅PgBouncer 常见问题解答(最后一个问题)。

postgresql database database-connection

5
推荐指数
1
解决办法
2575
查看次数

如何在负载均衡器后面使用 SSL 并仍然获得客户端 IP?

请注意,由于网络安全相关问题,我无法在负载平衡器上使用 SSL 终止。

我得到的客户端 IP 当然是负载均衡器的 IP。我知道负载平衡器在没有我的密钥的情况下无法修改 HTTPS 消息,但是在使用 SSL 进行负载平衡时是否有另一种方法来获取客户端 IP 地址,例如可能只是在 TCP 级别进行负载平衡,或者其他什么?

ssl load-balancing http-headers

5
推荐指数
1
解决办法
6108
查看次数

这是我的系统日志中的什么内容,我应该担心吗?

我在以下内容中看到很多/var/log/syslog

Jun 21 14:36:15 my-server kernel: [416219.080061] iptables denied: IN=eth0 OUT= MAC=ff:ff:ff:ff:ff:ff:the-mac-address:08:00 SRC=0.0.0.0 DST=255.255.255.255 LEN=328 TOS=0x00 PREC=0x00 TTL=128 ID=10081 PROTO=UDP SPT=68 DPT=67 LEN=308 
Run Code Online (Sandbox Code Playgroud)

这似乎几乎每分钟都在发生。这只是我的服务器试图广播某些东西而我自己的 iptables 拒绝它发生吗?如果是这样,什么样的服务可能会做这样的事情,我应该允许吗?我在 Ubuntu 12.04.2 上运行 Postgres 9.2.4,除了基本的预安装包之外,基本上没有其他服务。

ubuntu iptables syslog

4
推荐指数
2
解决办法
4667
查看次数

如果我在运行 Postgres 的情况下“sudo reboot”我的 Ubuntu 12.04.2 服务器,我会丢失数据吗?

我一直想知道sudo reboot运行 Postgres(即 9.2.4)的服务器是否会(或肯定会)导致数据丢失或其他问题(例如,无法在系统启动时再次启动服务器)。或者,确实reboot向进程发送适当的信号以允许它们正确关闭(例如,包括允许完成事务等)。

postgresql

3
推荐指数
1
解决办法
458
查看次数