已阅读5页,还剩42页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
linux 系统安全手册 第 1 页 共 47 页 linux 系统系统 安全操作指南安全操作指南 linux 系统安全手册 第 2 页 共 47 页 目录目录 使用说明使用说明 4 第一章第一章 linux 系统安全安装系统安全安装 5 1.1 准备工作 . 5 1.2 安装操作系统 . 5 1.3 安装后的工作 . 6 第二章第二章 linux 系统安全配置系统安全配置 8 2.1 用户帐户安全 . 8 2.1.1 密码安全策略 8 2.1.2 检查密码是否安全 8 2.1.3 password shadowing . 8 2.1.4 管理密码 8 2.1.5 其他 . 9 2.2 系统参数设置安全 9 2.2.1 限制控制台的使用 . 9 2.2.2 系统关闭 ping . 10 2.2.3 关闭或更改系统信息 . 10 2.2.4 /etc/securetty 文件 10 2.2.5 /etc/host.conf 文件 10 2.2.6 禁止 ip 源路径路由 11 2.2.7 资源限制 11 2.2.8 lilo 安全 11 2.2.9 control-alt-delete 键盘关机命令 . 12 2.2.10 日志系统安全 12 2.2.11 修正脚本文件在“/etc/rc.d/init.d”目录下的权限 13 2.3 文件系统安全 . 13 2.3.1 文件权限 13 2.3.2 控制 mount 上的文件系统 13 2.3.3 备份与恢复 14 2.4 网络服务安全 . 14 2.4.1 服务过滤 14 2.4.2 /etc/inetd.conf 15 2.4.3 r 服务 15 2.4.4 tcp_wrapper 16 2.4.5 /etc/hosts.equiv 文件 16 2.4.6 /etc/services . 17 2.4.7 /etc/aliases . 17 2.4.8 nfs . 17 linux 系统安全手册 第 3 页 共 47 页 2.4.9 trivial ftp (tftp) . 18 2.4.10 sendmail 18 2.4.11 finger . 19 2.4.12 uucp 19 2.4.13 world wide web (www) httpd 19 2.4.14 ftp 安全问题 . 20 2.5 日志审计 . 20 2.5.1 系统记帐 21 2.5.2 系统日志 21 第三章第三章 系统管理员的日常安全工作系统管理员的日常安全工作 24 3.1 安全补丁 . 24 3.2 监测 . 24 3.3 配置 . 26 3.4 审计 . 26 3.5 借助工具 . 26 第四章第四章 第三方工具的使用第三方工具的使用 28 4.1 防火墙ipchains构建防火墙 28 4.2 入侵检测系统snort . 32 4.3 完整性检查工具tripwire 36 4.4 访问控制工具tcp_wrapper . 40 4.5 加密数据传输openssh 43 4.6 日志监控工具logcheck 45 linux 系统安全手册 第 4 页 共 47 页 使用说明使用说明 本手册旨在提供 linux 系统安全安装、安全配置和安全管理的操作指南,读者应当具备 unix 系统基本知识,了解认证、授权、审核和数据保护等概念。 linux 系统安全手册 第 5 页 共 47 页 第一章第一章 linux 系统安全安装系统安全安装 1.1 准备工作准备工作 -使事情尽量简单化: 最好的期望是在主机上只运行一或者两个服务。并且把运行的服务尽量在分散在多台机器, 因为这样要比在所有事情都同在一台机器上运行要安全的多,这样可以方便的隔离应用程 序,使其更牢固,更容易查找错误和升级软硬件。一切运行的规则是你所需服务的最低限 度要求。 -硬件部分: 如果你有 sun/sparc 硬件,考虑通过串行口控制台(console)来进行安装,去掉键盘屏幕和 帧缓冲区(framebuffer),避免使用 x11 并是使用熟悉的命令行进行操作。 -安全地下载: 安全过程需要在一个隔离的或者没有路由网络来安装,在这种情况下,你可以通过控制台 以 root 身份 ftp 到系统,或者从新的系统中下载。如果你没有隔离的网络(这通常不推 荐) , 那就改变 root 的密码以方便的下载文件, 完成后再次改变密码, 马上关闭网络系统。 这样就减少存在潜在攻击者危险的机会。 -明确知道系统究竟要干什么和硬件将被怎样配置等等, 着重注意一些如要调用 rpc 的应用 程序。 -理解应用程序是怎样工作是非常重要的一步(他们使用的端口,设备和文件) 。判断使用某 些程序有可能所承受的安全风险。 使系统处于单独(或隔离)的网络中。以防止未受保护的系统连接到其它网络或互联网中 受到可能的攻击 1.2 安装操作系统安装操作系统 在 x86 硬件上,屏幕,键盘和鼠标是必须的,从 cdrom 或者启动软盘启动并选择安装。 在 sparc 硬件上,整个的安装可以不使用屏幕和键盘(称为“headless sever“) ,连接串口控 制台,开机,通过发送 stop-a(如#,%b 或者 f5,具体是依据你是使用 tip,cu 或者 vt100 终 端)出现 ok 提示符,再开始安装过程:boot cdrom -安装。 linux 系统安全手册 第 6 页 共 47 页 redhat 的安装过程有点不符常理并且安装版本的不同,选项也各有不同: -理论上“定制安装(custom install)“是用来安装一些需要的模块,但其中有点不正常,如 ftp 服务器没有安装(在 sparc 版本中,可以使用 rpm -i /mnt/cdrom/redhat/rpms/wu-ftpd -2.6.0-1.sparc.rpm)来进行修正。 -gnome 永远是被安装的,即使你选者 kde 或者选者不包括 gnome。可以使用 startx 来 启动 gnome 和使用 kde 来启动 kde -在所有安装模式中,国际键盘映射对于命令行和 gui 没有进行正确的设置。 在此,选择 server 或者 custom 安装,设置主机名,ip 参数,时区等等。不要激活任何名字 服务如 nis 和 nfs,选择手工磁盘分区: -考虑一个独立的,容量较大的/var 文件系统作为 syslog/web/news/proxy 服务或者防火墙过 滤器。 -一些包含很多数据的服务,如 web,ftp,应该使用独立的磁盘来进行数据处理 -如果你不想要以只读方式来安装(mount)分区,并且没有 log 记录数据和应用程序数据, 就考虑把整个启动盘放在根目录下。 -对于 2g 磁盘的分区建议:500mb/(root+var),200mb 交换分区,1300mb/usr 分区. -对于 1g 磁盘的分区建议: 300mb/(root+var),200mb 交换分区,500mb/usr 分区. - 推荐使 用 8g 大 小来作为 log 服务器空间数据:100mb/root,300mb/ 交换 分区, 800mb/usr,6.9g/var 为 root 设置一个强壮的密码(至少 8 个由字母,数字和标点符号组成),建立一个额外的 test 用户,因为你不能通过以 root 身份来登录网络。 “init level“必须设置为 3 级(是命令行登录级别),这比设置为 5(图形形式登录级别)更安全,如 果确实需要 gui,可以使用 startx 手工来启动 gui 系统. 通过串行端口登录对于安装故障检查和熟悉命令行是很有帮助的.想要在 x86 硬件上通过串 行口 a 来进行登录,可以在/etc/inittab 增加下面的一行文字: con:23:respawn:/sbin/getty ttys0 vc 上面的设置对于 sparc 机器是不需要的,因为 sparc 机是自动配置好这工作的,如果 要允 许通过这个串行口来允许 root 登录,则必须在/etc/securetty 增加 ttss0. 1.3 安装后的工作安装后的工作 安装完成后将下面软件卸载 pump apmd lsapnptools redhat-logos mt-st kernel-pcmcia-cs setserial redhat-relese eject linuxconf kudzu gd bc getty_ps raidtools pciutils linux 系统安全手册 第 7 页 共 47 页 mailcap setconsole gnupg 用下面的命令卸载这些软件: rootdeep#rpm e softwarename 卸载它们之前最好停掉三个进程: rootdeep# /etc/rc.d/init.d/apmd stop rootdeep# /etc/rc.d/init.d/sendmail stop rootdeep# /etc/rc.d/init.d/kudzu stop linux 系统安全手册 第 8 页 共 47 页 第二章第二章 linux 系统安全配置系统安全配置 2.1 用户帐户安全用户帐户安全 2.1.1 密码安全策略密码安全策略 ? 口令至少为 6 位,并且包括特殊字符 ? 口令不要太简单,不要以你或者有关人的相关信息构成的密码,比如生日、电话、 姓名的拼音或者缩写、单位的拼音或者英文简称等等。 ? 口令必须有有效期 ? 发现有人长时间猜测口令,需要更换口令 2.1.2 检查密码是否安全检查密码是否安全 可以使用以下几种工具检查自己的密码是否安全: ? john,crack 等暴力猜测密码工具 ? 在线穷举工具,包括 emailcrk、流光等 2.1.3 password shadowing ? 使用 shadow 来隐藏密文(现在已经是默认配置) ? 定期检查 shadow 文件,如口令长度是否为空。 #awk -f: length($2)=0 print $1 /etc/shadow ? 设置文件属性和属主 2.1.4 管理密码管理密码 ? 设置口令有效最长时限 (编辑/etc/login.defs 文件) ? 口令最短字符 (如 linux 默认为,可以通过编辑/etc/login.defs 修改) ? 只允许特定用户使用 su 命令成为 root。 编辑/etc/pam.d/su 文件,在文件头部加上: auth sufficient /lib/security/pam_rootok.so debug auth required /lib/security/pam_wheel.so group=wheel red hat 7.0 中 su 文件已做了修改,直接去掉头两行的注释符就可以了 linux 系统安全手册 第 9 页 共 47 页 rootdeep# usermod -g10 admin 来将用户加入 wheel 组 2.1.5 其他其他 ? 清除不必要的系统帐户 rootdeep# userdel adm rootdeep# userdel lp rootdeep# userdel sync rootdeep# userdel shutdown rootdeep# userdel halt rootdeep# userdel news rootdeep# userdel uucp rootdeep# userdel operator rootdeep# userdel games (如果不使用 x window,则删除) rootdeep# userdel gopher rootdeep# userdel ftp (如果不使用ftp服务则删除) ? 尽量不要在 passwd 文件中包含个人信息,防止被 finger 之类程序泄露。 ? 修改 shadow,passwd,gshadow 文件不可改变位 rootdeep# chattr +i /etc/passwd rootdeep# chattr +i /etc/shadow rootdeep# chattr +i /etc/group rootdeep# chattr +i /etc/gshadow ? 不要使用.netrc 文件,可以预先生成$home/.netrc。设置为 0000。 touch /.rhosts ;chmod 0 /.rhosts ? 使用 ssh 来代替 telnetd,ftpd.pop 等通用服务。传统的网络服务程序,如:ftp、pop 和 telnet 在本质上都是不安全的,因为它们在网络上用明文传送口令和数据。 2.2 系统参数设置安全系统参数设置安全 2.2.1 限制控制台的使用限制控制台的使用 禁止使用控制台程序:禁止使用控制台程序:删除/etc/security/console.apps 中的服务 rootdeep# rm -f /etc/security/console.apps/servicename, 比如:rootdeep# rm -f /etc/security/console.apps/halt rootdeep# rm -f /etc/security/console.apps/poweroff rootdeep# rm -f /etc/security/console.apps/reboot rootdeep# rm -f /etc/security/console.apps/shutdown rootdeep# rm -f /etc/security/console.apps/xserver(如删除,只有 root 能启动 linux 系统安全手册 第 10 页 共 47 页 xserve r) 禁止控制台的访问:禁止控制台的访问:在/etc/pam.d 中的所有文件中,给包含 pam_console.so 的行加上注释 2.2.2 系统关闭系统关闭 ping 关闭 ping,使系统对 ping 不做反应,对网络安全大有好处。 可以使用如下命令: rootdeep#echo 1 /proc/sys/net/ipv4/icmp_echo_ignore_all 可以将这一行加到/etc/rc.d/rc.local 文件中去,这样系统重启动后会自动执行 恢复系统的 ping 响应: rootdeep#echo 0 /proc/sys/net/ipv4/icmp_echo_ignore_all 2.2.3 关闭或更改系统信息关闭或更改系统信息 关闭关闭 telnet 系统信息系统信息 red hat 6.2 中,编辑/etc/inetd.conf telnet stream tcp nowait root /usr/sbin/tcpd in.telnetd h 加上参数-h 可以关闭 telnet 信息 red hat 7.0 中,编辑/etc/xinetd.d/telnet 加上 server_args = -h,可以关闭 telnet 信息 /etc/rc.d/rc.local 中关闭或修改系统信息 /etc/issue 和/etc/ 中包含本地登录和网络登录时提示的系统信息,对它们进行更 改可以改变系统信息,或直接删除,并在/etc/rc.d/rc.local 文件中注释相关行: #echo “ /etc/issue #echo “$r“ /etc/issue #echo “kernel $(uname -r) on $a $(uname -m)“ /etc/issue #cp -f /etc/issue /etc/ #echo /etc/issue 2.2.4 /etc/securetty 文件文件 /etc/securetty 文件规定 root 从哪个 tty 设备登录,列出的是允许的 tty 设备,将不允许的 tty 设备行注释掉. 2.2.5 /etc/host.conf 文件文件 /etc/host.conf 定义主机名怎样解析,使用什么服务,什么顺序解析 linux 系统安全手册 第 11 页 共 47 页 # lookup names via dns first then fall back to /etc/hosts. order bind,hosts # we have machines with multiple ip addresses. multi on # check for ip address spoofing. nospoof on order指定选择服务的顺序 multi指定主机能不能有多个ip地址,on代表允许 nospoof指定不允许ip伪装,此参数必须设置为on 2.2.6 禁止禁止 ip 源路径路由源路径路由 允许 ip 源路径路由(ip source routing)会使得黑客能够欺骗你的计算机,截取信息包.强 烈建议禁止,使用如下命令: for f in /proc/sys/net/ipv4/conf/*/accept_source_route; do echo 0 $f done 将 accept_source_route 设置为 0,并将上述命令加到/etc/rc.d/rc.local 中去,每次重启动 将自动执行 2.2.7 资源限制资源限制 为了避免拒绝服务攻击,需要对系统资源的使用做一些限制。 首先,编辑/etc/security/limits.conf,加入或改变如下 * hard core 0 (禁止创建 core 文件) * hard rss 5000 (除 root 外,其他用户最多使用 5m 内存) * hard nproc 20 (最多进程数限制为 20) 编辑/etc/pam.d/login,在文件末尾加上: session required /lib/security/pam_limits.so 对 tcp syn cookie 的保护:(防止 syn flood 攻击) rootdeep# echo 1 /proc/sys/net/ipv4/tcp_syncookies 2.2.8 lilo 安全安全 在“/etc/lilo.conf”文件中添加 3 个参数:time-out、restricted 和 password。这些选项会 在启动时间(如“linux single”)转到启动转载程序过程中,要求提供密码。 步骤 1 编辑 lilo.conf 文件(/etc/lilo.conf),添加和更改这三个选项: linux 系统安全手册 第 12 页 共 47 页 boot=/dev/hda map=/boot/map install=/boot/boot.b time-out=00 #change this line to 00 prompt default=linux restricted #add this line password= #add this line and put your password image=/boot/vmlinuz-2.2.14-12 label=linux initrd=/boot/initrd-2.2.14-12.img root=/dev/hda6 read-only 步骤 2 由于其中的密码未加密,“/etc/lilo.conf”文件只对根用户为可读。 rootkapil /# chmod 600 /etc/lilo.conf (不再为全局可读) 步骤 3 作了上述修改后,更新配置文件“/etc/lilo.conf”。 rootkapil /# /sbin/lilo -v (更新 lilo.conf 文件) 步骤 4 还有一个方法使“/etc/lilo.conf”更安全,那就是用 chattr 命令将其设为不可: rootkapil /# chattr +i /etc/lilo.conf 它将阻止任何对“lilo.conf”文件的更改,无论是否故意。 2.2.9 control-alt-delete 键盘关机命令键盘关机命令 编辑“/etc/inittab”文件,只要在下面行前面加“”,改为注释行。 ca:ctrlaltdel:/sbin/shutdown -t3 -r now 改为: #ca:ctrlaltdel:/sbin/shutdown -t3 -r now 然后,为使更改生效,在提示符下输入: rootkapil /# /sbin/init q 2.2.10 日志系统安全日志系统安全 为了保证日志系统的完整性,防止黑客删除日志,需要对日志系统进行安全配置。 linux 系统安全手册 第 13 页 共 47 页 2.2.11 修正脚本文件在“修正脚本文件在“/etc/rc.d/init.d”目录下的权限目录下的权限 对脚本文件的权限进行修正,脚本文件用以决定启动时需要运行的所有正常过程的开 启和停止。添加:rootkapil/# chmod -r 700 /etc/rc.d/init.d/* 这句指的是,只有根用户允许在该目录下使用 read、write,和 execute 脚本文件。 2.3 文件系统安全文件系统安全 2.3.1 文件权限文件权限 ? 去掉不必要的 suid 程序,可以通过脚本查看 rootdeep# find / -type f ( -perm -04000 -o -perm -02000 ) -exec ls lg ; 通过下面的命令来去掉不需要的程序的s位 rootdeep# chmod a-s /usr/bin/commandname ? 重要的配置文件如/etc/passwd,/etc/shadow,/etc/inetd.conf 等设置为 0755,并设置为不 可更改 ? /etc, /usr/etc, /bin, /usr/bin, /sbin, /usr/sbin, /tmp and/var/tmp 的属主是 root,并且设置粘 滞。 ? /dev 目录下没有特殊文件。 ? 查找任何人可写的文件和目录 rootdeep# find / -type f ( -perm -2 -o -perm -20 ) -exec ls -lg ; rootdeep# find / -type d ( -perm -2 -o -perm -20 ) -exec ls -ldg ; ? 查找异常文件,如文件,文件等 find / -name “ “ -print xdev find / -name “.*“ -print -xdev | cat -v ? 检查没有属主的文件。 find / -nouser o nogroup ? 检查在/dev 目录以外还有没有特殊的块文件 find / ( -type b -o -type c ) -print | grep -v /dev/ ? 使用 checksum md5 或者 pgp 来效验文件 2.3.2 控制控制 mount 上的文件系统上的文件系统 可以使用 noexec, nodev, nosuid 来控制 mount 上的文件系统.在/etc/fstab 中设置, 比如: 将/dev/sda11 /tmp ext2 defaults 1 2 /dev/sda6 /home ext2 defaults 1 2 改为:/dev/sda11 /tmp ext2 nosuid,nodev,noexec 1 2 linux 系统安全手册 第 14 页 共 47 页 /dev/sda6 /home ext2 nosuid,nodev 1 2 noexec 表示不允许可执行,nodev 表示不允许块设备,nosuid 表示不允许 suid 位 2.3.3 备份与恢复备份与恢复 定期对文件系统进行备份,可以将损失减小到最小程度。 linux 下有多种方法进行备份,如:dd, cpio, tar, dump 等 2.4 网络服务安全网络服务安全 linux 系统对外提供强大、多样的服务,由于服务的多样性及其复杂性,在配置和管理 这些服务时特别容易犯错误,另外,提供这些服务的软件本身也存在各种漏洞,所以,在 决定系统对外开放服务时,必须牢记两个基本原则: ? 只对外开放所需要的服务,关闭所有不需要的服务。对外提供的服务越少,所面 临的外部威胁越小。 ? 将所需的不同服务分布在不同的主机上,这样不仅提高系统的性能,同时便于配 置和管理,减小系统的安全风险。 在上述两个基本原则下,还要进一步检查系统服务的功能和安全漏洞。 这里针对主机所提供的服务进行相应基本安全配置,某些常用服务的安全配置请参考 相关文档。 2.4.1 服务过滤服务过滤 ? 在 server 上禁止这些服务 ? 如果一定要开放这些服务,通过防火墙、路由指定信任 ip 访问。 ? 要确保只有真正需要的服务才被允许外部访问, 并合法地通过用户的路由器过滤检 查。尤其在下面的服务不是用户真正需要时候,要从路由器上将其过滤掉 name port protocol echo 7 tcp/udp systat 11 tcp netstat 15 tcp bootp 67 udp tftp 69 udp link 87 tcp supdup 95 tcp sunrpc 111 tcp/udp news 144 tcp snmp 161 udp linux 系统安全手册 第 15 页 共 47 页 xdmcp 177 udp exec 512 tcp login 513 tcp shell 514 tcp printer 515 tcp biff 512 udp who 513 udp syslog 514 udp uucp 540 tcp route 520 udp openwin 2000 tcp nfs 2049 udp/tcp x11 6000 to 6000+n tcp 注意:有些 udp 服务可以导致 dos 攻击和远程溢出,如 rpc.ypupdated rpcbind rpc.cmsd 100068 rpc.statd 100024 rpc.ttdbserver 100083 sadmind 100232/10 ? 配置完成以后,利用网络扫描器模拟入侵者从外部进行扫描测试。如利用 nmap 2.4.2 /etc/inetd.conf ? 确保文件权限设置为 600 ? 确保文件属主设置为 root ? 注释掉所有不需要的服务,需要重新启动 inetd 进程 ? 使用 netstat an 命令,查看本机所提供的服务。确保已经停掉不需要的服务 2.4.3 r 服务服务 不必使用不必使用 r 服务服务 ? 关闭 r 服务,red hat 6.2 在/etc/inetd.conf 文件中注释以下服务,并且重新启动 inetd 服务。red hat 7.0 在/etc/xinetd.d 目录中删除 exec 512 tcp rlogin 513 tcp rshell 514 tcp ? 预先生成$home/.rhosts, /etc/hosts.equiv 文件, 并且设置为 0000,防止被写入”+ +”。 (攻击者经常使用类似符号链接或者利用 rootshell 写入,并且远程打开受保 linux 系统安全手册 第 16 页 共 47 页 护主机的 r 服务) 必须使用必须使用 r 服务服务 ? 使用更安全版本的 r 服务。如 wietse venema 的 logdaemon 程序等。 ? 在路由或者防火墙上禁止外部网络访问受保护主机的 512,513 and 514 (tcp)端口。 ? 使用 tcp wrappers 设置可访问受保护主机 r 服务的信任机器。 2.4.4 tcp_wrapper 该软件的作用是在 unix 平台上过滤 tcp/udp 服务,它目前已被广泛用于监视并过滤 发生在主机上的 ftp、telnet、rsh、rlogin、tftp、finger 等标准 tcp/udp 服务。 当系统安装 tcp_wrapper 之后,in.conf 文件中 /usr/sbin/in.telnetd 的 in.telnetd 会被 tcp_wrapper 附带的 tcpd 程序取代。该程序截获来自客户端的服务请求、记录请求发生的 时间和 ip 地址,并按访问控制进行检查。当本次连接的用户、请求源的 ip 等信息符合管 理员的预设值时,才将该次请求传递给系统 in.telnetd,由系统 in.telnetd 完成后续工作;若 连接不符合要求,该连接请求将被拒绝。同样,ftp、 rsh 等 tcp/udp 服务均可被 tcpd 取 代,由 tcpd 充当二传手。 ? 使用paranoid 模式,用此参数后需要在/etc/hosts文件中加上允许使用telnet或ftp 服务的客户端的名字和 ip 地址 ? 在/etc/hosts.deny 中设置为 all:all,默认所有不允许 access is denied by default. # deny access to everyone. all: allall, paranoid #matches any host whose name does not match its address, see bellow. ? 在/etc/hosts.allow 中设置允许的服务和地址 如:sshd: ? 使用 tcpdchk 检查 ? udp 服务使用 tcpwrapper 时要使用/etc/inetd.conf 中的 nowait 选项。 2.4.5 /etc/hosts.equiv 文件文件 不必使用不必使用/etc/hosts.equiv 文件文件 ? 从系统中删除此文件 ? 预先生成/etc/hosts.equiv 文件,并且设置为 0000,防止被写入”+ +”。 (攻击者经常使 用类似符号链接或者利用 rootshell 写入, 并且远程打开受保护主机的 r 服务) 必须使用必须使用/etc/hosts.equiv 文件文件 ? 确保此文件中可信赖主机为必须的。 linux 系统安全手册 第 17 页 共 47 页 ? 预先生成/etc/hosts.equiv 文件,并且设置为 0000,防止被写入”+ +”。 (攻击者经常使 用类似符号链接或者利用 rootshell 写入, 并且远程打开受保护主机的 r 服务) ? 如果使用 nis 或者 nis+的话,此文件中的组应该是容易管理的。 ? 信赖主机必须确保可靠 ? 信赖主机使用全名,如例如 ? 任何时候都不应该出现”+”字符,因为这样会使任何一台主机上的任何用户都可以 不加口令地访问系统 ? 文件中不要使用! 和#符号,因为在该文件中那并不表示注释信息 ? 文件开始字符不应该为-.,请查阅 c8 ? 确保该文件的访问权限被设置成 600。 ? 文件属主确保为 root。 ? 在每次安装补丁程序或操作系统之后,都应该重新检查该文件夹的设置情况 2.4.6 /etc/services ? 确保文件权限设置为 600 ? 确保文件属主设置为 root ? 如果需要提供一些常见服务,如 telnetd 等,可以在此修改端口 此文件为端口号和服务的对应关系,给此文件加上保护,避免没有授权的修改和删除 rootdeep# chattr +i /etc/services 2.4.7 /etc/aliases ? 修改/etc/aliases 文件,注释掉“decode“ “games,ingress,system,toor,manager,.”.等 ? 使用/usr/bin/newaliases 命令激活新配置 ? 确保文件权限设置为 755 ? 确保文件属主设置为 root 2.4.8 nfs nfs 文件系统应注意以下几方面的安全 ? 在外部路由上过滤端口 111、2049 (tcp/udp) ,不允许外部访问。 ? 检查更新情况。 ? 检查 /etc/exports 输出路径的权限,确定只有 root 能修改, all user 只能 read ? 用 exportfs 去增加或删除 directories exportfs -o access=engineering,ro=dancer /usr exportfs -u /usr ? 假如你的机器没有 nis(yp server)的服务,当更改资料时记得修改 /etc/passwd /etc/group linux 系统安全手册 第 18 页 共 47 页 /etc/hosts /etc/ethers ? 不允许 export 出去包含本地入口的目录 ? 确定对方机器是完全可信赖的。使用全名 ? 确保输出列表没有超过 256 个字符。 ? 使用 showmount e 命令查看自己的 export 设置 ? 将/etc/exports 权限设置为 644,属主为 root ? 使用 noexec,nodev.nosuid 等选项控制 mount 的文件系统,在/etc/fstab 中设置。 2.4.9 trivial ftp (tftp) 无论何种情况下都不应该启动这个服务进程。 2.4.10 sendmail sendmail 提供了许多在编译期间选择的功能特性。通常情况下,按照其缺省配置,即 可满足一般用户的需要。但是,了解研究其提供的特性,可以实现对 sendmail 许多功能的 更为准确的配置使用。从网络安全的角度考虑,通过合理地配置有关特性,可以在提供服 务和保证安全之间找到更为准确的平衡点(配置特性的方法是将需要的特性加入到相应系 统的.mc 文件中,然后利用工具 m4 生成最终的 sendmail.cf 文件。目前最新版本是 sendmail8.11.1.() ? 最新的发行包 ? promiscuous_relay:该特性打开任意转发功能,也即关闭 8.9 带来的邮件转发方面 的安全增强控制。此特性的使用会对电子邮件服务的滥用留下许多隐患,建议除非 特别情况,不要使用此特性。 ? accept_unqualified_senders:缺省情况下,该特性被关闭,即当 mail from:参数 中的地址表明属于网络连接,但是却不包含合法的主机地址时, sendmail 将拒绝继续 通信。 打开此特性则不再根据 mail from:参数拒绝接收邮件。 建议不可轻易使用 该特性。 ? loose_relay_check : 通常情况下,当邮件使用了源路由功能,例如 user%siteothersite, 如果othersite属于转发邮件的范围,则sendmail将分离othersite,继续检查site是否属 于转发范围.使用该特性将改变上述缺省操作.建议不要轻易使用该特性 ? accept_unresolvable_domains : 通常情况下,当 mail from:参数中的主机地址部分 无法解析,即无法判定为合法主机地址时,sendmail 将拒绝连接.使用该特性将改变上 述操作. 在某些情况下,例如,邮件服务器位于防火墙后面,无法正常解析外部主机地 址,但是仍然希望能够正常接收邮件时,可能需要利用该特性. ? blacklist_recipients :打开接收黑名单功能。接收黑名单可以包括用户名、主机名、 或其它地址。 ? relay_entire_domain :缺省配置下,sendmail 只为在转发控制数据库(access db)中定 义为 relay 的主机提供转发邮件服务. 该特性的使用,将使 sendmail 为本地域内 (由$=m 类定义)的所有主机上面的用户提供转发功能 linux 系统安全手册 第 19 页 共 47 页 ? sendmail 的受限 shell 程序 smrsh 可以防止内部用户恶意操作。 ? 防止系统信息泄漏,如修改 banner,禁止 expn,vrfy 命令 ? 建议配置为需要 smtp 认证功能。 ? 其他相关的 mailserver qmail: postfix: qpop: / imail:/ 2.4.11 finger ? 不应该启动这个服务进程。 ? 如果一定要使用,请使用最新的版本。 2.4.12 uucp ? 建议不要使用 ? 删除所有的 rhosts 文件(目录下的) ? 确保.cmds 文件属主为 root ? 对登陆进行限制 ? 确保文件没有被设置为所有人可写 2.4.13 world wide web (www) httpd ? 使用你选择的的最新版本 ? 不要使用用户运行 httpd ? 在 chroot 环境中运行 httpd ? 尽量不要使用脚本 ? 对脚本进行安全审计 ? 链接使用静态库 ? 过滤危险字符,如n r (.,/;!)| content:“version“;) alert tcp any any - $ournet 53 (msg:“tcp ids/dns-version-query“; content:“version“;) alert tcp any any - $ournet 80 (msg:“phf attempt“; content:“/cgi-bin/phf“;) # # load portscan pre-processor for portscan alerts # preprocessor portscan: $othernet $ports $secs /var/log/snort/pscan_alerts preprocessor portscan-ignorehosts: $ournet # # pass rules (ignore) # pass tcp $ournet any - $othernet 80 pass udp any 1024: $nidshost 22 表 2 一个规则表的例子 该规则要求,记录下网络外部主机所做的下列行为: telnet、ftp 通信、finger。 对以下行为发出告警: 从本网以外的机器中发出的端口扫描行为,并将告警信息写入到/var/log/snort/pscan_alerts 文件 中; 所有的 phf 请求 dns 版本查询 忽略以下信息: 对 1024 以上 udp 端口的访问; linux 系统安全手册 第 35 页 共 47 页 从本网内发出的 web 浏览通信及网络入侵检测系统间的 ssh 通信; 四、运行四、运行 snort snort 可以以包窃听器方式、包日志记录器和入侵检测系统三种方式运行。如果以包窃听器的 方式运行,tcp/udp/icmp 的头信息及应用数据在标准输出设备中输出: # snort -vd 当 snort 作为包记录器使用时,它将应用及协议的头信息记录到/var/log/today.log 中: # snort -dev -l /var/log/today.log 做为一个网络入侵检测系统,snort 在 le0 接口进行监听,配置文件为/etc/snort.rules,并以后台 进程的方式运行: # snort -d -i le0 -c /etc/snort.rules snort 并不会按着规则在配置文件中出现的次序来对其进行评估,在默认的情况下它是按照 alert,pass,log的次序对规则进行评估的。 用命令行标志-o可以改变评估的次序为pass,alert,log。 -a 选项指定了告警模式,共有四种方式可供选择:full,fast,none 和 unsock。full,none,fast 这几 种方式的含义很明白,unsock 选项可以使 snort 将告警信息通过 unix 的套接字发往一个负责 处理告警信息的主机,在该主机上有一个程序在套接字上进行监听。有关该选项的细节可以通 过 snort 的 man 获得更多的内容。通过 snort 的告警方式,你可以在告警信息中对当前的情况进 行详细的描述。 必须要对 snort 的配置进行验证,验证的方法是再检查一遍入侵检测规则。对于入侵检测的策 略,你可以进行一些指定的测试并观察日志和告警。对于我们上面列出的策略,我们可以运行 telnet,ftp 和 finger。你可以使用诸如 scanner 之类的工具,如一些可以很容易得到的扫描器, 如nmap都是不错的。 商业用途的扫描器如network associates发行的cybercop和internet security system 的 iss 可以帮助你自动的完成这些过程。netcat 是另外一个功能强大的工具,你可以从 /research%20tools/下载。总之,你可以用几个简单的脚本语句对你的系统 进行攻击。但是你一定要小心,运行这些脚本意味着你信任这些脚本。下面显示了几个简单的 告警。其中包括三个常见的攻击:iis unicode 攻击,syn/fin 扫描和 portscan。 * spp_http_decode: iis unicode attack detected * 03/07-11:10:40.910903 :3607 - :80 tcp ttl:249 tos:0x0 id:22898 iplen:20 dgmlen:1022 df *ap* seq: 0x552997b8 ack: 0xe39d7cb1 win: 0x4470 tcplen: 20 * ids198/syn fin scan * 03/13-01:38:45.254726 :53 - 192.168
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026《汤姆索亚历险记》阅读测试题及答案
- 电视调查类节目《新闻调查》中记者型主持人的提问技巧研究
- 2026年吉林高考文科综合题库及一套完整答案
- 2026年保密培训考试题及答案
- 2025年内蒙古巴彦淖尔市中小学教师招聘考试真题解析含答案
- 2026年安徽铜陵中小学教师招聘考试真题解析含答案
- 第12课 水-生命之源教学设计小学信息技术(信息科技)六年级冀教版
- 八年级下册活动三 创建补间动画教学设计
- 江西省九江市高中数学 第一章 计数原理 2 排列(一)教学设计 北师大版选修2-3
- 江苏省宜兴市徐舍中学八年级地理下册 第6章 第2节“白山黑水”-东北三省教学设计 (新版)新人教版
- 2026年温州市瓯海区专职社区工作者公开招聘6人考试参考试题及答案解析
- 2025年安全生产法律法规电视知识竞赛考试卷库附答案
- 2026届江苏省南京市、盐城市高三一模物理卷(含答案)
- 2026年华峰重庆氨纶笔试题及答案
- 2026年糖尿病规范化诊疗指南解读及临床应用课件
- 2026年长治职业技术学院单招职业技能考试题库及答案详解(各地真题)
- 2026年宁夏财经职业技术学院单招职业技能测试题库及1套参考答案详解
- 2025-2030中国低空经济行业运行形势与投融资发展状况监测研究报告
- 仓储货架作业指导书
- 肿瘤科临床研究SOP的受试者招募策略
- 2025-2030中国利口酒行业供需趋势及投资风险研究报告
评论
0/150
提交评论