当前位置: 首页 > news >正文

天津网站建设定做门户网站的流程

天津网站建设定做,门户网站的流程,discu论坛网站模板,wordpress区块链游戏SUSE由于其出色的性能和对安全较好的控制#xff0c;吸引了很多企业级用户#xff0c;目前在国内开始有大量的关键应用。但这并不代表SUSE在使用中就是安全的#xff0c;SUSE里还有很多安全细节要注意。 目录 1. 补丁、SSH及其它……………………………………3 2. 最小化xi…SUSE由于其出色的性能和对安全较好的控制吸引了很多企业级用户目前在国内开始有大量的关键应用。但这并不代表SUSE在使用中就是安全的SUSE里还有很多安全细节要注意。  目录  1. 补丁、SSH及其它……………………………………3  2. 最小化xinetd……………………………………………4  3. 最小化启动服务…………………………………………5  4. 内核优化…………………………………………………8  5. 日志………………………………………………………8  6. 文件权限许可……………………………………………9  7. 系统的管理、授权、认证………………………………10  8. 用户账户和环境…………………………………………12  9. 杀毒………………………………………………………13  10. 其它安全配置…………………………………………14  1. 补丁、SSH及其它  1.1 补丁    说明 每个补丁的更新都意味着这是一个安全漏洞或是有其他严重的功能问题但如果更新补丁则又可能导致系统的一些异常甚至引起一些服务的瘫痪。所以对于补丁的更新要慎重处理。从实际的角度来说有4种做法        1是在刚装完系统之后立刻更新补丁然后再上应用。        2是通过外围防护手段来保护服务器可以用防火墙、IPS之类的手段。        3是在测试机上更新补丁。不过值得注意的是有些补丁带来的问题是隐性的可        能今天明天没问题但后天出了问题所以观察的时间需要久一些。 4 如果你的SUSE服务器比较多也可以通过NFS共享或者内部的FTP、HTTP服务 来完成。但FTP、HTTP又会带来另外的安全风险。SUSE的补丁升级需要去下载Novell的新RPM。RPM包的安装会有先有后不过多数情况下RPM会根据其依赖关系来处理。另外Novell也有一些在特殊情况下的提示比如内核更新、C运行库等。Novell公司提供了一个强大的工具YaST不过遗憾的是YaST自身也不安全有在线升级不安全临时文件建立漏洞。       加固方法输入yast在software中选择online update。  1.2 SSH     SUSE上默认安装了OpenSSHOpenSSH是目前比较流行并且免费的加密连接工具但OpenSSH的低版本也存在不少安全漏洞所以最好还是去http://www.openssh.org下载最新版本的。在升级到最新版本之后SSH仍有很多需要安全加固工作要做。比如限制那些账户的登录、更改默认端口、指定可访问的网络等等限于篇幅本文对此不做更详细的介绍。但至少有一点是你必须要做的将协议版本修改为2。因为版本1的安全问题实在太严重了甚至可以截获密码。        加固方法vi /etc/ssh/ssh_config 修改protocol的值为2。     更改SSH端口最好改为10000以上别人扫描到端口的机率也会下降  vi /etc/ssh/sshd_config  将PORT改为1000以上端口  同时创建一个普通登录用户并取消直接root登录  useradd  ‘username’  passwd ‘username’ 在最后添加如下一句 7PermitRootLogin no         取消root直接远程登录    1.3 系统性能审计     对于运维人员来说需要经常监控系统的性能情况SUSE提供的sysstat就是一个检测系统状态的工具比如比如CPU利用率、磁盘I/O等。sysstat默认每10分钟收集一次系统数据可以用sar命令查看。sysstat首先会建立一个正常的性能曲线当这个基线建立完毕以后任何超出基线的活动都会给出提示。例如密码猜测、或者在业务高峰期以外的事件会导致CPU利用率过高从而偏离正常的基线。注意sysstat收集的数据默认是在系统上存放一周一周之后会被cron任务自动移除可在/var/log/sa/目录下来维护收集的数据。但是默认安装的服务器版本是不包括sysstat包的除非安装的时候选择了完全安装。        加固方法安装sysstat并使用sar命令。  1.4 防火墙     SuSEfirewall2是SUSE下面的包过滤防火墙可以允许、拒绝数据的进出。默认是安装并且激活的而且默认不允许任何服务要开放服务就必须明确的启用比如上面提到的SSH。    加固方法在YAST里Center--#Security and Users--#Firewall进行防火墙策略调整。更细粒度的策略配置可以在YAST Center--#System#--/etc/sysconfig editor-Network/Firewall/SuSEfirewall2也可直接编辑/etc/sysconfig/SuSEfirewall2文件。  1.5 系统安全定期检查脚本seccheck         seccheck是一个系统安全检查脚本可以每天、每周、每月的定期生成报告并且邮件发送。不过他在定期运行的时候比较占用资源所以要选择在非业务高峰期来做。         加固方法YAST Center-System-#/etc/sysconfig-System/Security/Seccheck selection  1.6  SUSE的安全应用框架AppArmor   AppArmor和SuSEfirewall2相比他的特点在于对应用级的保护可以管理应用的文件和目录访问等更细颗粒的操作是一个白名单的机制即指定哪些行为才是允许的其他的拒绝这样可以更好的隐藏内部系统。比如你的系统存在一个漏洞但由于对其的操作没有受到白名单允许所以操作会被拒绝。      加固方法YAST Center-Novell AppArmor可以调整细节策略、查看报告。如果不熟悉 的话AppArmor还内设了一个向导功能 2. 最小化xinetd  2.1 关闭标准服务      SUSE使用xinetd他比inetd更优秀也更方便使用。SUSE默认情况下是关闭所有服务的在启用SSH之后就可以配置xinetd的服务了。安全的做法也应该如此先关闭所有服务然后只启用必须的服务。        加固方法运行chkconfig查看所有服务的开启状态对不需要的服务进行关闭。  2.2 可信网络接入      对服务器的访问应该受到控制所以需要用SuSEfirewall2或者其他的措施来控制只允许那些可信的网络接入。       加固方法     vi /etc/sysconfig/SuSEfirewall2中的第10项配置。也可以在yast Center#System#/etc/sysconfig editor进行配置。  2.3 telnet     如果不是有特别的理由不要使用telnettelnet使用的是不加密的网络协议这就意味着从你的账号到你传输的数据都可以被人窃听严重的可以通过会话劫持控制你的系统。所以这里还是强烈建议使用SSH虽然SSH也不是那么的安全。       加固方法       打开的命令是chkconfig telnet on。       关闭的命令是chkconfig telnet off。  2.4 FTP     同样在没有充分理由的情况下不要使用FTP尤其是匿名FTP。和telnet一样FTP也不加密也可以被人窃听或者会话劫持。SSH则提供了SCP和SFTP可以取代FTP。要注意的是有时候FTP可能是因为某些应用绑定的比如我多次见到的WEB上传通道所以你必须要用这种匿名FTP。如果必须要用FTP那还是要做一些控制要注意的一点是FTP的目录应该受到控制最好能有自己的分区。在SUSE上vsftpd默认是不安装的。       加固方法       打开的命令是chkconfig vsftpd。       关闭命令是chkconfig vsftpd off。  2.5 rlogin/rsh/rcp      所有r系列的命令都应该被关闭。他们除了可以被窃听之外在验证机制上也存在问题并且还有其他的安全漏洞比如缓冲区溢出、任意命令执行等。建议还是用SSH来取代。        加固方法       打开命令是       chkconfig rexec on       chkconfig rlogin on       chkconfig rsh on       关闭他们       chkconfig rexec off       chkconfig rlogin off       chkconfig rsh off  2.6 TFTP     TFTP一般用在无盘工作站 X-terminals等情况下。路由器或者其他网络设备的配置数据可以利用它复制实现备份功能。当然在这里没有特殊原因我们仍然建议你禁用。TFTP在SUSE上也不是默认安装的。       关闭命令chkconfig tftp off  2.7 IMAP    只有邮件服务器才会用到IMAP一些邮件客户端比如Eudora、Netscape Mail和Kmail需要使用IMAP来检索远程邮件。       加固方法关闭服务的命令       chkconfig cyrus off或chkconfig imap off。  2.8 POP     这是一个收邮件的服务如果没有同样也应关闭。          加固方法chkconfig qpopper off或chkconfig cyrus off。 3. 最小化启动服务  3.1设置umask    linux中的 umask 函数主要用于在创建新文件或目录时 屏蔽掉新文件或目录不应有的访问允许权限。   文件的访问允许权限共有9种分别是rwxrwxrwx   它们分别代表用户读用户写 用户执行 组读 组写 组执行 其它读 其它写 其它执行   屏蔽的规则如下   1. 不管屏蔽码是多少    ·新创建的文件默认不具有可执行允可权限。    ·新创建的目录默认具有可执行允可权限。   2. 屏蔽码的格式为八进制格式共三个八进制数。可设置如下 002 或 022 或 .....   3. 其中的每一个八进制数由三位表示分别是读 写  执行      4  2  1   例如 002 用二进制表示为 0 0 0 -- 0 0 0 -- 0 1 0    4 2 1  4 2 1  4 2 1   4. 产生的文件为 umask 值求反后的允可权限即    对于文件 ~002 664新创建文件所应具有的访问权限    对于目录 ~002 775新创建目录所应具有的访问权限    定期用密码工具检测用户密码强度       系统默认的umask至少应设置成027有些守护进程比如系统日志会默认设置为任何人可以写文件。如果某个守护进程需要放开对权限的限制可以考虑修改守护进程的启动脚本给以其权限同时又不会影响服务器的其他安全。       加固方法       vi /etc/profile改变umask的值为027。    对/home下的所有用户根据其shell类型定义umask的值。 一般在/home/.profile中新增加一行umask 027。    3.2 SMTP     需要确认服务器是否需要处理邮件。SUSE中默认安装的是Postfix并且是激活状态。如果这台服务器是邮件服务器的话需要注意的是有权限在web界面上搜索附件是一个安全隐患。另外如果你对邮件服务器管理有经验的话你会知道为postfix规划一个chroot环境有多么重要。在chroot环境下即使有人闯入了smtpd daemon能够造成的损害也比较有限。       加固方法   打开vi /etc/sysconfig/mail,设置SMTPD_LISTEN_REMOTEyes。在防火墙上也必须启用。    关闭vi /etc/sysconfig/mail,设置SMTPD_LISTEN_REMOTEno。  3.3运行级别     SUSE里有两个主要的运行级别级别5直接启动到X Windows,级别3则是字符界面。但注意的是即使系统运行在级别3用户仍然可以在shelle下执行startx来启动X Windows。        加固方法       设置为级别3vi /etc/inittab将id:5:initdefault中的5修改为3。  3.4 X Font Server     对于服务器来说一般不需要运行X Windows如果不使用图形界面的话X Font Server就可以关掉他是为图形界面提供字体集用的并且XFS还有一些缓冲区溢出的问题。       加固方法       关闭X Font Serverchkconfig xfs off  3.5标准启动服务     每个系统的守护进程如果你不能明确知道必须开启的话都应该关闭。服务器上运行的脆弱应用将大大增加风险。SUSE使用chkconfig来管理所有的系统服务脚本。这里要注意的是SUSE的补丁程序可能会恢复启动某些服务在更新补丁之前最好还是先记录一下你已经启动哪些服务。还有就是一些守护进程会拥有一些账户对这些账户要进行删除、锁定避免别人登录或者对他的Shell设置成/bin/false。       加固方法      添加、删除启动服务的方法是在在不同运行级别下的目录里首先你需要知道你的系统运行界别使用runlevel命令查看运行级别如果运行级别是3的话那就需要在/etc/rc.d/rc3.d修改。这里面以S开头的都是启动时会运行的服务。例如mv /etc/rc3.d/S04rpcbind etc/rc3.d/K04rpcbind是将rpcbind服务关闭。    另外还需要对守护进程的账户进行删除或锁定删除用户命令是userdel可以删除这些用户adm lp sync shutdown halt news uucp operator gopher如果不用x windows的话可以删除games如果没有匿名ftp可以删除ftp。  3.6 SMB和NMB SUSE提供了Samba为windows用户提供文件和打印共享这样unix系统可以在windows的网络上充当文件服务器、打印服务器甚至为早期的windows系统充当域控验证服务器。Samba需要用到SMB和NMB协议SMB是Windows的文件共享NMB是NetBIOS消息块。如果不需要充当这些角色的话就应该关闭这两个协议。关闭命令 chkconfig smb off  3.7 NFS NFS经常被利用来越权存取文件所以没有需要也应关闭。即使真的需要NFS服务也应该采取控制措施包括限制访问的IP范围、文件的只读等。NFS的客户端服务也应关闭。       关闭命令       chkconfig nfsserver off       chkconfig autofs off  3.8 NIS     除非十分有必要否则不要使用NIS。NIS是网络信息服务的缩写类似与windows中的域控制器。NIS虽然使用维护简单但有设计上的安全问题而且也完全可以用LDAP来替代。       关闭命令       chkconfig ypserv off       chkconfig yppasswdd off  3.9 RPC端口映射       要想NIS能够运行须首先运行portmap守护进程。但是RPC的验证机制很薄弱很容易被绕过却可以利用RPC得到很多重要的信息。除非是需要NIS最好禁用。        关闭命令chkconfig portmap off  3.10 ncpfs脚本     ncpfs是NFS、windows网络里共享文件需要用到的但并非默认安装如果没有网络共享在使用就把它停掉。这个脚本会挂载在客户机的网络驱动器上好在它不是一个持续的守护进程所以相对来说不是那么危险。       关闭命令chkconfig ncpfs off  3.11 apache     只有WEB服务器才会用到即使这台服务器是WEB服务器也不要把数据库和其他环境支持都放在这台服务器上。       关闭命令chkconfig apache2 off  3.12 SNMP     在规模比较大的网络里会经常用到的网络管理协议要确定你是不是在使用依赖SNMP的远程监控工具比如HP OpenView, MRTG, Cricket等。如果使用了SNMP也建议更改默认的community string。在SUSE中snmp的设置在/etc/snmpd.conf里。       关闭命令chkconfig snmpd off  3.13 DNS Server     确定你的网络是否需要域名解析的服务器针对DNS的***这两年越来越多如果必须要用建议在/etc/named.conf里 使用访问控制。比如内部的DNS服务器不应该对外部开放查询。在比较大的网络里一般都会使用内部和外部的DNS服务器分别提供查询但一些小的网络没有条件内外分开就应考虑访问控制。       关闭命令chkconfig named off  3.14 squid cache 服务器     Squid是一个代理服务器软件其实Squid是一个较好的安全架构因为他在客户端和服务器之间设置了一道代理在一定程度上减少了系统泄露信息的风险防止内部漏洞被发现。但是在使用Squid的时候要仔细进行配置有很多关于Squid cache的漏洞。如果不加安全考虑的话外部仍然可以探测到内部的主机或者利用你的cache来隐藏***者的真实IP。所以应该配置成不允许外部人员未经认证使用你的缓存。       关闭命令chkconfig squid off 4. 内核优化  4.1 网络参数修改     SUSE和其他Linux一样把网络参数的修改都放在了/proc/sys/net/ipv4下这里所有文件名中包含rate和max的变量都可以防止拒绝服务***。对于每个参数的具体解释可以参考相关文档这里就不一一介绍。       建议修改       net.ipv4.tcp_max_syn_backlog 4096       net.ipv4.conf.all.accept_source_route 0       net.ipv4.conf.all.accept_redirects 0       net.ipv4.conf.all.secure_redirects 0       net.ipv4.conf.default.rp_filter 1       net.ipv4.conf.default.accept_source_route 0       net.ipv4.conf.default.accept_redirects 0       net.ipv4.conf.default.secure_redirects 0       net.ipv4.icmp_echo_ignore_broadcasts 1  4.2 其它参数     如果系统不是作为一个防火墙或网关的话需要修改以下部分。       建议修改       net.ipv4.ip_forward 0       net.ipv4.conf.all.send_redirects 0       net.ipv4.conf.default.send_redirects 0 5. 日志  5.1 syslog SUSE使用了syslog-ng来记录日志。/var/log/messages包括了iptables, mail, news和messages并把它们分别发送到(/var/log/firewall, /var/log/mail*, 和/var/log/news。文件权限默认是urw,gr,o。   如果服务器比较重要,可以考虑把ssh,mail,引导信息等打印出来.在/etc/syslog.conf文件中加 入一行.: Authpriv.*;mail.*;local7.*;auth.*;daemon.info /dev/lp0 执行/etc/rc.d/init.d/syslog restart 或者把日志发送到其它服务器保存 如 authpriv.*                 /var/log/secure 要把它发送到192.168.0.2,就可以这样修改 authpriv.* 192.168.0.2                /var/log/secure  5.2 NTP     NTP是网络时间协议目的是保持计算机的时间与网络同步默认安装但是没有启用。系统时钟应该保持一个高准确度这样日志的记录才能准确的反映时间。NTP启用后在udp123端口监听。在配置上应该忽略任何未明确允许的消息只允许本地回环127.0.0.1和NTP服务器的消息防止别人伪造时间服务器。对NTP的修改在/etc/ntp.conf下面。  5.3 日志文件权限     确保系统日志文件的所有权和权限是正确的日志文件权限的配置在/etc/syslog-ng/syslog-ng.conf.in和/etc/logrotate.d  5.4 远程日志记录     配置系统日志记录发送到网络的其他主机上。注意的是这个时候就需要精确的系统时钟了所以需要使用NTP。为什么要在远程记录日志呢原因是如果你的系统发生故障或者崩溃了它是什么原因造成的你就可以在这台远程记录日志的主机上找到原因。syslog-ng可以使用UDP或TCP。但是除非这台远程主机能够保证一直可用、网络也很可靠否则建议使用TCP防止数据丢失。       例如在/etc/syslog-ng的syslog-ng.conf中添加       destination logserver { tcp(10.10.10.10 port(514)); }; 6. 文件权限许可  6.1 在 /etc/fstab使用nodev方式     在 /etc/fstab使用nodev方式nodev选项的意思是禁止用户在任何分区上挂载未授权的设备需要挂载设备时应该在其他地方比如/dev。但也有例外比如在chroot的环境中经常需要在chroot目录中创建多个设备。如果在你的机器上使用了chroot要注意这个nodev的选项。  6.2 在/etc/fstab中使用nosuid     在/etc/fstab中使用nosuid在移动介质上经常会有一些病毒、恶意软件通过nosuid选项可以阻止用户在光驱、软驱或者U盘上运行set-UID权限的程序。如果机器上有多个移动设备也可以在/etc/fstab中相关设备的第四列设置nosuid。  6.3 禁止用户挂载可移动介质     禁止用户挂载可移动介质SUSE默认只有root用户可以挂载移动介质如果/etc/fstab被改成允许用户挂载可能会让病毒进入服务器或者数据被修改删除。把它改回nouser选项更有助于安全。  6.4 验证passwd, shadow,group文件权限     验证passwd, shadow,group文件权限这些文件都有着默认的所有者和访问权限都要修改/etc/shadow权限为644并且定期检查。AIDE是一个不错的工具可以提醒你对这些文件权限的注意。不过AIDE是Tripwire的非商业版改进目前还是BETA版可能不适合用于关键的生产系统上。  6.5 没有权限限制的目录应该设置粘滞位     没有权限限制的目录应该设置粘滞位你在任何一个目录上设置粘滞位以后就只有文件所有者能够删除目录里的文件而不是任何有写权限的人可以删除。设置粘滞位可以防止彼此覆盖文件无论是意外、恶意行为。但也应在设置粘滞位之前查看一下你的应用程序文档避免破坏用用程序的依赖。      用这个脚本进行检查 for PART in awk ($3 ~ ext2|ext3|reiserfs) \ { print $2 } /etc/fstab; do find $PART -xdev -type d \ \( -perm -0002 -a ! -perm -1000 \) -print Done 如果你的系统设置的足够安全的话这里应该不会有任何的返回。  6.6 任何人都可写的文件     在某个文件上如果任何人都可以写将可能导致对系统的修改或者对系统上的用户造成影响。避免这种文件的出现要在编写脚本或者程序时加以注意因为这会导致系统的完整性受到影响。一般来说可以消除写访问chmod o-w 但对于关键服务器来说还是要咨询一下相关厂商。    用这个脚本进行检查 for PART in awk ($6 ! 0) { print $2 } /etc/fstab; do find $PART -xdev -type f \ \( -perm -0002 -a ! -perm -1000 \) -print done       如果你的系统设置的足够安全的话这里应该不会有任何的返回。  6.7 未授权SUID/SGID的可执行文件      管理员要检查在系统里有没有未授权的set-UID。另外如果可能的话应做Set-UID的审计或者减少这种Set-UID程序。检查方法for PART in awk ($6 ! 0) { print $2 } /etc/fstab; dofind $PART \( -perm -04000 -o -perm -02000 \) \-type f -xdev -printdone  6.8 查找无主文件     不要让你的系统上有任何无主文件无主文件可能是一个***者已经访问了你的系统或者是不当文件包的维护安装造成的。比如删除了用户或者组但是相关文件没有删除。另一种常见情况是软件安装时没有正确的设置所有者。NFS挂载文件会忽视用户ID和系统之间的映射同步也有可能造成无主文件的产生。如果你在使用NIS或者LDAP那可能是其他原因造成的什么原因就需要你去仔细检查了。        检查方法 for PART in awk ($6 ! 0) { print $2 } /etc/fstab; do   find $PART -nouser -o -nogroup -print   done 7. 系统的管理、授权、认证  7.1 在PAM配置文件里移除.rhosts支持    .rhosts定义了哪些计算机和用户可以不用提供口令就在本地计算机上执行远程命令很容易被***者利用。使用.rhosts是对用户访问控制规则的破坏尽量关闭。如果有特殊原因必须要使用那就需要一些预防措施。永远不要在.rhosts里使用通配符。.rhosts必须指定特定的可信任用户名比如trustedhost DB1而不是trustedhost。这种在配置HA的时候常见。要避免信任关系之外的主机而且防火墙或者其他安全设备应该阻止外部的rlogin/rsh/rcp访问。最后还要确保.rhost文件只有所有者可读。例如文件权限600。  7.2 /etc/ftpusers      /etc/ftpusers的列表里定义了哪些用户不允许使用系统的FTP一般来说应该只有普通用户可以使用FTP而不是system这种类型的账户。当然root用户永远都不应该使用FTP方式直接传输文件。SUSE提供了一个netcfg的包预填充了不该使用FTP的账户。  7.3 防止X Server在tcp6000上监听       X Server在TCP6000上监听接受来自其他客户端的请求。但是X Server使用了一个相对不安全的身份验证协议***者可以未授权访问到本地X Server上。使用-nolisten tcp 方式可以取消X Server在TCP6000上默认监听。  7.4 限制用户使用at/cron cron.allow、 at.allow定义了谁可以使用crontab、at命令在预定的时间运行作业。在很多系统上只有系统管理员有这种能力。即使某个用户不在cron.allow里面用户仍然可以运行cron作业。cron.allow控制的是crontab命令调度的权限、修改cron作业的权限。注意不要修改/etc/at.deny和/etc/cron.deny文件除非你的确了解他们这两个文件里都有合理的默认内容。如果对at和cron必须加以控制创建/etc/at.allow和/etc/cron.allow文件增加适当的用户。  7.5 限制crontab文件的权限      系统的crontab文件只能由cron守护进程运行超级用户权限和crontab命令set-UID为root访问。允许未授权的用户读取修改crontab可以让用户获得权限提升。  7.6 配置xinetd的访问控制 可使用简单的基于IP的访问控制限制对xinted的非法连接。现在比较流行的工具是PortSentry可以用于监视那些试图访问未使用端口的行为。然后再使用系统防火墙SuSEfirewall2来控制。  7.8 限制root登录到系统控制台 root直接登录到系统控制台是不允许的除非特别情况。在其他时候管理员应该通过无特权的账户并使用授权机制比如su、sudo来获取额外的特权。这些机制至少提供了审计的线索。/etc/securtty让你可以规定root可从哪个tty登录。/etc/securtty列出来的都是可以登录的注释、不存在的都是不允许root登录的。  7.8 设置LILO/GRUB密码     大多数的Linux系统默认在引导时有装载提示这让***者破坏正常的引导变得很容易。对他设置密码这样在试图修改LILO或GRUB的时候就需要验证当然密码要够强壮。       方法       A、如果你有/etc/lilo.conf 文件在/etc/lilo.conf前面添加password       以root执行命令chown root:root /etc/lilo.confchmod 600 /etc/lilo.conf       B、如果是/etc/grub.conf文件在/etc/grub.conf取消password 的注释。以root执行命令        chown root:root /etc/grub.confchmod 600 /etc/grub.conf  7.9 对单用户模式验证      在一些Linux上你可以在LILO模式下键入linux single进入单用户模式或者在GRUB的引导编辑菜单。这就带来风险进入系统的认证应该始终需要root级别的访问防止***者物理访问系统。SUSE默认禁止这种进入方式但是作为检查来说还是需要检查一下。如果被改动的话要搞清楚原因并恢复。8和9这两个项目都为了解决物理/启动的安全问题也可以考虑设置只从主硬盘启动或者设置BIOS密码。  7.10 限制NFS客户端请求特权端口 设置NFS服务器忽略来自客户端的低于1024的源端口访问这不会妨碍到正常的NFS 操作但可以阻止一些使用工具软件***的人。其配置文件在/etc/exports里。       如果通过NFS把文件共享出来,那么一定要配置”/etc/exports”文件,使得访问限制尽可能的严格.这就是说,不要使用通配符,不允许对根目录有写权限,而且尽可能的只给读权限.在/etc/exports文件加入: /dir/to/export host1.mydomain.com(ro,root_squash) /dir/to/export host2.mydomain.com(ro,root_squash) 建议最配置/etc/exports文件  7.11 syslog的消息接收      你的服务器是日志服务器吗需要从网络上、其他主机上接收日志吗如果是肯定的启用日志系统的远程消息接受。默认情况下的系统日志的守护进程是syslogd不在udp514上监听来自其他系统的日志消息Solaris相反默认是接受的。成立一个独立的日志服务器来记录一个或多个日志是比较推荐的安全做法。但是如果你不是日志服务器的话就不应该打开udp514的监听因为这些信息的传递没有任何认证机制。***者也可以利用此端口发起DDOS***或者不停的发送日志消息填满你的日志系统这样以后的***就不会被记录到了。在syslog-ng.conf.in里把下面这行加上#注释掉#udp(ip(0.0.0.0) port(514)) 8. 用户账户和环境  8.1 锁定系统账户      有很多账户是系统账户不会被人使用锁定这些账户有助于减少***者的利用。这些账户不应该有shell。如果没有守护进程/服务使用的话甚至可以将账户删除。比较简单的做法是直接停用停用的做法是锁定password设置一个无效的shell比如/bin/false。SUSE里使用/bin/false而不是/dev/null和/bin/nologin。  8.2 删除不必要账户 使用awk -F: ($2 ) { print $1 } /etc/shadow查找空密码账户。空密码账户是指任何人都可以登录而不用提供密码。所有的账户都应该有健壮的密码或者使用锁定密码的字符串NP、*LOCKED*。   删除不必要的用户和组用户   删除的用户,如adm,lp,sync,shutdown,halt,news,uucp,operator,games,gopher等   删除的组,如adm,lp,news,uucp,games,dip,pppusers,popusers,slipusers等   可以设置不可更改位   chattr i /etc/passwd   chattr i /etc/shadow   chattr i /etc/group   chattr i /etc/gshadow  8.3 设置账户过期和密码参数      强制用户定期改变密码设置所有活跃账户除了系统账户强制更改密码例如每90天(-M 90),下次允许更改密码之前最少的天数7天 (-m 7)用户在密码过期前28天收到警告(-W 28)。一旦密码过期账户将被锁定7天(-I 7)。最后密码最小长度为6。这只是一些建议你需要根据你的实际情况在/etc/login.defs进行调整。   修改/etc/login.def文件   PASS_MAX_DAYS   120 设置密码过期日期à   设置密码最少更改日期àPASS_MIN_DAYS   0      PASS_MIN_LEN    10    设置密码最小长度à   PASS_WARN_AGE  设置过期提前警告天数à 7     确保/etc/shadow为root只读   确保/etc/passwd为root读写    8.4 确认在passwd, shadow,group里没有‘’      使用命令grep ^: /etc/passwd /etc/shadow /etc/group检查。用于NIS的数据映射配置在passwd, shadow,group文件里存在号将会为***者提供一个提权的途径应该把它们都删掉。  8.5 确认除了root外没有UID为0的账户     检查方法awk -F: ($3 0) { print $1 } /etc/passwd任何UID为0的账户都拥有系统的超级用户权限唯一的超级用户应该是root而且还应该通过非特权账户su来获得权限。  8.6 用户主目录应为750权限或者更多的限制     用户主目录如果有任何人可写的目录可以导致别人窃取、修改数据或者获得其他用户的权限。对其他组成员取消读、执行权限。不过在全局对用户主目录的权限进行修改可能会造成服务中断。  8.7 删除User.netrc文件     find / -name .netrc.netrc是ftp命令的初始化文件能够给Ftp带来一定的方便。但文件可能包含未加密的密码。在上出他们之前要考虑.netrc文件的作用因为可能会影响应用。但是一个良好设计的应用不应该使用.netrc。  8.8 设置默认的用户umask值     将umask设置为077这样由用户创建的文件和目录不会被系统上任何其他人可读。如果需要改变权限可通过chmod命令。可将uamsk命令插入到shell配置文件中来实现例如.profile, .cshrc, etc.等。027可让同组人员可读而022的umask值可让系统上每个用户都可读。但是过于严格的umask会导致软件的安装问题比如umask设置为700那么他的应用程序或者守护进程就无法读取文件。所以一般umask的设置不能过于严格或者在文件安装之后再控制umask。  8.9关闭核心转储     这个问题需要问一下你的软件开发商们他们是否需要调试程序或者需要看到debug的信息如果答案是否定的则可以关闭。核心转储会大量消耗磁盘空间并且核心转储会包含敏感数据。开发人员需要用这个功能来帮助调试。/etc/security下的limits.con文件是用来控制核心转储的开关。  8.10限制root账户su     su命令允许你成为系统上的其他用户常常被用来作为root执行命令。如果不希望某些用户可以su到root在/etc/pam.d/su下加入        auth required pam_wheel.so      这行命令的意思是只允许wheel组的用户可以su为root。其他用户在su root的时候会收到一条消息说该密码是不正确的。通过限制使用root账户即使用户知道root密码也无法成为root用户除非它能够物理上控制这个服务器或者他被添加到wheel组。这样就增加了一个安全保护层防止未经授权的访问。 9. 杀毒      在有些系统上比如邮件服务器、文件服务器主要是给windows用户使用的应该有杀毒软件来保护。linux平台下的杀毒软件有 Sophos http://www.sophos.com/ 商业软件 NAI Virus Scan                商业软件 McAfee http://www.mcafee.com/ 商业软件 ClamAV http://www.clamav.net/ 开源软件 f-prot Antivirus              商业软件 f-prot Antivirus http://www.f-prot.com 商业软件 Trend Micro                      商业软件 Computer Associates InoculateIT http://www.cai.com/商业软件 10. 其它安全配置  10.1 对于危险文件创建符号链接     /root/.rhosts, /root/.shosts, /etc/hosts.equiv等文件的访问控制很薄弱我们在第七章里已经讨论过了***者会经常针对这些漏洞进行***把他们链接到/dev/null意味着任何数据都会被简单的抛弃。        可以使用这个脚本 for FILE in /root/.rhosts /root/.shosts /etc/hosts.equiv \ /etc/shosts.equiv; do rm -f $FILEln -s /dev/null $FILE done  10.2 打开TCP SYN Cookie的保护     SYN***是一种拒绝服务***目的在于消耗系统资源。这个***是由于TCP连接握手协议的漏洞对方发送SYN信息然后不再回应。这样的***就使得系统与数百或者上千的连接保持半开状态。是一个非常简单的***方法。  10.3 LILO/GRUB安全 给LILO和GRUB加上一个i的属性这样他既不能删除也不能修改可以有效地防止配置文件发生任何变化不管是意外或者其他原因。如果想要修改必须用chattr -i命令。chattr i /etc/lilo.conf chattr i /boot/grub/menu.lst  10.4 配置sudo      sudo的是一个文件包它允许管理员授权给用户做一些特权这些特权超出了用户的权限比如重启web服务。我们举个例子因为你的web服务有bug或者不断的出现故障那你可能需要不断地修改web的配置文件来让找出问题原因。这时候如果你要用su - root的话就会非常繁琐因为你只是在改完配置文件之后重启一下web服务而已。这时候sudo就派上用场了它允许管理员授权给该用户权利来重启web服务。sudo安装之后使用visudo来配置而不是vi配置文件因为visudo有错误检查功能。  10.5 删除所有的编译器和汇编程序 在安全上C编译器会构成对系统可信的威胁。编译器应该安装在开发系统的机器上而不是一个生产应用系统上。这里只是提醒注意检查。检查这些gcc、gcc3、gcc3-c、 gcc3-g77、gcc3-java、gcc3-objc、gcc-c、gcc-chill、 gcc-g77、gcc-java、gcc-objc、bin86、dev86、nasm。   可以收回系统编译器的权限或删除   如: chmod 700 /usr/bin/gcc  10.5 删除finger程序   删除finger程序,具体方法如下Finger是UNIX系统中用于查询用户情况的实用程序   #rpm –e finger
http://www.pierceye.com/news/779055/

