多种方法管理Opensolais 防火墙

原创
安全 网站安全
对于连接互联网上的服务器系统,不管是什么情况都要明确一点:网络是不安全的。因此,虽然创建一个防火墙并不能保证系统100%安全,但却是绝对必要的

【51CTO.com独家特稿】对于连接互联网上的服务器系统,不管是什么情况都要明确一点:网络是不安全的。因此,虽然创建一个防火墙并不能保证系统100%安全,但却是绝对必要的(51CTO王文文:去年底的时候甲骨文说要加大对OpenSolaris的投入,也不知道他们说话算不算数,不过我们到现在都没看见Opensolaris的新版本出来。即使他们说话不算数,Solaris以及Opensolaris强大的功能和久经考验的Unix特性都将继续影响技术人群)。

一、 使用命令行管理Opensolais 防火墙

1.查看IPFilter包过滤防火墙运行情况  

◆OpenSolaris上IPFilter 的启动和关闭是由 SMF 管理的, IP 过滤防火墙随操作系统一起安装。但是,缺省情况下已经启用包过滤。使用以下命令查看。

# svcs |grep ipf

Online    

4:36:28 svc:/network/ipfilter:default

2.查看网卡接口

# ifconfig -a

lo0: flags=2001000849 mtu 8232 index 1
      
inet 127.0.0.1 netmask ff000000

nfo0: flags=1100843 mtu 1500 index 2
       
inet 192.168.0.17 netmask ffffff00 broadcast 192.168.0.255
       
ether 8:0:27:60:d7:88

lo0: flags=2002000849 mtu 8252 index 1
      
inet6 ::1/128

可以看到网卡接口是nfo0。

3 编辑一个防火墙规则

打开服务器22 端口允许ssh远程登录。系统管理员通常使用进行ssh远程登录,所以必须开放22端口。在IPFilter配置文件/etc/ipf/ipf.conf添加一行:

pass in log quick from any to any port = 22

IPFilter配置文件/etc/ipf/ipf.con 缺省情况下只有一些说明文件,没有任何规则。

4 启动服务

#svcadm refresh network/ipfilter

5. 重新引导计算机,使用命令:“reboot”

6.从客户端计算机测试

下面从一台和Opensorlaris连接的windows 计算机使用putty工具进行ssh连接检测,如图-1。  

图 -1从客户端计算机进行ssh操作 #p#

二、 使用Webmin 管理防火墙

1 Webmin简介

大多数人在配置Unix的各种服务时都会感到头痛,因为Unix下的服务太多,而且每种服务看起来都不容易配置。熟悉Windows环境下配置网络服务的人对Unix下手工编写配置文件一般都很不习惯,在Unix下,可以安装一种可以通过浏览器对Unix服务器上的各项服务器进行配置的工具——Webmin。Webmin是一款优秀的远程Unix/Linix服务器的管理软件,通过控制面版(支持各种语言,包括简体中文),它可以让用户轻松地配置Unix下的各种服务器,甚至可以远程配置目前Unix上运行的所有服务,默认端口是10000,支持SSL加密。它还可以让用户使用远端电脑上的浏览器,直接修改服务器里的使用者帐号、Apache、DNS和文件分享等设定。Webmin的管理工作是通过Web页面的方式来实现的,所有操作简单而且直观,非常适合初学者。Webmin目录下的 os_list.txt列出了当前Webmin 支持的UNIX系统。

相对于其他GUI管理工具而言,Webmin具有如下显著优点 

◆Web管理方式使得Webmin同时具有本地和远程管理的能力;  

◆插件式结构使得Webmin具有很强的扩展性和伸缩性。目前Webmin提供的标准管理模块几乎涵盖了常见的Unix管理,而且第三方的管理模块也被不断地被开发出来;  

◆访问控制和SSL支持为远程管理提供了足够的安全性;  

◆国际化支持,提供多国语言版本

除了管理Unix系统外,Webmin还提供了管理Webmin本身的模块。对Webmin本身的管理主要包括: 

