网站主机安全档案全集(5) 在Redhat 9.0默认安装完成后,请进入/etc/rc2.d和/etc/rc3.d,将系统启动时打开的不必要服务都在这里注销掉。这些服务通常包括sendmail、NFS、rpc等,注销的方法是将S打头的相关服务文件重命名(注意不要命名为S或K 打头的其他文件)。 例如将/etc/rc2.d/S80sendmail 改名为 X80sendmail 将/etc/rc3.d/S13portmap S14nfslock S28autofs S80sendmail 改名为 X13portmap X14nfslock X28autofs X80sendmail RPC的安全问题历来很多,请注意一定不要打开111端口。 改完后需要重启Linux服务器。 如果你的Linux直接面对因特网,那么可以配置它的防火墙来实现访问控制。Linux2.4内核支持iptables,2.4以下支持ipchains,它们的语法差不多,都是很好的防火墙工具。例如,如果你只允许从因特网访问SSH和WWW服务,那么可将如下语句加进/etc/rc.d/rc.local文件: /sbin/iptables -F /sbin/iptables -A INPUT -p tcp -d 211.96.13.* --dport 80 -i eth0 -j ACCEPT /sbin/iptables -A INPUT -p tcp -d 211.96.13.* --dport 22 -i eth0 -j ACCEPT /sbin/iptables -A INPUT -i eth0 -j DROP 说明:iptables –F刷新iptables规则表,接下来两条语句允许任何人访问211.96.13.*这个地址的WWW和SSH服务,最后一条DROP语句将不符合规则的其他访问过滤掉。这样系统在启动后即可自动运行防火墙规则。 通常在Freebsd或Linux上会运行Mysql数据库服务,不要将数据库服务端口(3306)暴露在防火墙之外。如果运行Apache,同样要做如Freebsd的修改。 4. Solaris的初始安全配置 关于Solaris的安全配置网上有一篇非常好的文章,叫做《The Solaris Security FAQ》,照着做就可以了。 1) 禁止root从网络直接登陆:修改/etc/default/login文件,确保CONSOLE=/dev/console被设置,该行只允许root从控制台登陆。将root用户加入/etc/ftpusers,保证root不可以远程使用ftp。 2) 禁止rlogin和rsh访问:删除/etc/hosts.equiv和/.rhosts文件,从/etc/inetd.conf文件里注释掉所有以r打头的服务。 3) 帐号控制:删除、锁定或注释掉不必要的系统帐号,包括sys/uUCp/nuucp/listen等 4) 改变/etc目录的访问权限:该目录下文件不应该对同组用户可写,执行:chmod –R g-w /etc (不推荐) 5) 在solaris2.5 以上版本的系统中,创建/etc/notrouter文件来关闭solaris默认的路由转发。 6) 禁止automounter:删除/etc/auto_*配置文件,删除/etc/init.d/autofs 7) 禁止NFS服务:删除/etc/dfs/dfstab,重命名/etc/rc3.d/S15nfs.server,重命名/etc/rc2.d/S73nfs.client (不要再以S打头) 8) 禁止rpc服务:重命名/etc/rc2.d/S71RPC 9) 修改/etc/inetd.conf文件,注释掉大部分不必要服务,只保留telnet和ftp服务,然后重启inetd进程。 10) 给系统打补丁:包括各版本Solaris通用补丁和单个补丁集合。 11) 将如下三行加进/etc/init.d/inetinit文件: ndd -set /dev/ip ip_forward_directed_broadcasts 0 ndd -set /dev/ip ip_forward_src_routed 0