相关文章:

  • 渭南网站建设风尚网络python做网站显示表格
  • 网站访问过程服装定制行业的未来和趋势
  • 做拍卖网站多少钱怎么推广一个产品
  • 郑州做公司网站怎么做类似美团的网站吗
  • 网站建设服务公网站备案中是什么意思
  • 书店网站建设网站被k 如何恢复
  • 柳州做网站的企业瓯北网站制作
  • 南京建设银行网站蓬莱市住房和规划建设管理局网站
  • 网站前端用的到ps做教育app的网站有哪些
  • 有没有兼职做网站的低价自适应网站建设
  • 文成网站建设所有关键词
  • 吉林市做网站哪家好建网站的方法
  • 北京做网站的怎样用自己的服务器建设网站
  • 镇江建设局网站开发公司采购招聘
  • 阿里云编辑建设好的网站凡客官网登录入口网址
  • 后盾网原创实战网站建设教程北京app网站建设价格
  • 简述网站建设过程步骤wordpress英文建站
  • 网站开发 mvc有孩子做的网站
  • 自己做的网站如何推广wordpress 主题页脚
  • 数据库型网站怎么把电脑当服务器做网站
  • 东莞网站建设品牌公司如何做电子书网站
  • 免费学做美食视频网站有哪些百度是国企还是央企
  • wordpress 网站关键词设置wordpress 上传主机
  • h5电子商务网站如何查询关键词的搜索量
  • 网站导航栏兼容性网站建设的主要技术指什么软件
  • 如何抄袭网站400靓号手机网站建设
  • 大兴网站建设价格怎样建设好网站
  • 三维家是在网站上做还是在app上国内新闻最新5条
  • 呼伦贝尔网站设计wordpress如何关闭主题
  • 苏州网站制作网站建设淮安住房和城乡建设厅网站