◆模块管理:这一部分包括插入一个模块、删除一个模块、复制一个模块和重新设置模块所在的类别等。另外Webmin还提供了直接从Internet上升级的功能。  

◆界面风格管理:Webmin提供多种界面风格,0.91版中提供了KDE和Caldera两种界面风格。Webmin的界面风格实际上也是一个模块,你可以插入一个新的界面风格。除此之外,你还可以修改Webmin的一些界面参数,如页面背景颜色、表格背景颜色等。  
◆国际化支持:Webmin的一个很大特色是提供多国语言支持。目前Webmin支持的语言有:英、法、德、意、中、日、韩等语言。  

◆Webmin服务器群:Webmin还提供了发现和管理多个Webmin服务器的功能,这为同时管理多台UNIX服务器提供了极大的便利。  

◆活动日志:Webmin的活动日志主要用于审计系统的管理活动。

2 下载配置Webmin

◆使用IPS方式安装Webmin

$ pfexec pkg install SUNWwebmin

◆使用脚本初始化Webmin

$ pfexec /usr/sfw/lib/webmin/setup.sh

。。。。。。

#设置管理端口可以使用缺省的10000端口

Login name (default admin): Login password:

***********************************************************************

Webmin has been installed and started successfully. Use your web

browser to go to
 
http://opensolaris:10000/

and login with the name and password you entered previously.

◆修改Webmin用户配置配置文件添加一个登录用户cjh

#gedit /etc/webmin/miniserv.users

root:x:0

cjh:x:101

◆修改Webmin访问控制文件/etc/webmin/webmin.acl

添加用户如下:

cjh: acl adsl-client apache at backup-config

bandwidth bind8 bsdexports burner cfengine change-user

cluster-copy cluster-cron cluster-passwd cluster-shell

cluster-software cluster-useradmin cluster-usermin

cluster-webmin cpan cron custom dfsadmin dnsadmin dovecot

exports fdisk fetchmail file filter firewall format frox

fsdump grub heartbeat hpuxexports htaccess-htpasswd idmapd

inetd init inittab ipfilter ipfw ipsec jabber krb5 ldap-client

lilo lpadmin lvm mailboxes mailcap majordomo man mon mount mysql

net nis openslp pam  passwd phpini postfix postgresql ppp-client

pptp-client pptp-server procmail proc proftpd pserver qmailadmin

quota raid rbac samba sarg sendmail sentry servers sgiexports shell

shorewall smart-status smf software spam squid sshd status stunnel

syslog syslog-ng telnet time tunnel updown useradmin usermin vgetty webalizer

webminlog webmin wuftpd xinetd zones

◆重新启动Webmin服务

#svcadm restart webmin

◆使用webmin

在本地或其他相连主机的浏览器中输入主机名(或主机IP地址)及端口号,这里我们

输入http://localhost:10000,系统将打开Webmin的登录界面如图-2。


 图-2 Webmin的登录界面

在Webmin的登录界面中,输入用户名(admin)和密码,单击Login按钮,系统将进入Webmin的主界面。

3初始化防火墙配置

打开Webmin网址选择网络配置下的“IPFilter Firewall”的“Reset Firewall”按钮进入防火墙初始化界面如图-3。  

图-3 防火墙初始化界面  

◆用Webmin配置防火墙和NAT服务,本质上是编辑和操作/etc/ipf/ipf.conf和/etc/ipf/ipnat.conf文件,所有配置结果都保存在以上两个文件。

Webmin 为防火墙预置了五种选择:

◆Allow all traffic

允许使用进出流量,相当于在/etc/ipf/ipf.conf 文件中只有两句:

pass out all

pass in all

◆Do network address translation on external interface:

进行NAT 转换。

◆Block all incoming connections on external interface:

阻塞所有进入选定网卡的流量。相当于在/etc/ipf/ipf.conf 文件中有如下规则:

# Skip next rule for external interface

skip 1 in quick on e1000g0 all

# Allow all traffic on internal interface

pass in quick all keep state

# Accept responses to DNS queries

pass in quick proto udp from any to any port 1024 <> 1024 keep state

# Accept responses to our pings

pass in quick proto icmp all icmp-type echorep keep state

