SCO UNIX系统网络风险防范

【SCO UNIX系统网络风险防范】
SCO Unix操作系统因其运行稳定,对硬件配置的要求不高,目前正被广泛应用于银行、电信、保险、证券、铁路等行业,但这些行业一般都不是单机应用,而是使用内部网络进行数据处理,对系统安全性的要求又相当高 。SCO Unix支持网络功能,但网络安全要靠系统管理员手工限定 。
笔者单位用装有SCO OpenServer5.0.5版本操作系统的IBM Netfinity系列服务器作为应用系统的前置机,后台主机用RS/6000小型机,考虑到应用的实际情况,租用电信的DDN线路来连接各前置机和主机 。整个网络除本单位内部各主机可以互通外,还与人行和其他中间业务单位的主机互通 。虽然在路由器上进行了一定的安全设置,但网络上主机互通给系统带来了极大的不安全因素 。笔者根据多年的系统维护和开发经验,对单位的所有前置机进行了一定的安全限制,最大限度地保障了应用需要和系统安全,以下步骤均在SCO OpenServer5.0.5操作系统上应用通过 。
1.为所有前置机建立信任关系
中心机房备有一台和前置机相同配置的服务器,专门用来管理前置机,也用此机对前台进行应用程序的上传更新 。通过下面的方法建立信任关系,如管理机的主机名为sqls,地址为130.30.1.200,则在前置机的/etc/hosts文件中加入一行130.30.1.200 sqls,然后在前置机的超级用户根目录下创建文件.rhosts,文件写入sqls后保存 。SCO Unix操作系统安装时并没有.rhosts文件,需要建立信任关系时,必须手工建立此文件 。建立好信任关系后,管理机就可以直接用rlogin、rcp等远程命令来管理和控制前置机了,所有这些r 开头的命令都不需要输入密码 。而前置机则不允许直接rlogin 到管理机上,所以信任关系的建立是单向的 。我们要求下级信用社的系统管理员自己掌握超级用户和一般用户的密码,并定期更换 。建立信任关系后,日常管理和维护就方便了 。
2.修改Telnet、Ftp端口参数
我们知道,无论是Windows还是Unix操作系统,都有端口号这个概念,计算机之间的通讯,是通过对应的端口号实现的 。一般系统都用缺省的端口号,比如Ftp的端口号为21,Telnet的端口号为23,Http的端口号为80 等,当我们使用Telnet登录到其它计算机上时,系统就使用默认端口号23,这是很不安全的 。笔者对辖内的前置机和管理机进行了Telnet和Ftp端口号的更改,具体为编辑/etc/services文件,找到想要修改的Telnet和Ftp行,修改端口号,比如把Telnet的23/tcp改成6364/tcp,但不要用/etc/services文件中已存在的端口号 。这样使用Telnet命令登录到该主机时,必须给出端口号,即用Telnet xxx.xxx.xxx.xxx 6364 才能进行登录,否则会被系统拒绝 。通过修改端口号可以使不知道相应端口号的远程用户不能登录,进一步提高了系统的安全性 。
3.禁止对前置机使用Ftp传输文件
如果系统对用户的Ftp权限不做限制,那么用户不仅可以通过Ftp来获得操作系统的重要文件(如/etc/passwd、/etc/hosts等),还可以进一步得到其他重要的数据文件,造成数据的泄露 。笔者单位的前置机上因装有多个应用系统,建立的用户也比较多,所以应对大部分用户的Ftp权限进行限制 。具体做法是,创建编辑/etc/ftpusers文件,把不允许使用Ftp功能的用户写到该文件中,每个用户占一行,保存后即时生效,这些用户就不能使用Ftp命令进行连接了 。
4.禁止外来主机远程登录到前置机
笔者单位以前曾经发生过这样的事情,某个信用社的系统管理员利用其他途径获得了另外一个信用社前置机的用户密码,于是他就通过自己的主机远程登录到另外那个信用社的计算机上,进行一些非法操作 。虽然没造成严重的后果,但这件事给笔者敲响了警钟,必须严格限制非法登录 。笔者首先在/etc/profile文件中case "$0" in -sh | -rsh | -ksh | -rksh)下添加限制非授权主机远程登录代码:

推荐阅读