分享
 
 
 

为Linux 安装套件强化系统安全

王朝system·作者佚名  2006-11-24
窄屏简体版  字體: |||超大  

不少人开始广泛谈论入侵网路主机的话题, 而 Linux 与 FreeBSD 则成为近日主要的攻击对象, 包括像 imapd 与 BIND 程式里的 buffer overflow 问题 。

每天, 各式各样的「系统漏洞」, 都会在 BUGTRAQ 邮递论坛中宣布, 此一邮递论坛已有将近 20,000 位订阅者。 ( 若是您只想订阅一份系统安全相关的邮递论坛, 那麽这个不容错过 )。

假设上述的 19,305 位订阅者当中, 有至少一位打算写个 for() 回圈, 配合公开的系统漏洞攻击程式, 藉以快速取得网路上主机的控制权... 事实上这样的假设并不为过。

如此一来, 您的电脑早晚会成为下一个遭受攻击的目标, 到时候, 您可能就措手不及了。

或许有些「专家」已经让您以为, 安装及维护一部安全的电脑, 有如「太空科学」般地复杂, 事实上没那麽难啦。 拥有一套完善而健全的系统管理措施, 才能保障您免於来自全球网路的威胁, 而本文讨论的便是, 我在规画 Red Hat Linux 网路系统时, 一般会采取的预防措施。 虽然文中提供了保障系统安全的指引, 但它绝不是一份完整的参考说明。

下列的步骤, 用意在使您的系统, 不要成为网路程式安全漏洞公开後的受害者。 请特别注意: 如果您不确定清楚自己在做什麽, 那麽就别动手。 有些步骤是假设, 您已经具备程度之上的相关知识。 文末另外还附上一些建议的参考读物。

系统安全之实作步骤

1. 将系统中所有没必要的网路服务全部移除。

可以连到您电脑的方式越少, 表示入侵者恶闯的途径越少。 把 /etc/inetd.conf 档案中, 所有不需要的项目都加注取消, 如果系统并不需要 telnet, 那就将它取消, 诸如 ftpd、 rshd、 rexecd、 gopher、 chargen、 echo、 pop3d 等, 也是同样的处理原则。 改完 inetd.conf 档案後, 别忘了要做个 'killall -HUP inetd' 动作。 另外, 也别忽略 /etc/rc.d/init.d 目录里的东西, 有些网路服务 ( 像 BIND、 印表机伺服程式 ) 是独自执行的程式, 透过目录里的命令稿来启动。

2. 安装 SSH。

SSH 是一个用来取代 'r' 系列指令的程式, 原本那些 Berkeley 版本的程式已经老旧了。 下列是摘自 http://www.cs.hut.fi/ssh 网页的资料:

Ssh (Secure Shell) 是一个用来登入网路主机、在远端主机上执行指令、 或是在两台主机间搬移档案的程式。它提供了强大的认证功能, 并确保能够在网路上进行安全的资料通讯。它额外还能够处理一些事情, 可能会是有心钻研之高手所感兴趣的。 请由 http://ftp.rge.com/pub/ssh 下载 SSH 程式。

3. 使用 vipw(1) 把所有不淮登入的帐号全都锁起来。 值得注意的是, 那些没有指定 login shell 的帐号, Red Hat Linux 会预设将它们指定为 /bin/sh, 这种情况可能不是你所期望的。 同时要确定, 您的使用者帐号中没有把密码栏给空下来, 下列是一个正常之密码档案的部份内容:

daemon:*:2:2:daemon:/sbin:/bin/sync

adm:*:3:4:adm:/var/adm:/bin/sync

lp:*:4:7:lp:/var/spool/lpd:/bin/sync

sync:*:5:0:sync:/sbin:/bin/sync

shutdown:*:6:0:shutdown:/bin:/sync

halt:*:7:0:halt:/sbin:/bin:/sync

mail:*:8:12:mail:/var/spool/mail:/bin/sync

news:*:9:13:news:/var/spool/news:/bin/sync

uucp:*:10:14:uucp:/var/spool/uucp:/bin/sync

operator:*:11:0:operator:/root:/bin/sync

games:*:12:100:games:/usr/games:/bin/sync

gopher:*:13:30:gopher:/usr/lib/gopher-data:/bin/sync

ftp:*:14:50:FTP User:/home/ftp:/bin/sync

nobody:*:99:99:Nobody:/:/bin/sync

4. 移除所有 root 所拥有之程式的 's' 位元权限, 如果它根本不需要这样的权限。 这个动作可以由 'chmod a-s' 指令完成, 後面接的参数, 便是您要改的档名。

上述所提之程式包括以下各类, 但不限於此:

您从来不会去使用的程式

您不希望 root 之外的使用者会去执行的程式

偶而会用, 但以 su(1) 变成 root 再去执行, 也无所谓的程式

我把自己会取消权限的程式列在下面, 并在前面放了星号 (*)。 记住, 由於您的系统仍然需要一些 suid root 的程式, 才能正常地执行, 因此要特别地小心。

另一种方式, 您可以建立一个叫做 'suidexec' 的特殊群组名称, 然後将可信赖的使用者帐号设在里面, 使用 chgrp(1) 指令将所有 suid 的程式改成属於 suidexec 此一群组, 并将其他使用者可以执行的权限除掉。

