从linux安全的angular度来看,我需要哪些服务或程序?

我只是看我的Web服务器的日志文件,看到一些SSHD的日志条目。 我可以看到有人不断尝试通过ssh连接错误的用户名和密码。

我只是偶然看到这一点。

除了sshd日志,我还应该注意哪些其他程序/服务/日志可能的黑客行为。

Linux,ssh,Apache和其他服务器的基本构build块是相当安全的,因为你有强密码,ssh密钥和类似的守卫。 正确的基础是强制性的。

但!

在这些构build模块之上运行的应用程序(如WordPress,Drupal或您的自定义软件)更有可能存在安全漏洞。 现在很多黑客正在通过特制的URL,包括SQL,奇怪的字符以及类似的东西。 这些是你应该为自己准备的东西。 考虑一下你的服务器可能被滥用的方式,并试图阻止它们发生。 即使有人无法通过某些Web应用程序安全漏洞获得根源,但即使没有最终的根访问权限,也可以执行诸如垃圾邮件或拒绝服务等大量滥用行为。

例如,通过制作您的webroot和/ tmp(或者您为PHP定义的任何临时目录) noexec,nosuid,nodev来加强PHP的安全性是一个好主意所以即使某人成功上传恶意的C源文件,无法编译或至less可以轻松地运行system("./myevilrootgainer"); 。 这种简单的预防措施并不是因为PHP本身并不安全(有时可能与所有软件一样),而是因为它使得应用程序中的安全漏洞变得更加困难。

基本上你应该看到任何对应于networking可用服务的日志。 特别是如果这是开放的整个互联网。

由于您可能安装的服务列表非常庞大,因此实际上没有办法给您一个列表。

例如,如果你安装了一个像mysql这样的数据库服务器,并把它提供给networking,那么你应该看mysql日志。

如果SSH是开放的,那么你应该看你的身份validation日志。 在这个网站上search大量的问题,其中包括使用denyhosts , fail2ban和/或防火墙来限制暴露于powershellSSH尝试的风险。

您应该设置一个防火墙来阻止访问系统上的任何东西,除非您实际需要公开提供。 任何你提供的东西都应该被监控。

哪些服务和Porgram?

他们全部。

不完全是。

您应该确保您不需要的任何服务都不会运行。 为了确保他们不能运行,

对于只能在本地访问的任何服务,应该在防火墙和configuration(可能的话)上阻止外部访问。

确保您及时实施供应商/分销商安全补丁。

当我告诉他们在build立安全pipe理策略时,让他们留下日志直到名单上的最后一件事情时,人们通常会感到惊讶:日志只会告诉您合法的访问,失败的访问和function问题 – 其中没有一个与保持糟糕家伙。

至于networkingIDS? 同样的事情 – 在大多数互联网连接的机器上,你将看到许多失败的攻击,你将无法察觉,更不用说回应真实的事情。

对任何可执行文件/库使用基于主机的IDS(文件完整性检查器)。 它并不能阻止攻击,但是如果你的系统至less受到攻击,那么你有可能从攻击中恢复过来。

除了Tripwire或L5以外,如果这个系统在互联网上扮演着一个服务器的angular色,或者托pipe任何有价值的数据,我build议定期运行一个rootkit检查器(例如rkhunter)

如果你的目标不是保持你的系统安全,而是更好地理解人们如何附加系统,那么这是一个不同的故事(但不要试图在有价值的系统上这样做)。 是的,你可能会从日志中得到一些有用的信息(特别是消息,安全和httpd / access.log,httpd / error.log)。

你可能对/var/log/...感兴趣(名字可能与你的Linux风格不同,我使用的是Ubuntu 10.04)

  • auth.log日志身份validation,如gdmlogin,su,用户/ groupadd活动,屏幕保护程序解锁,imap / pop3连接, cron会话…

  • apparmor/* (如果安装apparmor)显示程序奇怪的行为(如访问他们不应该的目录)

  • messagessyslog ,基本上是一般日志文件,当没有提供特定的日志文件。

  • mail.log (或maillog )检查您的smtp(如果有)服务器活动

  • samba/* (如果正在运行)检查谁连接到您的samba共享

  • mysql/* (如果相关)检查login列表

根据您的发行版,您可能有也可能没有上述文件。 您可以定期在/var/log目录上执行ls -lrt以查看哪些日志文件发生更改,并检查相关的日志文件。

我只是推荐开放式软件“SNORT”。 该软件为Linux系统日志提供了一个有利的视angular,并且作为IPS来应对大多数入侵企图。

SNORT现在对你来说可能不是一个好的select,除非你对基础知识更加熟悉,即使如此,SNORT在networking服务器上的实用性也是值得怀疑的,除此之外它还不是一个IPS。 如果所有的系统正在做HTTP / S应用程序页面,我会去WAF路线。 否则,在这个阶段,第一个答案是你最好的select。 熟悉正在运行的进程和服务以及防火墙允许的内容。