# Accept notifications of unreachable hosts

pass in quick proto icmp all icmp-type unreach keep state

# Accept notifications to reduce sending speed

pass in quick proto icmp all icmp-type squench keep state

# Accept notifications of lost packets

pass in quick proto icmp all icmp-type timex keep state

# Accept notifications of protocol problems

pass in quick proto icmp all icmp-type paramprob keep state

block in all

pass out all

◆Block all except SSH and IDENT on external interface:

阻塞所有进入选定网卡的流量。但是不包括SSH 和IDENT 连接。相当于在/etc/ipf/ipf.conf 文件中有如下规则:

# Skip next rule for external interface

skip 1 in quick on e1000g0 all

# Allow all traffic on internal interface

pass in quick all keep state

# Accept responses to DNS queries

pass in quick proto udp from any to any port 1024 <> 1024 keep state

# Accept responses to our pings

pass in quick proto icmp all icmp-type echorep keep state

# Accept notifications of unreachable hosts

pass in quick proto icmp all icmp-type unreach keep state

# Accept notifications to reduce sending speed

pass in quick proto icmp all icmp-type squench keep state

# Accept notifications of lost packets

pass in quick proto icmp all icmp-type timex keep state

# Accept notifications of protocol problems

pass in quick proto icmp all icmp-type paramprob keep state

# Allow connections to our SSH server

pass in quick proto tcp from any to any port = 22 keep state

# Allow connections to our IDENT server

pass in quick proto tcp from any to any port = 113 keep state

block in all

pass out all

◆Block all except SSH, IDENT, ping and high ports on interface:

阻塞所有进入选定网卡的流量。但是不包括SSH 和IDENT、ping 连接关闭1024 以上端口。

3 防火墙进阶配置

除了预置了五种选择,还可以在以上基础上进行进阶配置,以配置出更加符合每个人的实际需求的配置如图-4。 

 

 图-4 编辑防火墙规则

您可以在Rule comment 栏目直接输入防火墙配置规则进行进阶配置然后保存配置。

4 配置NAT

如果原来已经设置启用了中级或高级防火墙策略,那就必须注意在这里配置转发(Forwarded packets (FORWARD))规则,允许NAT通信的有关协议、端口的流量由内向外通过,使NAT真正生效。配置界面如如图-5。

 


  图-5 配置NAT

假如我们允许所有的通信通过,规则如下:

map e1000g0 192.168.0.11/24 -> 192.168.0.17/24

然后按“Save”按钮保存,再按“Apply Configuration”按钮,使规则即可生效。 #p#

三、 使用GUI 工具管理防火墙

尽管IPFilter技术十分容易了解,并且对于在网络传输上设置具体的限制特别有用,  —般而言,配置IPFilter防火墙存在一些缺点,因为防火墙配置涉及编写规则,常用规则语言的话法通常对于初学者(特别是Windows 初学者)难于理解,这样数据包过滤可能难于正确配置。当然如果您以前使用Freebsd 那么掌握IPFilter包过滤防火墙就非常简单了。

规则表很快会变得很大而且复杂,规则很难测试。随着表的增大和复杂性的增加,规则结构出现漏洞的可能  性也会增加。这种防火墙***的缺陷是它依赖一个单一的部件来保护系统。如果这个部件出现了问题,会使得网络大门敞开,而用户其至可能还不知道。在一般情况下,如果外部用户被允许访问内部主机,则它就可以访问内部网上的任何主机。包过滤防火墙只能阻止一种类型的IP欺骗,即外部主机伪装内部主机的IP,对于外部主机伪装外部主机的IP欺骗却不可能阻止,而且它不能防止DNS欺骗。虽然,包过滤防火墙有如上所述的缺点,但是在管理良好的小规模网络上,它能够正常的发挥其作用。一般情况下,人们不单独使用包过滤防火墙,而是将它和其他设备(如堡垒主机等)联合使用。事实上,如果读者们不是很熟悉IPFilter命令的使用方式,在这里介绍一个不错的图形管理程序,就是“System Firewall(系统防火墙)“ 。这是一个Opensolais 2010.03 发行版的一个新工具是Java 编写的。

