linux防火墙的问题

我对防火墙有几个一般的问题,我认为这里的社区可以帮助我。

1)所以我最近安装了Ubuntu服务器准系统。 我检查了开放的端口,没有人打开这是伟大的。 那是因为安装了防火墙还是因为没有安装应用程序?

2)我安装了一些应用程序(Apache,Postgres,ssh,Java应用程序和一些)。 在这之间,我最终开了几个港口(〜10)。 现在我有一个我需要打开的所有端口的列表。 那么,我该如何去保护他们呢? [这是一个正确的问题吗? 安装防火墙 – >允许表示需要的端口 – >拒绝使用IPtables规则rest]

这将是开放的互联网。 托pipe低stream量的电子商务网站。

3)你认为什么是我最简单的方式来准安全的服务器,[低维护开销/简单。 任何开源“软件”,可以使我的生活更轻松?]

4)最后,在上述开放端口[2]中,我有2个端口需要closures,因为它们是telnet端口。 我可以closures这些端口而不安装“防火墙”

感谢所有的帮助和圣诞快乐!!!!!!!

  1. 你没有监听端口,因为你没有监听过程。 Ubuntu在默认安装方面做得很好。 那些需要侦听端口的进程默认使用localhost(127.0.0.1)。 这可以防止直接从远程系统访问。
  2. 应用程序(如Apache和SSH服务器)预计将监听来自远程服务器的连接。 Apache有自己的ACL列表来保护访问。 除了configuration之外,还可以使用hosts.allow和hosts.deny文件保护SSH服务器的安全。 应用程序我的MySQL和PostressSQL默认应该在本地主机上侦听。 如果您需要从其他系统访问,则需要更改其侦听器configuration。 他们通常会有一个或多个保障访问的机制。
  3. 使用hosts.allow / hosts.deny作为支持该机制的应用程序。 使用像Shorewall这样的防火墙生成器来构build安全防火墙有所帮助。 了解每个应用程序自己的安全机制有助于build立机制的深度。 像logcheck这样的工具可以监视你的日志,并通知你可能需要检查的一些事件。 我使用Munin来监视我的系统,并在某些情况下提醒我有关问题。 这将取代以前Nagion和MRTG的使用,用于监视和绘制系统使用情况。
  4. 如果telnet运行,您可以通过停止服务closures端口。 除非真的需要,否则请删除telnet软件包,并用ssh-serverreplace它。 大多数telnet服务器都支持使用hosts.allow / hosts.deny来限制访问。 这也适用于在inetd或xinetd下运行的应用程序。 MySQL和PostgreSQL应该只监听127.0.0.1,这是安全的,不能从服务器外部直接访问。

我通常的Shorewall防火墙configuration从服务器上的接口数量(或访问区域:NET,LAN,DMZ)的示例configuration开始。 请注意,如果这些区域共享接口和/或路由器,那么它们的安全性可能会低于它们。 然后我根据需要调整规则。

我经常禁用任何默认出站访问策略。 这些被replace为允许在所需端口(DNS,NTP,SMTP等)上出站访问的规则。

1.)你总是可以用iptables检查它-L这个输出没有防火墙:

Chain INPUT (policy ACCEPT) target prot opt source destination Chain FORWARD (policy ACCEPT) target prot opt source destination Chain OUTPUT (policy ACCEPT) target prot opt source destination 

2.)是的,只要允许在你的接口input链(即eth0)的端口,并放弃其他的一切。

你还应该做一些其他的事情,如:

  • 空值
  • 圣诞节(SYN + FIN + ACK)
  • SYN-FIN

不要忘记设置重要的sysctl选项

3.)简单的方法:

  • 防火墙: http : //easyfwgen.morizo​​t.net/gen/
  • 日志分析工具,通知您有关威胁
  • 其他工具,做主动检查(即fail2ban)
  • 监控工具,通知您有关您的机器状态(即zabbix,nagios)

4.)input以下命令

 root@host:~# netstat -npl | grep LISTEN tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1417/telnet 

有趣的数字是telnet之后的1417(processnumber)。 用kill -9 1417杀死它

但要小心你杀了什么!

如果你不想杀死它,你可以使用防火墙来拒绝这个端口被使用…

1)你可以(自己检查一下)安装ssh,并试着看看是否在另一台有nmap的计算机上显示22端口是开放的。 2)这是一个很大的答案。 你必须确切地知道你想给你的服务什么样的保护… 3)? 4)closuresinetd服务