# find / -user root -perm "-u+s"

*/bin/ping

*/bin/mount -- 应该只有 root 才可以挂上档案系统

*/bin/umount -- 同上

/bin/su -- 别乱改它啊!

/bin/login

/sbin/pwdb_chkpwd

*/sbin/cardctl -- PCMCIA 卡的控制工具程式

*/usr/bin/rcp -- 改用 ssh

*/usr/bin/rlogin -- 同上

*/usr/bin/rsh -- "

*/usr/bin/at -- 改用 cron, 或两者都停用

*/usr/bin/lpq -- 改装 LPRNG

*/usr/bin/lpr -- "

*/usr/bin/lprm -- "

*/usr/bin/mh/inc

*/usr/bin/mh/msgchk

/usr/bin/passwd -- 别乱改它啊!

*/usr/bin/suidperl -- 每个新版的 suidperl 好像都有buffer overflow 的问题

*/usr/bin/sperl5.003 -- 只有必要时才用它

/usr/bin/procmail --

*/usr/bin/chfn

*/usr/bin/chsh

*/usr/bin/newgrp

*/usr/bin/crontab

*/usr/X11R6/bin/dga -- X11 里也有许多 buffer overflow 的问题

*/usr/X11R6/bin/xterm -- "

*/usr/X11R6/bin/XF86_SVGA -- "

*/usr/sbin/usernetctl

/usr/sbin/sendmail

*/usr/sbin/traceroute -- 您应该可以忍受偶而打一下 root 密码吧

5.升级 sendmail。 从 ftp://ftp.sendmail.org/pub/sendmail 下载最新的原始码档案, 解开後阅读其说明文件, 如果您还有点多余的时间, 可以安装 smrsh ( 附随在 sendmail 里 ), 许多人所关心的 sendmail 安全问题, 如寄信给某些危害安全的程式, 这个程式大都考虑到了。 最後编辑 sendmail.cf 档案, 把 'PrivacyOptions' 选项设定为 'goaway':

O PrivacyOptions=goaway

如果您不打算收取网际网路上的电子邮件, 千万不要将 sendmail 以收信状态 (sendmail -bd) 来执行! 在上述的情况下, 请将 /etc/rc.d/init.d/sendmail.init 取消, 并执行 'killall -TERM sendmail' 命令。 不过, 您还是可以寄信到外面的。

6.如果您有使用 BIND, 也要记得升级。 最新版的 BIND 可以在 http://www.isc.org 找到, 不然, 请将它们全部关闭掉。

7.重新编译核心程式。 如果预设的核心程式太大, 我通常就会重新编译它。 提示: 请将有关防火墙的选项全部打开, 即使您的电脑并不是防火墙。

CONFIG_FIREWALL=y

CONFIG_NET_ALIAS=y

CONFIG_INET=y

# CONFIG_IP_FORWARD is not set

# CONFIG_IP_MULTICAST is not set

CONFIG_SYN_COOKIES=y

CONFIG_RST_COOKIES=y

CONFIG_IP_FIREWALL=y

CONFIG_IP_FIREWALL_VERBOSE=y

# CONFIG_IP_MASQUERADE is not set

# CONFIG_IP_TRANSPARENT_PROXY is not set

CONFIG_IP_ALWAYS_DEFRAG=y

CONFIG_IP_ACCT=y

# CONFIG_IP_ROUTER is not set

# CONFIG_NET_IPIP is not set

CONFIG_IP_ALIAS=m

8.进行程式修补 所有已知的软体问题, 都可以在 RedHat 的「修正网页」上找到, ( 请查阅 http://www.redhat.com/support/docs/errata.html, 找出适合您版本的修补程式码 ), RedHat 在维护更新这些网页上, 确实做得相当不错。 同时, 这些网页还包括一些 RPM 档案的连结, 您应该用得著, 请依照说明指示进行安装。

9.设定 tcp_wrappers: tcp_wrappers 可以用来管理网路上, 哪些电脑可以与您的电脑进行「沟通」。 这一套程式, 是由一位系统安全高手 Wieste Venema 所写成, 它会管理那些经由 inetd ( 或与 inetd 程式库相连结 ) 所启动的程式, 分析它们的设定档案, 以决定是否拒绝或同意某一个网路连线要求。 举例来说, 为了允许您从家里能够透过 ISP 进行 telnet 及 ftp, 同时间又要拒绝所有其他的连线, 可以在 /etc/hosts.allow 档案里写入:

in.ftpd : .dialup.your-isp.com : allow

all : all : deny

像 SSH、 sendmail 及其他程式, 都可以做成与 tcp_wrappers 相互支援

。 请阅读 tcpd(1) 的说明文件, 以取得进一步的资讯。

Solar Designer 所提供的 Secure Linux patches:

http://www.false.com/security/linux/

replay.com 提供的 RedHat crypto pages:

http://www.replay.com/redhat/

Breaking Into it 所提供的 Improving the Security of Your Site:

http://www.alw.nih.gov/Security/Docs/admin-guide-to-cracking.101.html

Slashdot 提供最新而及时的消息:

http://www.slashdot.org

想要知道最新的软体更新状况, 请参考 FreshMeat regularly:

http://www.freshmeat.net

Smashing the stac:

http://reality.sgi.com/nate/machines/security/P49-14-Aleph-One

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有