System Firewall(系统防火墙)服务包括: 

◆防火墙政策选择 

◆默认设置防火墙策略 

◆打开程序设置策略 

◆对全系统防火墙策略设置覆盖 

◆个性化服务的防火墙策略

System Firewall(系统防火墙)选项卡介绍:

1.系统的默认设置防火墙策略选项卡

如图-6  

 

图-6 系统的默认设置防火墙策略

下面的操作支持默认选项卡: 

◆启用基于主机的防火墙服务 

◆设置全系统的政策,拒绝或允许来自特定主机,网络或接口访问。 

◆添加一个主机,网络或接口的政策 

◆编辑条目的政策 

◆删除条目从政策 

◆添加,编辑或删除异常的准入政策 

◆选择不执行任何访问策略 

◆选择使用自定义的策略文件 

◆全系统所制定的政策在此选项卡可以更改为每个个性化服务的政策。

2 .打开程序设置选项卡

如图-7 

图-7 打开程序设置选项卡

下面的操作支持打开程序设置选项卡: 

◆从选项卡打开的程序,你可以: 

◆使用添加按钮来定义一个端口,该端口的传输协议 

◆选择编辑按钮更改端口或协议规范 

◆使用删除按钮来删除一个端口

3.防火墙策略设置覆盖选项卡

如图-8 。  

图-8 防火墙策略设置覆盖

系统政策中定义的替代选项卡。在覆盖政策不能改变一个人服务的政策。你可以选择: 

◆强制执行安全政策 

◆拒绝或允许来自特定主机,网络或接口访问。 

◆添加一个主机,网络或接口的访问策略 

◆编辑条目的访问策略 

◆删除条目从准入政策

4.个性化服务的防火墙策略

如图-9 。  

图-9 个性化服务的防火墙策略

从防火墙策略选择,你可以选择一个特定于服务的防火墙策略配置。这项服务的具体政策,采取了防火墙的默认全系统的政策优先,但不是全系统覆盖的政策。对于每个服务,您可以选择: 

◆使用默认全系统准入政策>  

◆拒绝或允许来自特定主机,网络或接口访问。在选定的服务,特别是你可以: 

◆添加一个主机,网络或接口的访问策略 

◆编辑条目的访问策略 

◆删除条目从准入政策 

◆添加,编辑或删除异常的准入政策 

◆选择不强制执行安全政策

5 更改用户

所有面板让您为不同的用户或角色的变化。若要使用不同的用户,请单击窗口顶部的右上角的锁图标,旁边的用户名。在出现的对话框提示您输入用户名和密码。如果你想使用一个角色,要提供角色名称和角色密码(用户名和已被授予这一作用还必须提供帐户密码)。如图-10 。  

图-10更改用户

【51CTO.COM 独家特稿,转载请注明出处及作者!】

【编辑推荐】

  1. 网络安全中防火墙和IDS的作用
  2. 企业安全要上锁如何选购硬件防火墙
责任编辑:许凤丽 来源: 51CTO.com
相关推荐

2011-01-05 09:19:59

防火墙firewalld

2013-09-11 20:09:08

下一代防火墙NGFW

2010-09-26 13:57:19

AlgoSec防火墙分

2010-12-21 18:04:26

2012-07-13 14:43:20

防火墙防火墙策略管理

2011-08-15 13:13:26

2009-12-02 18:38:23

Suse防火墙永久关闭

2010-09-14 13:08:52

2010-12-08 09:29:27

下一代防火墙

2010-05-24 17:49:56

2011-06-27 13:31:21

2021-06-25 18:31:37

云防火墙

2011-03-16 16:23:23

保存iptables防火墙

2013-07-04 10:16:24

2011-03-25 11:18:51

2010-09-09 17:22:36

2009-09-24 13:53:53

2010-09-14 13:34:03

2014-02-27 13:46:32

华为防火墙USG9580

2012-03-12 11:21:12

虚拟防火墙虚拟化平台虚拟机
点赞
收藏

51CTO技术栈公众号