通用linux系统安全加固V1.0

合集下载

LINUX安全加固手册

LINUX安全加固手册

LINUX安全加固手册目录1概述 (3)2 安装 (3)3 用户帐号安全Password and account security (4)3.1 密码安全策略 (4)3.2 检查密码是否安全 (4)3.3 Password Shadowing (4)3.4 管理密码 (4)3.5 其它 (5)4 网络服务安全(Network Service Security) (5)4.1服务过滤Filtering (6)4.2 /etc/inetd.conf (7)4.3 R 服务 (7)4.4 Tcp_wrapper (7)4.5 /etc/hosts.equiv 文件 (8)4.6 /etc/services (8)4.7 /etc/aliases (8)4.8 NFS (9)4.9 Trivial ftp (tftp) (9)4.10 Sendmail (9)4.11 finger (10)4.12 UUCP (10)4.13 World Wide Web (WWW) – httpd (10)4.14 FTP安全问题 (11)5 系统设置安全(System Setting Security) (12)5.1限制控制台的使用 (12)5.2系统关闭Ping (12)5.3关闭或更改系统信息 (12)5.4 /etc/securetty文件 (13)5.5 /etc/host.conf文件 (13)5.6禁止IP源路径路由 (13)5.7资源限制 (13)5.8 LILO安全 (14)5.9 Control-Alt-Delete 键盘关机命令 (14)5.10日志系统安全 (15)5.11修正脚本文件在“/etc/rc.d/init.d”目录下的权限 (15)6 文件系统安全(File System Security) (15)6.1文件权限 (15)6.2控制mount上的文件系统 (16)6.3备份与恢复 (16)7 其它 (16)7.1使用防火墙 (16)7.2使用第三方安全工具 (16)1概述近几年来Internet变得更加不安全了。

如何进行Linux系统安全加固

如何进行Linux系统安全加固

如何进行Linux系统安全加固Linux系统是业界广泛使用的一种操作系统,但是由于其开放源代码的特性,也使得其安全性面临一定的挑战。

为了保护服务器和应用程序的安全,对Linux系统进行安全加固是至关重要的。

本文将介绍如何进行Linux系统的安全加固,以保护系统免受潜在的威胁。

一、更新系统和软件第一步,在进行任何安全加固之前,确保您的Linux系统和软件都是最新的版本。

及时更新系统和软件补丁是保持系统安全的基本要求。

二、限制用户权限1. 禁止root用户登录:root用户是Linux系统的超级管理员,拥有最高权限。

为了防止黑客直接攻击root账号,应禁止root用户登录,并使用普通用户登录系统进行操作。

2. 限制用户权限:给予用户最小的权限,仅赋予其完成工作所需的权限,避免非必要的系统访问权限。

三、配置防火墙配置防火墙可以阻止不明访问和恶意攻击,增强系统安全性。

1. 启用iptables:iptables是Linux系统的防火墙工具,使用它可以配置规则来过滤和管理网络通信。

通过配置iptables,可以限制对系统的访问,仅允许必要的端口和协议。

2. 限制网络访问:通过防火墙,限制外部网络对服务器的访问。

例如,可以只开放HTTP和SSH端口,并禁止其他不必要的端口。

四、加密通信为了保护敏感数据的机密性,对Linux系统中的通信进行加密是必要的。

1. 使用SSH协议:SSH(Secure Shell)是一种加密通信协议,可以安全地远程登录和执行命令。

使用SSH协议代替传统的明文传输协议,如Telnet,可以保护用户的登录凭证免受攻击。

2. HTTPS配置:对于运行Web服务器的系统,配置HTTPS协议可以加密网站与用户之间的通信,确保数据的机密性和完整性。

五、强化密码策略强密码是保护系统安全的一个重要环节。

通过实施强密码策略,可以降低系统遭受密码攻击的风险。

1. 密码复杂度要求:要求用户设置复杂的密码,包含大小写字母、数字和特殊字符,并定期更换密码。

HPUX安全加固大全

HPUX安全加固大全

一、HPUX设备安全加固项目1、检查是否禁止ip路由转发1、执行备份记录需要修改的可调参数值cp -p /etc/rc.config.d/nddconf /etc/rc.config.d/nddconf_bak2、执行下列命令,设置参数使参数在当前系统状态下临时生效:ndd -set /dev/ip ip_forwarding 0建立启动项,使参数重启后永久生效:cd /etc/rc.config.dcat<<EOF >> nddconf# Don't ip forwardingTRANSPOR T_NAME[0]=ipNDD_NAME[0]= ip_forwardingNDD_V A LUE[0]=0EOFchown root:sys nddconfchmod go-w,ug-s nddconf2、检查口令生存周期要求1、执行备份:cp -p /etc/default/security /etc/default/security_bakcp -p /etc/passwd /etc/passwd_bak2、执行下列命令,编辑/etc/default/security#vi /etc/default/security修改以下各项参数:PASSWORD_MAXDAYS=90PASSWORD_WARNDAYS=28或者采用如下方法:以下的shell语句将设置除root外的所有有效登录的账号密码过期和过前期的收到警告设置:logins -ox \ | awk -F: '($8 != "LK" && $1 != "root") { print $1 }' \ | while read logname; do passwd –x 91 –n 7 –w 28 "$logname" /usr/lbin/modprpw -mexptm=90,mintm=7,expwarn=30 \ "$logname" done echoPASSWORD_MAXDAYS=91 >> /etc/default/security echo PASSWORD_MINDAYS=7 >> /etc/default/security echo PASSWORD_WARNDAYS=28 >> /etc/default/security/usr/lbin/modprdef -m exptm=90,mintm=7,expwarn=30用户将在密码过期前的30天收到警告信息(28 天没有运行在HP-UX 的Trusted 模式)不建议操作3、检查是否关闭inetd中不必要服务1、执行备份:#cp -p /etc/inetd.conf /etc/inetd.conf_bak2、禁止非必要服务:#vi /etc/inetd.conf在非必要服务前面加#注释3、重新启动inetd:#/sbin/init.d/inetd restart执行,关闭的服务需确认4、检查用户缺省UMASK设置默认权限:cd /etcfor file in profile csh.login d.profile d.logindo echo umask 027 >> "$file"donech_rc -a -p UMASK=027 /etc/default/security在/etc目录下的profile csh.login d.profile d.login文件尾部增加umask 027修改文件或目录的权限,操作举例如下:#chmod 444 dir #修改目录dir的权限为所有人都为只读。

通用应用系统安全加固方法

通用应用系统安全加固方法

通用应用系统安全加固方法目录1安全加固的目的....................................................................................................................... - 3 - 2系统加固的基本原则............................................................................................................... - 3 - 3系统加固流程........................................................................................................................... - 3 -3.1确定加固范围................................................................................................................ - 4 -3.2采集系统状况................................................................................................................ - 4 -3.3系统状况评估................................................................................................................ - 4 -3.4给出加固建议................................................................................................................ - 4 -3.5加固建议实施................................................................................................................ - 4 - 4安全加固风险规避措施........................................................................................................... - 4 -5 Windows 2000操作系统安全加固实践.................................................................................. - 5 -6 Solaris操作系统安全加固实践............................................................................................. - 18 -7 Oracle数据库系统安全加固实践 ......................................................................................... - 24 -1安全加固的目的对系统进行安全加固的目的是通过深入了解系统的设计模型、当前的安全运行状况、曾经发生的安全事件、系统使用的安全策略,提出能够提高系统安全防御水平的加固建议。

linux系统安全加固方案

linux系统安全加固方案

1 概述............................... - 1 -1.1 适用范围......................... - 1 -2 用户账户安全加固 ........................ - 1 -2.1 修改用户密码策略..................... - 1 - 2.2 锁定或删除系统中与服务运行,运维无关的的用户........ - 1 -2.3 锁定或删除系统中不使用的组................ - 2 -2.4 限制密码的最小长度..................... - 2 -3 用户登录安全设置 ........................ - 3 -3.1 禁止 root 用户远程登录.................. - 3 -3.2 设置远程 ssh 登录超时时间................. - 3 - 3.3 设置当用户连续登录失败三次,锁定用户30分钟........ - 4 -3.4 设置用户不能使用最近五次使用过的密码............ - 4 -3.5 设置登陆系统账户超时自动退出登陆.............. - 5 -4 系统安全加固........................... -5 - 4.1 关闭系统中与系统正常运行、业务无关的服务.......... - 5 -4.2 禁用“ CTRL+ALT+DEL重启系统................. -6 -4.3 加密 grub 菜单....................... - 6 -1概述1.1适用范围本方案适用于银视通信息科技有限公司linux主机安全加固,供运维人员参考对linux 主机进行安全加固。

2用户账户安全加固2.1修改用户密码策略(1)修改前备份配置文件:/etc/logi n.defscp /etc/login.defs /etc/login.defs.bak(2)修改编辑配置文件:vi /etc/login.defs ,修改如下配置:PASS_MAX_DAYS 90 (用户的密码不过期最多的天数)PASS_MIN_DAYS 0 (密码修改之间最小的天数)PASS_MIN_LEN 8 (密码最小长度)PASS_WARN_AGE 7 (口令失效前多少天开始通知用户更改密码)(3)回退操作〜]# cp /etc/login.defs.bak /etc/login.defs2.2锁定或删除系统中与服务运行,运维无关的的用户(1)查看系统中的用户并确定无用的用户~]# more /etc/passwd(2)锁定不使用的账户(锁定或删除用户根据自己的需求操作一项即可)锁定不使用的账户:~]# usermod -L username或删除不使用的账户:〜]# userdel -f username(3) 回退操作用户锁定后当使用时可解除锁定,解除锁定命令为:~]# usermod -U username2.3锁定或删除系统中不使用的组(1) 操作前备份组配置文件/etc/group~]# cp /etc/group /etc/group.bak(2) 查看系统中的组并确定不使用的组~]# cat /etc/group(3) 删除或锁定不使用的组锁定不使用的组:修改组配置文件/etc/group,在不使用的组前加“ #”注释掉该组即可删除不使用的组:~]# groupdel groupname(4)回退操作~]# cp /etc/group.bak /etc/group2.4限制密码的最小长度(1)操作前备份组配置文件/etc/pam.d/system-auth~]# cp /etc/pam.d /etc/pam.d.bak(2)设置密码的最小长度为8修改配置文件 /etc/pam.d, 在行” password requisite pam_pwquality.so try_first_pass local_users_o nly retry=3 authtok_type= ”中添加“ minlen=8 ”,或使用 sed 修改:〜]# sed -i "s#password requisite pam_pwquality.so try_first_pass local_users_only retry=3 authtok_type=#password requisite pam_pwquality.so try_first_pass local_users_only retry=3 minlen=8authtok_type=#g" /etc/pam.d/system-auth(3) 回退操作~]# cp /etc/pam.d.bak /etc/pam.d3用户登录安全设置3.1禁止root用户远程登录(1)修改前备份ssh配置文件/etc/ssh/sshd_conf~]# cp /etc/ssh/sshd_conf /etc/ssh/sshd_conf.bak(2)修改ssh服务配置文件不允许root用户远程登录编辑/etc/ssh/sshd_config 找到“#PermitRootLogin yes”去掉注释并修改为“ PermitRootLogin no ”或者使用sed修改,修改命令为:~]# sed -i "s@#PermitRootLogin yes@PermitRootLogin no@g" /etc/ssh/sshd_config(3)修改完成后重启ssh服务Centos6.x 为:~]# service sshd restartCentos7.x 为:~]# systemctl restart sshd.service(4)回退操作~]# cp /etc/ssh/sshd_config.bak /etc/ssh/sshd_config3.2设置远程ssh登录超时时间(1)修改前备份ssh服务配置文件/etc/ssh/sshd_config~]# cp /etc/ssh/sshd_conf /etc/ssh/sshd_conf.bak(2)设置远程ssh登录长时间不操作退出登录编辑 /etc/ssh/sshd_co nf 将”Clie ntAlivel nterval 0”修改为”ClientAlivelnterval 180 ”,将”ClientAliveCountMax 3 ”去掉注释,或执行如下命令:〜]# sed -i "s@#ClientAlivelnterval 0@ClientAliveInterval 180@g"/etc/ssh/sshd_config〜]# sed -i "s@#ClientAliveCountMax 3@ClientAliveCountMax 3@g" /etc/ssh/sshd_config(3)配置完成后保存并重启ssh服务Centos6.x 为:~]# service sshd restartCentos7.x 为:~]# systemctl restart sshd.service(4)回退操作~]# cp /etc/ssh/sshd_config.bak /etc/ssh/sshd_config3.3设置当用户连续登录失败三次,锁定用户30分钟(1)配置前备份配置文件/etc/pam.d/sshd~]# cp /etc/pam.d/sshd /etc/pam.d/sshd.bak(2)设置当用户连续输入密码三次时,锁定该用户30分钟修改配置文件/etc/pam.d/sshd,在配置文件的第二行添加内容auth required pam_tally2.so deny=3 unlock_time=300(3)若修改配置文件出现错误,回退即可,回退操作:~]# cp /etc/pam.d/sshd.bak /etc/pam.d/sshd3.4设置用户不能使用最近五次使用过的密码(1)配置前备份配置文件/etc/pam.d/sshd〜]# cp /etc/pam.d/system-auth /etc/pam.d/system-auth.bak(2) 配置用户不能使用最近五次使用的密码修改配置文件 /etc/pam.d/sshd, 找到行”password sufficient pam_unix.so sha512 shadow nullok try_first_pass use_authtok ”,在最后力卩入remember=10 或使用 sed修改~]# sed -i "s@#password sufficient pam_unix.so sha512 shadow nullok try_first_pass use_authtok@password sufficient pam_unix.so sha512 shadow nullok try_first_pass use_authtok remember=10@g" /etc/ssh/sshd_config(3) 回退操作~]# cp /etc/pam.d/sshd.bak /etc/pam.d/sshd3.5设置登陆系统账户超时自动退出登陆(1)设置登录系统的账号长时间不操作时自动登出修改系统环境变量配置文件/etc/profile, 在文件的末尾加入”TMOUT=180使登录系统的用户三分钟不操作系统时自动退出登录。

Linux安全加固

Linux安全加固

一,登录bannar设置要求内容:修改系统banner,避免泄漏操作系统名称,版本号,主机名称等,并且给出登陆告警信息操作步骤:在缺省情况下,当你登录到linux 系统,它会告诉你该linux 发行版的名称、版本、内核版本、服务器的名称。

应该尽可能的隐藏系统信息。

首先编辑―/etc/rc.d/rc.local‖文件,在下面显示的这些行前加一个―#‖,把输出信息的命令注释掉。

# This will overwrite /etc/issue at every boot. So, make any changes you want to make to /etc/issue here or you will lose them when you reboot#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其次删除‖/etc‖目录下的 和issue 文件:# mv /etc/issue /etc/issue.bak# mv /etc/ /etc/.bak二,账号设置要求内容:1,应删除或锁定与设备运行、维护等工作无关的账号操作步骤:锁定或者删除用户userdel -r 用户(删除用户)锁定用户(如下)修改/etc/shadow 文件,用户名后加*LK*将/etc/passwd 文件中的shell 域设置成/bin/falsepasswd -l 用户(只有具备超级用户权限的使用者方可使用,)需要锁定的用户:listen,gdm,webservd,nobody,nobody4、noaccess。

2,使用PAM禁止任何人su为root操作步骤:编辑su文件(vim /etc/pam.d/su),在开头添加下面两行:auth sufficient /lib/security/pam_rootok.soauth required /lib/security/pam_wheel.so group=wheel如上两行命令说明只有wheel组的成员可以使用su 命令成为root 用户。

linux加固手册v1.0(正式版)

linux加固手册v1.0(正式版)

linux加固手册v1.0(正式版)L I N U X操作系统安全加固手册版本号:1.0.0目录1概述 (1)1.1适用范围 (1)1.2外部引用说明 (1)1.3术语和定义 (1)1.4符号和缩略语 (1)2LINUX主机安全加固 (1)2.1身份鉴别 (1)2.1.1为空口令用户设置密码 (1)2.1.2缺省密码长度限制 (2)2.1.3缺省密码生存周期限制 (2)2.1.4口令过期提醒 (2)2.1.5限制超级管理员远程登录 (3)2.1.6使用 ssh 加密传输 (3)2.2访问控制 (3)2.2.1为不同的管理员分配不同的账号 (3)2.2.2去除不需要的帐号、修改默认帐号的 shell 变量 (4) 2.2.3对系统账号进行登录限制 (4)2.2.4除 root 之外 UID 为 0 的用户 (4)2.2.5设置关键目录的权限 (5)2.2.6修改 umask 值 (5)2.2.7设置目录权限 (6)2.2.8设置关键文件的属性 (6)2.2.9对 root 为 ls、rm 设置别名 (7)2.2.10使用 PAM 禁止任何人 su 为 root (7)2.3安全审计 (8)2.3.1启用日志记录功能 (8)2.3.2记录系统安全事件 (8)2.3.3启用记录 cron 行为日志功能 (8)2.3.4增加 ftpd 审计功能 (8)2.4剩余信息保护 (9)2.5入侵防范 (9)2.5.1设置访问控制列表 (9)2.5.2更改主机解析地址的顺序 (10)2.5.3打开 syncookie (10)2.5.4不响应 ICMP 请求 (10)2.5.5防 syn 攻击优化 (11)2.5.6补丁装载 (11)2.5.7关闭无效服务 (11)2.5.8关闭无效服务和进程自动启 (12)2.5.9禁止/etc/rc.d/init.d 下某些脚本的执行 (13)2.5.10加固 snmp 服务 (13)2.5.11修改 ssh 端口 (14)2.6恶意代码防范 (14)2.7资源控制 (14)2.7.1隐藏系统提示信息 (14)2.7.2设置登录超时时间 (15)2.7.3资源限制 (15)3推荐安装工具...................................................................................................................... 错误!未定义书签。

如何在Linux终端中进行系统安全加固

如何在Linux终端中进行系统安全加固

如何在Linux终端中进行系统安全加固在计算机领域,系统安全是一项至关重要的任务。

对于使用Linux 操作系统的用户来说,通过在终端中进行系统安全加固是一种有效的方法。

本文将介绍如何在Linux终端中进行系统安全加固,以保护系统免受恶意攻击和数据泄露的威胁。

一、更新系统和软件首先,确保您的Linux系统和应用程序处于最新的稳定版本。

及时更新系统和软件可以修复已知的漏洞,提高系统的安全性。

在终端中使用以下命令可以更新系统和软件:sudo apt update //更新软件包列表sudo apt upgrade //升级可升级的软件包二、强化用户权限管理1. 创建受限用户:除了root用户外,应为系统创建一个仅拥有有限权限的用户。

使用以下命令创建新用户:sudo adduser newuser2. 授予sudo权限:在保留root用户的完全访问权限的同时,将sudo权限授予受限用户。

使用以下命令将用户添加到sudo组:sudo usermod -aG sudo newuser三、防火墙设置配置防火墙是保护Linux系统的关键步骤。

通过限制对系统的网络访问,可以防止未经授权的入侵。

在终端中使用以下命令配置防火墙:1. 查看防火墙状态:sudo ufw status2. 启用防火墙:sudo ufw enable3. 设置允许的网络访问规则:sudo ufw allow ssh //允许SSH访问sudo ufw allow http //允许HTTP访问sudo ufw allow https //允许HTTPS访问四、禁用不必要的服务Linux系统默认启动了一些可能不必要的服务,这些服务可能存在潜在的安全风险。

在终端中使用以下命令可以列出当前正在运行的服务:sudo service --status-all根据自己的需求,禁用不需要的服务:sudo service servicename stop //停止服务sudo systemctl disable servicename //禁用服务五、设置密码策略强密码是防止未经授权访问的有效措施。

Linux安全加固手册

Linux安全加固手册

文档本源为 :从网络收集整理.word 版本可编写 .欢送下载支持.Linux 安全加固一.账户安全1.1 锁定系统中节余的自建帐号检查方法 :执行命令#cat /etc/passwd#cat /etc/shadow查察账户、口令文件,与系统管理员确认不用要的账号。

对于一些保存的系统伪帐户如:bin, sys ,adm, uucp, lp, nuucp , hpdb, www, daemon 等可依照需要锁定登陆。

备份方法:#cp -p /etc/passwd /etc/passwd_bak#cp -p /etc/shadow /etc/shadow_bak加固方法 :使用命令 passwd -l <用户名>锁定不用要的账号。

使用命令 passwd -u < 用户名 >解锁需要恢复的账号。

风险 :需要与管理员确认此项操作不会影响到业务系统的登录1.2 设置系统口令策略检查方法:使用命令#cat /etc/login.defs|grep PASS查察密码策略设置备份方法:加固方法:更正配置文件PASS_MAX_DAYS 90新#建用户的密码最长使用天数PASS_MIN_DAYS 0新#建用户的密码最短使用天数PASS_WARN_AGE 新7#建用户的密码到期提前提示天数PASS_MIN_LEN 9 最#小密码长度 91.3 禁用 root 之外的超级用户检查方法:#cat /etc/passwd查察口令文件,口令文件格式以下:login_name : password:user_ID :group_ID : comment: home_dir :commandlogin_name :用户名password:加密后的用户密码user_ID :用户 ID,(1 ~ 6000)假设用户ID=0,那么该用户拥有超级用户的权限。

查察此处可否有多个 ID=0。

group_ID :用户组 IDcomment:用户全名或其他说明信息home_dir :用户根目录command:用户登录后的执行命令备份方法:#cp -p /etc/passwd /etc/passwd_bak加固方法:使用命令 passwd -l <用户名>锁定不用要的超级账户。

Linux系统加固规范

Linux系统加固规范
2、检测操作
登陆http://ip:8080
实施风险

重要等级

备注
4
4.1.1
编号
Linux-04-01-01
名称
补丁修复
实施目的
升级APACHE修复漏洞
问题影响
容易引起恶意攻击。
系统当前状态
查看版本
Linux : apachectl -V
实施步骤
到下载新版本的APACHE
LogFormat设置日志格式。LogLevel用于调整记录在错误日志中的信息的详细程度,建议设置为notice。
回退方案
恢复原始状态。
判断依据
查看logs目录中相关日志文件内容,记录完整。
实施风险

重要等级
★★
备注
3
3.1.1
编号
Linux-03-01-01
名称
更改默认端口
实施目的
更改Apache服务器默认端口,防止非法访问。
1、参考配置操作
为用户创建账号:
#useradd username #创建账号
#passwd username #设置密码
修改权限:
#chmod 750 directory #其中755为设置的权限,可根据
实际情况设置相应的权限,directory是要更改权限的目录)
使用该命令为不同的用户分配不同的账号,设置不同的口令
证就能进入系统。
问题影响
用户被非法利用
系统当前状态
cat /etc/passwd
awk -F: '($2 == ""){print $1}' /etc/passwd
实施步骤

linux 安全加固

linux 安全加固

linux 安全加固Linux 安全加固。

Linux作为一种开源操作系统,因其稳定性和安全性而备受青睐。

然而,任何系统都存在安全漏洞,因此对Linux系统进行安全加固是非常必要的。

本文将介绍一些常见的Linux安全加固措施,帮助您加强对Linux系统的安全防护。

首先,我们需要注意的是及时更新系统。

Linux系统的安全漏洞会不断被发现并修复,因此及时更新系统是保持系统安全的重要步骤。

您可以使用系统自带的包管理工具,如yum或apt-get,定期更新系统软件包。

其次,加强密码策略也是很重要的。

强密码可以有效防止密码破解,建议设置密码长度不少于8位,包含大小写字母、数字和特殊字符。

另外,定期更改密码也是必要的,可以通过设置密码过期时间来强制用户定期更改密码。

另外,限制用户权限也是一种有效的安全加固措施。

Linux系统中,用户的权限分为超级用户(root)和普通用户。

为了减少系统受到攻击的风险,我们应该尽量避免使用超级用户权限,只有在必要时才使用。

普通用户应该被限制其对系统的访问权限,只有在必要时才给予特定权限。

此外,防火墙的配置也是非常重要的。

Linux系统自带了防火墙工具iptables,可以通过配置iptables来限制网络流量,防止恶意攻击。

您可以根据实际情况,设置相应的规则来限制不必要的网络访问。

最后,定期备份数据也是非常重要的。

无论我们采取了多少安全措施,系统都不可能百分之百安全。

因此,定期备份数据可以帮助我们在系统遭受攻击或者发生其他意外情况时,尽快恢复数据,减少损失。

总之,对Linux系统进行安全加固是非常必要的。

通过及时更新系统、加强密码策略、限制用户权限、配置防火墙和定期备份数据等措施,可以有效提高系统的安全性,减少系统受到攻击的风险。

希望本文介绍的安全加固措施能帮助您更好地保护Linux系统的安全。

通用linux系统安全加固

通用linux系统安全加固

通用linux系统安全加固手册1帐户安全配置要求1.1创建/e t c/s h a d o w影子口令文件配置项名称设置影子口令模式检查方法执行:#more /etc/shadow查看是否存在该文件操作步骤1、执行备份:#cp –p /etc/passwd /etc/passwd_bak 2、切换到影子口令模式:#pwconv回退操作执行:#pwunconv#cp /etc/passwd_bak /etc/passwd风险说明系统默认使用标准口令模式,切换不成功可能导致整个用户管理失效1.2建立多帐户组,将用户账号分配到相应的帐户组配置项名称建立多帐户组,将用户账号分配到相应的帐户组检查方法1、执行:#more /etc/group#more /etc/shadow查看每个组中的用户或每个用户属于那个组2、确认需要修改用户组的用户操作步骤1、执行备份:#cp –p /etc/group /etc/group_bak2、修改用户所属组:# usermod –g group username回退操作执行:#cp /etc/group_bak /etc/group风险说明修改用户所属组可能导致某些应用无法正常运行1.3删除或锁定可能无用的帐户配置项名称删除或锁定可能无用的帐户检查方法1、执行:#more /etc/passwd查看是否存在以下可能无用的帐户:hpsmh、named、uucp、nuucp、adm、daemon、bin、lp 2、与管理员确认需要锁定的帐户操作步骤1、执行备份:#cp –p /etc/passwd /etc/passwd_bak 2、锁定无用帐户:#passwd -l username回退操作执行:#cp /etc/passwd_bak /etc/passwd风险说明锁定某些用户可能导致某些应用无法正常运行1.4删除可能无用的用户组配置项名称删除可能无用的用户组检查方法1、执行:#more /etc/group查看是否存在以下可能无用的用户组:lp nuucp nogroup2、与管理员确认需要删除的用户组操作步骤1、执行备份:#cp –p /etc/group /etc/group_bak 2、删除无用的用户组:#groupdel groupname回退操作执行:#cp /etc/group_bak /etc/group风险说明删除某些组可能导致某些应用无法正常运行1.5检查是否存在空密码的帐户配置项名称检查是否存在空密码的帐户检查方法执行下列命令,检查是否存在空密码的帐户logins –p应无回结果操作步骤1、执行备份:#cp –p /etc/passwd /etc/passwd_bak#cp -p /etc/shadow /etc/shadow_bak2、锁定空密码帐户或使用passwd命令设置复杂密码#passwd –l username回退操作执行:#cp –p /etc/passwd_bak /etc/passwd #cp -p /etc/shadow_bak /etc/shadow风险说明锁定某些帐户可能导致某些应用无法正常运行1.6设置口令策略满足复杂度要求配置项名称设置口令策略满足复杂度要求检查方法1、执行下列命令,检查是否存在空密码的帐户#logins –p应无返回结果2、执行:#more /etc/default/security检查是否满足以下各项复杂度参数:MIN_PASSWORD_LENGTH=6 PASSWORD_MIN_UPPER_CASE_CHARS=1 PASSWORD_MIN_LOWER_CASE_CHARS=1 PASSWORD_MIN_DIGIT_CHARS=1 PASSWORD_MIN_SPECIAL_CHARS=1操作步骤1、执行备份:#cp –p /etc/default/security /etc/default/security_bak #cp –p /etc/passwd /etc/passwd_bak2、执行下列命令,编辑/etc/default/security#vi /etc/default/security修改以下各项复杂度参数:MIN_PASSWORD_LENGTH=6PASSWORD_MIN_UPPER_CASE_CHARS=1 PASSWORD_MIN_LOWER_CASE_CHARS=1 PASSWORD_MIN_DIGIT_CHARS=1 PASSWORD_MIN_SPECIAL_CHARS=1回退操作执行:#cp /etc/default/security_bak /etc/default/security #cp /etc/passwd_bak /etc/passwd风险说明可能导致非root用户修改自己的密码时多次不成功1.7设置帐户口令生存周期配置项名称设置帐户口令生存周期检查方法执行:#more /etc/default/security查看是否存在以下各项参数:PASSWORD_MAXDAYS=90 PASSWORD_WARNDAYS=28操作步骤1、执行备份:#cp –p /etc/default/security /etc/default/security_bak #cp –p /etc/passwd /etc/passwd_bak2、执行下列命令,编辑/etc/default/security#vi /etc/default/security修改以下各项参数:PASSWORD_MAXDAYS=90PASSWORD_WARNDAYS=28回退操作执行:#cp /etc/default/security_bak /etc/default/security #cp /etc/passwd_bak /etc/passwd风险说明可能在密码过期后影响正常使用及维护1.8设定密码历史,不能重复使用最近5次(含5次)内已使用的口令配置项名称应配置设备,使用户不能重复使用最近5次(含5次)内已使用的口令检查方法执行:#more /etc/default/security查看是否存在以下参数:PASSWORD_HISTORY_DEPTH=5操作步骤1、执行备份:#cp –p /etc/default/security /etc/default/security_bak #cp –p /etc/passwd /etc/passwd_bak2、执行下列命令,编辑/etc/default/security#vi /etc/default/security修改以下参数:PASSWORD_HISTORY_DEPTH=5回退操作执行:#cp /etc/default/security_bak /etc/default/security #cp /etc/passwd_bak /etc/passwd风险说明低风险1.9限制r o o t用户远程登录配置项名称root用户远程登录限制检查方法执行:#more /etc/securetty检查是否有下列行:Console执行:#more /opt/ssh/etc/sshd_config 检查是否有PermitRootLogin no操作步骤1、执行备份:#cp –p /etc/securetty / etc/securetty_bak#cp -p /opt/ssh/etc/sshd_config /opt/ssh/etc/sshd_config_bak 2、新建一个普通用户并设置高强度密码:#useradd username#passwd username3、禁止root用户远程登录系统:#vi /etc/securetty去掉console前面的注释,保存退出#vi /opt/ssh/etc/sshd_config将PermitRootLogin后的yes改为no回退操作执行:#cp /etc/securetty_bak /etc/securetty#cp -p /opt/ssh/etc/sshd_config_bak /opt/ssh/etc/sshd_config风险说明严重改变维护人员操作习惯,必须新建一个能够执行交互式登录的普通用户并能够通过su提升权限,可能带来新的威胁1.10检查p a s s w d、g r o u p文件权限设置配置项名称检查passwd、group文件权限设置检查方法执行:#ls –l /etc/passwd /etc/group操作步骤1、执行备份:#cp –p /etc/passwd /etc/passwd_bak #cp –p /etc/group /etc/group_bak 2、修改文件权限:#chmod 644 /etc/passwd#chmod 644 /etc/group回退执行:#cp /etc/passwd_bak /etc/passwd #cp /etc/group_bak /etc/group风险说明权限设置不当可能导致无法执行用户管理,并可能造成某些应用运行异常1.11删除帐户目录下的.n e t r c/.r h o s t s/.s h o s t s文件配置项名称删除帐户目录下的.netrc/.rhosts/.shosts文件检查方法执行下列命令,检查帐户目录下是否存在.netrc/.rhosts/.shosts文件# logins -ox | cut -f6 -d: | grep /home/ | while read dir; do ls -a "$dir" ;done操作步骤1、执行备份:使用cp命令备份.netrc/.rhosts/.shosts文件2、删除文件:使用rm -f命令删除.netrc/.rhosts/.shosts文件回退操作使用cp命令恢复被删除的.netrc/.rhosts/.shosts文件风险说明可能影响需要使用远程连接的应用1.12系统u m a s k设置配置项名称系统umask设置检查方法执行:#more /etc/profile 检查系统umask值操作步骤1、执行备份:#cp -p /etc/profile /etc/profile_bak 2、修改umask设置:#vi /etc/profile将umask值修改为027,保存退出回退操作执行:#cp /etc/profile_bak /etc/profile风险说明umask设置不当可能导致某些应用无法正确自动创建目录或文件,从而运行异常2访问、认证安全配置要求2.1远程登录取消t e l n e t采用s s h配置项名称远程登录取消telnet采用ssh检查方法查看SSH、telnet服务状态:#ps –elf | grep ssh#ps –elf | grep telnetSSH服务状态查看结果为:online telnet服务状态查看结果为:disabled操作步骤1、备份#cp –p /etc/inetd.conf /etc/inetd.conf_bak2、修改/etc/inetd.conf文件,将telnet行注释掉#telnet stream tcp nowait root /usr/lbin/telnetd telnetd3、安装ssh软件包,通过#/opt/ssh/sbin/sshd start来启动SSH。

Linux下的系统安全加固方法

Linux下的系统安全加固方法

Linux下的系统安全加固方法在当今信息化时代,计算机系统的安全性显得尤为重要。

而Linux作为一种开源操作系统,其灵活性和可配置性为我们提供了强大的安全加固工具和功能。

本文将介绍一些常见的Linux下的系统安全加固方法,帮助读者加强系统的安全性。

1. 更新和升级系统保持操作系统及相关软件的最新版本是确保系统安全的第一步。

定期更新和升级系统可以及时修复系统漏洞和安全隐患,并获得最新的安全补丁和功能特性。

常用的命令包括“yum update”或“apt-get upgrade”等。

2. 安装防火墙防火墙是Linux系统保护网络安全的重要工具。

可以通过配置iptables或firewalld等工具来实现防火墙的功能。

合理配置防火墙规则可以限制网络访问、过滤恶意流量,并对可信来源进行安全访问控制。

3. 用户管理与访问控制合理的用户管理和访问控制是系统安全的核心。

建议进行以下措施:3.1. 删除不必要的用户账号清理掉无用的或未授权的用户账号,减少系统受到攻击的风险。

3.2. 强化密码策略设置密码的复杂性要求,要求用户定期更换密码,并禁止使用弱密码。

3.3. 禁止root远程登录禁止root账号通过远程方式登录,减少系统远程攻击的风险。

3.4. 使用sudo限制命令权限尽量使用sudo命令来执行特权操作,限制用户对系统的直接访问。

4. 加密通信加密通信是保障系统安全的重要环节。

可以通过配置SSL/TLS证书来加密网络通信,确保数据在传输过程中的安全性。

同时,禁止使用明文传输的协议和服务,如Telnet和FTP等。

5. 安全审计和监控通过安全审计和监控可以实时监测系统的安全状态,发现潜在的威胁和异常行为。

常见的安全审计工具有AIDE和OSSEC等,可以实时监控文件和系统的变化,并发出警报。

6. 定期备份和恢复定期备份系统和关键数据是防范数据丢失和系统崩溃的有效方法。

备份数据应存储在安全的位置,并进行定期验证和测试。

linux系统加固方案

linux系统加固方案

Linux系统加固方案概述Linux是一种广泛使用的操作系统,但在连接互联网的环境中,安全性是一个非常重要的考虑因素。

本文将介绍一些常用的Linux系统加固方案,帮助提高系统的安全性。

密码设置密码强度对于系统的安全至关重要。

应遵循以下几个密码设置的最佳实践:•密码长度:推荐设置8位或更长。

•复杂性:密码应包含大写和小写字母、数字和特殊字符。

•定期更改密码:建议每3个月更换一次密码。

•禁用账户锁定:在一定的登录失败尝试次数后,锁定用户账户,以防止暴力破解。

系统更新及时进行系统更新是关键的安全步骤。

更新可以修复已知的漏洞,并提供对新的安全威胁的防护。

以下是进行系统更新的步骤:1.使用包管理器更新软件包:依据不同的Linux发行版,使用相应的包管理器(如apt、yum)更新操作系统和软件包。

2.自动更新设置:可以设置自动更新,以确保系统和软件包定期自动更新。

防火墙配置防火墙可阻止未经授权的访问和网络攻击,控制流入和流出的网络通信。

以下是一些防火墙配置的示例:•使用iptables或firewalld:根据不同的Linux发行版,使用iptables 或firewalld命令设置防火墙规则。

•允许必要的端口:只开放必要的端口,如SSH(22号端口)和HTTP(80号端口)。

•拒绝不必要的端口和服务:禁止不必要的端口和服务,以减少暴露系统的攻击面。

安全访问控制实施安全访问控制策略可以减少未经授权的访问和恶意活动。

以下是几个重要的安全访问控制方法:•禁用不必要的账户:禁用不再使用或不必要的系统账户。

•限制root用户访问:仅授权特定的管理员使用root权限,其他用户使用普通权限。

•使用sudo:通过使用sudo命令,可以临时提升用户权限以执行特定任务,而无需使用root账户。

文件和目录权限控制通过适当的文件和目录权限控制,可以限制对系统关键文件和敏感数据的访问。

以下是几个权限控制的最佳实践:•使用最小权限原则:为用户和组分配最少的权限,以限制他们对文件和目录的访问。

Linux操作系统安全系统配置要求规范V1.0

Linux操作系统安全系统配置要求规范V1.0

L i n u x操作系统安全配置规范版本号:1.0.0目录1概述 (1)1.1适用范围 (1)1.2外部引用说明 (1)1.3术语和定义 (1)1.4符号和缩略语 (1)2LINUX设备安全配置要求 (1)2.1账号管理、认证授权 (2)2.1.1账号 (2)2.1.2口令 (4)2.1.3授权 (10)2.2日志配置要求 (11)2.3IP协议安全配置要求 (13)2.3.1IP协议安全 (13)2.4设备其他安全配置要求 (14)2.4.1检查SSH安全配置 (14)2.4.2检查是否启用信任主机方式,配置文件是否配置妥当 (15)2.4.3检查是否关闭不必要服务 (15)2.4.4检查是否设置登录超时 (16)2.4.5补丁管理 (17)1概述1.1适用范围本规范适用于LINUX操作系统的设备。

本规范明确了LINUX操作系统配置的基本安全要求,在未特别说明的情况下,适用于Redhat与Suse操作系统版本。

1.2外部引用说明1.3术语和定义1.4符号和缩略语(对于规范出现的英文缩略语或符号在这里统一说明。

)2LINUX设备安全配置要求本规范所指的设备为采用LINUX操作系统的设备。

本规范提出的安全配置要求,在未特别说明的情况下,均适用于采用LINUX操作系统的设备。

本规范从运行LINUX操作系统设备的认证授权功能、安全日志功能、IP网络安全功能,其他自身安全配置功能四个方面提出安全配置要求。

2.1账号管理、认证授权2.1.1账号2.1.1.1检查是否删除或锁定无关账号2.1.1.2检查是否限制root远程登录2.1.2口令2.1.2.1检查口令策略设置是否符合复杂度要求2.1.2.2检查口令生存周期要求2.1.2.3检查口令重复次数限制2.1.2.4检查口令锁定策略2.1.2.5检查FTP是否禁止匿名登录2.1.2.6检查是否存在弱口令2.1.3授权2.1.3.1检查帐号文件权限设置2.2日志配置要求本部分对LINUX操作系统设备的日志功能提出要求,主要考察设备所具备的日志功能,确保发生安全事件后,设备日志能提供充足的信息进行安全事件定位。

Linux系统安全加固脚本使用Python编写的Linux系统安全加固脚本

Linux系统安全加固脚本使用Python编写的Linux系统安全加固脚本

Linux系统安全加固脚本使用Python编写的Linux系统安全加固脚本Linux系统是一种开放源代码的操作系统,广泛应用于服务器和个人计算机领域。

然而,随着网络攻击日益复杂和频繁,保护Linux系统的安全性变得尤为重要。

为此,许多安全专家和系统管理员利用Python编写了一些强大的脚本,用于加固Linux系统的安全性。

本文将介绍一款基于Python的Linux系统安全加固脚本的使用方法和相关知识。

一、什么是Linux系统安全加固脚本?Linux系统安全加固脚本是一种自动化工具,它基于Python语言,通过执行一系列指令和配置更改,来提高Linux系统的安全性。

这些脚本可以帮助系统管理员自动化完成一些常见的安全加固操作,减少手动配置的繁琐和出错的可能性。

二、为什么使用Python编写Linux系统安全加固脚本?Python是一种简单易学、功能强大的编程语言,已广泛应用于各个领域。

其语法简洁、代码可读性高,适合编写系统管理和安全相关的脚本。

此外,Python还具备良好的跨平台性,可以轻松运行在多种操作系统上,包括Linux。

三、Linux系统安全加固脚本的功能和特点1. 检查系统补丁和更新:脚本可以自动检查系统中的补丁和更新,并提供相应的操作选项,以确保系统始终运行在最新的稳定版本上。

2. 配置防火墙:脚本可以帮助管理员设置和配置Linux系统的防火墙规则,限制网络访问,并防止不明身份的用户入侵系统。

3. 检测恶意程序:脚本可以扫描系统中的文件和进程,检测潜在的恶意程序和病毒,并提供相应的清除和修复操作。

4. 增强用户访问控制:脚本可以加强对用户访问的控制,通过设置强密码策略、限制登录尝试次数等方式来提高系统的安全性。

5. 监控系统日志:脚本可以自动监控系统日志文件,及时报告异常事件和安全风险,以便管理员及时采取措施应对。

四、如何使用Linux系统安全加固脚本?使用Linux系统安全加固脚本非常简单,只需要按照以下步骤进行操作:1. 下载脚本文件:从可信的源或开源社区下载Linux系统安全加固脚本的源代码文件。

linux系统安全加固手册 09

linux系统安全加固手册 09

Linux 系统平安加固手册平安补丁:安装操作系统提供商公布的最新的平安补丁各常见的Linux 公布平安信息的web 地址: RedHatLinux:CalderaOpenLinux: ConectivaLinux: DebianGNU/Linux: MandrakeLinux: LinuxPPC:y/ S.u.S.E.:YellowDogLinux:2.网络和系统效劳:确保只有确实需要的效劳在运行:先把所有通过ineted/xineted 运行的网络效劳关闭,再翻开确实需要的效劳尽大多数通过inetd/xinetd 运行的网络效劳都能够被禁止,比方echo,exec,login,shell,who,finger 等.关于telnet,r 系列效劳,ftp 等,强烈建议使用SSH 来代替.2设置xinetd 访咨询操纵〞default{}〞块中参加如下行:only_from=<net>/<num_bit><net>/<num_bit>…每个<net>/<num_bit>(比方192.168.1.0/24)对表示答应的源地址关闭NFS 效劳器进程: 运行chkconfignfsoff NFS 通常存在漏洞会导致未授权的文件和系统访咨询. 2 关闭NFS 客户端进程: 运行chkconfignfslockoff chkconfigautofsoff3 关闭NIS 客户端进程: chkconfigypbindoff NIS 系统在设计时就存在平安隐患4 关闭NIS 效劳器进程: 运行chkconfigypservoff chkconfigyppasswdoff5关闭其它基于RPC 的效劳: 运行chkconfigportmapoff基于RPC 的效劳通常特别脆弱或者缺少平安的认证,然而还可能共享敏感信息.除非确实必需,否那么应该完全禁止基于RPC 的效劳.6关闭SMB 效劳运行chkconfigsmboff除非确实需要和Windows 系统共享文件,否那么应该禁止该效劳.7 禁止Netfs足本chkconfignetfsoff假如不需要文件共享可禁止该足本8 关闭打印机守护进程chkconfiglpdoff 假如用户从来不通过该机器打印文件那么应该禁止该效劳.Unix的打印效劳有糟糕的平安记录.9 关闭启动时运行的XServersed's/id:5:initdefault:/id:3:initdefault:/'\mv/etc/inittab.new/etc/inittabchownroot:root/etc/inittabchmod0600/etc/inittab 关于专门的效劳器没有理由要运行XServer,比方专门的Web效劳器10 关闭MailServerchkconfigpostfixoff 多数Unix/Linux系统运行Sendmail作为邮件效劳器,而该软件历史上出现过较多平安漏洞,如无必要,禁止该效劳11 关闭WebServerchkconfigdoff可能的话,禁止该效劳.12 关闭SNMPchkconfigsnmpdoff 假如必需运行SNMP的话,应该更改缺省的communitystring13 关闭DNSServerchkconfignamedoff可能的话,禁止该效劳14 关闭DatabaseServerchkconfigpostgresqloff Linux下常见的数据库效劳器有Mysql,Postgre,Oracle等,没有必要的话,应该禁止这些效劳15 关闭路由守护进程chkconfigroutedoffchkconfiggatedoff 〞静态路由〞,同时它不需要运行特别的守护进程16 关闭Webmin远程治理工具chkconfigwebminoff Webmin是一个远程治理工具,它有糟糕的认证和会话治理历史,因此应该慎重使用17 关闭SquidWebCachechkconfigsquidoff假如必需使用,应该慎重配置chkconfiginetdoff或chkconfigxinetdoff么能够禁止它们19 设置守护进程掩码if["`grep-lumaskfunctions`"=""];thenecho"umask022">>functionsfi 系统缺省的umask值应该设定为022以防止守护进程创立所有用户可写的文件3.核心调整:禁止coredump:cat<<END_ENTRIES*softcore0*hardcore0END_ENTRIES答应coredump会消耗大量的磁盘空间.2 限制NFS客户端使用特权端口:perl-i.orig-pe\'nextif(/^\s*#/||/^\s*$/);($res,@hst)=split("");foreach$ent(@hst){undef(%set);($optlist)=$ent=~/\((.*?)\)/;foreach$opt(split(/,/,$optlist)){$set{$opt}=1;}delete($set{"insecure"});$set{"secure"}=1;$ent=~s/\(.*?\)//;$ent.="(".join(",",keys(%set)).")";}$hst[0]="(secure)"unless(@hst);$_="$res\t".join("",@hst)."\n";'\/etc/exports 能够防止非特权用户发起的automoutedNFS攻击.3 网络参数调整:net.ipv4.ip_forward=0net.ipv4.conf.all.accept_source_route=0net.ipv4.tcp_max_syn_backlog=4096net.ipv4.conf.all.rp_filter=1END_SCRIPTcat<<END_SCRIPT>>/etc/sysctl.confnet.ipv4.conf.all.send_redirects=0net.ipv4.conf.all.accept_redirects=0net.ipv4.conf.default.accept_redirects=0END_SCRIPT 详见:或24.日志系统:捕捉发送给AUTH和AUTHPRIVfacility的消息到日志文件/var/log/secure:if[`grep-c'auth\.'/etc/syslog.conf`-eq0]thenecho-e"auth.*\t\t\t\t/var/log/secure"\fiif[`grep-c'authpriv\.'/etc/syslog.conf`eq0]thenecho-e"authpriv.*\t\t\t\t/var/log/secure"\ .syslog中的AUTH和AUTHPRIVfacility包含了大量平安相关的信息,不是所有Linux公布都记录这些日志信息.应该把这些信息记录到/var/log/secure文件中(该文件仅超级用户可读)fitouch/var/log/securechownroot:root/var/log/securechmod600/var/log/secure5.文件/名目访咨询许可权限:对/etc/fstab中的可移动介质增加〞nosuid〞选项:awk'($2~/^\/m.*\/(floppy|cdrom)$/&&\$3!="supermount")\{$4=sprintf("%s,nosuid",$4)};\{print}'/emv/etc/fstab.new/etc/fstabchownroot:root/etc/fstabchmod0644/etc/fstab2 禁止一般用户来mount可移动文件系统:cd/etc/securityegrep-v'(floppy|cdrom)'console.perms\mv/etc/fstab.new/etc/fstabchownroot:rootconsole.perms/etc/fstabchmod0644/etc/fstab 在基于Linux的公布中一般用户在操纵台上有更大的权限,能够使用CD-ROM和软盘驱动器.甚至在一些公布,比方MandrakeLinux 上当在机器上插进软盘或光碟时系统会通过supermount来自动mount这些驱动器.3 对passwd,shadow,和group文件设置正确的许可权限:cd/etcchownroot:rootpasswdshadowgroupchmod644passwdgroupchmod400shadow 这些文件的属主和组应该为root,passwd和group文件的许可权限应该为644,shadow 文件的许可权限应该为4004 对临时名目设置粘着位:chmod+t/tmpfind/var-typed-perm-0222-xdev-execchmod+t{}\;临时名目不设置粘着位会导致一般用户能够任意删除其它用户建立的临时文件5 查寻未认证的SUID/SGID可程序:forpartin\`awk'($3=="ext2"||$3==“ext3〞)\{print$2}'/etc/fstab`dofind$part\(-perm-04000-o-perm-02000\)\-typef-xdev-printdone6.系统访咨询,认证和授权::forfilein`echo/etc/pam.d/*`;dogrep-vrhosts_auth$file>${file}.newmv${file}.new$filechownroot:root$filechmod644$filedone2 删除: /etc/hosts.equiv文件为系统上的所有用户设置全局信任关系,于.rhost的作用类似.3 校验/etc/ftpusers文件的内容,确认root和系统用户存在在该文件中/etc/ftpusers文件列出了所有禁止使用ftp的用户的名单,通常root和系统用户都应该禁止使用ftp4 限制at/cron给授权的用户:cd/etc/ Cron.allow和at.allow文件列出了答应答应crontab和at命令的用户名单,在多数系统上通常只有系统治理员才需要运行这些命令5 Crontab文件限制访咨询权限:chownroot:root/etc/crontabchmod400/etc/crontabchown-Rroot:root/var/spool/cronchmod-Rgo-rwx/var/spool/cronchown-Rroot:root/etc/cron.*chmod-Rgo-rwx/etc/cron.*系统的crontab文件应该只能被cron守护进程(它以超级用户身份运行)来访咨询,一个一般用户能够修改crontab文件会导致他能够以超级用户身份执行任意程序6 建立恰当的警告banner:echo"Authorizedusesonly.Allactivitymaybe\monitoredandreported.">>/etc/motdchownroot:root/etc/motdchmod644/etc/motdecho"Authorizedusesonly.Allactivitymaybe\monitoredandreported.">>/etc/issueecho"Authorizedusesonly.Allactivitymaybe\ 改变登录banner能够隐躲操作系统类型和版本号和其它系统信息,这些信息能够会对攻击者有用.END7 限制root登录到系统操纵台:cat<<END_FILE>/etc/securettytty1tty2tty3tty4tty5tty6END_FILEchownroot:root/etc/securettychmod400/etc/securetty 通常应该以一般用户身份访咨询系统,然后通过其它授权机制(比方su命令和sudo)来获得更高权限,如此做至少能够对登录事件进行跟踪8 设置LILO/GRUB口令:在/etc/lilo.conf文件的开头参加如下行:restrictedpassword=<password>以root身份执行如下命令:lilo关于GRUB:参加本行到/etc/grub.conf:password<password>以root身份执行如下命令:能够有助于防止基于操纵台的物理攻击7.用户账号和环境:往除或锁定系统账号:foruserinuucpoperatordo/usr/sbin/userdel$userdone foruserinadmaliasapacheaxfrdnsbi ndaemondhcpd\ dnscachednslogftpgamesgdmgopherh althtdigident\ lpmailmailnullnamednewsnobodynsc dpostfix\ postgresqmaildqmaillqmailpqmailq qmailrqmails\ Uucp和operator账号通常是不需要的,能够把它们从passwd和shadow文件中删除,其它账号视具体情况而定.要锁定一个账号,能够把该账号的shell改为一个无效的shell,比方/dev/nullrpcrpcusersquidsympasynctinydnsx fsdo/usr/sbin/usermod-L-s/dev/null$userdone验证没有遗留下来的’+’条目存在于passwd,shadow,group文件中:grep^+:/etc/passwd/etc/shadow/etc/group 这些条目可能会给攻击者提供一个途径来取得系统的访咨询权限,假如存在的化应该删除2 验证是否有账号存在空口令的情况:awk-F:'($2==""){print$1}'/etc/shadow 所有账号应该有一个强口令或者使用类似〞NP〞或〞*LOCKED*〞的口令字串来锁定账号3 检查除了root以外是否还有其它账号的UID为0:awk-F:'($3==0){print$1}'/etc/passwd 任何UID为0的账号在系统上都具有超级用户权限.4 检查root用户的$PATH中是否有’.’或者所有用户/组用户可写的名目超级用户的$PATH设置中假如存在这些名目可能会导致超级用户误执行一个特洛伊木马5 删除属于root用户的具有潜在危险的文件:rm-f/.[rs]hosts/.netrc/root/.[rs]hosts/root/.netrc /.rhost,/.netrc或/root/.rhost,/root/.netrc文件都具有潜在的危险6 用户的home名目许可权限是否为755或更严格的限制:fordirin\`awk-F:'($3>=500){print$6}'/etc/passwd`dochmodgo-w$dirdone 用户home名目的许可权限限制不严可能会导致恶意用户读/修改/删除其它用户的数据或取得其它用户的系统权限7 是否有用户的点文件是所有用户可读的:fordirin\`awk-F:'($3>=500){print$6}'/etc/passwd`doforfilein$dir/.[A-Za-z0-9]*doif[-f$file];thenchmodo-w$file Unix/Linux下通常以〞.〞开头的文件是用户的配置文件,假如存在所有用户可读/写的配置文件可能会使恶意用户能读/写其它用户的数据或取得其它用户的系统权限fidonedone8 删除:fordirin`cut-f6-d:/etc/passwd`dorm-f$dir/.netrcdone.netrc文件中可能会包含未加密的口令9 为用户设置适宜的缺省umask值:cd/etcforfileinprofilecsh.logincsh.cshrcbashrcdoif[`grep-cumask$file`-eq0];thenecho"umask022">>$filefichownroot:root$filechmod444$filedone 为用户设置缺省的umask值有助于防止用户建立所有用户可写的文件而危及用户的数据.8.要害平安工具的安装:安装SSH SSH是一个使用加密连接的平安的远程治理/数据传输协议.它能够用来替代telnet,r命令,ftp等传统的不平安的协议/命令.SSH的最新实现软件能够在下载2 安装NTP NTP(网络时刻协议)用于使网络上的多个系统间的时刻同步,精确的系统时刻有利于保证系统日志的正确性.。

Linux系统安全加固脚本

Linux系统安全加固脚本

Linux系统安全加固脚本Linux系统的安全性一直是用户关注的重点,为了保护系统免受潜在的威胁,加固脚本成为一种常用的措施。

本文将介绍一种高效的Linux系统安全加固脚本,旨在帮助用户提升系统的安全性。

以下是脚本的主要内容:一、用户管理1. 修改默认管理员账户名:默认管理员账户是攻击者的主要目标之一,为了降低风险,应将默认账户名修改为较为复杂的名称。

2. 删除不必要的用户账户:只保留必要的用户账户,删除所有不活跃或不需要的账户。

3. 设置强密码策略:使用复杂的密码并定期更改密码。

二、文件权限1. 设置权限最小化原则:仅为需要访问的用户和进程授予最少权限,禁止其他用户的访问权限。

2. 定期审计文件权限:定期检查文件和目录的权限,并修复异常权限设置。

3. 禁止SUID或SGID权限的文件和脚本:这些权限可能导致系统被滥用或被攻击。

三、网络安全1. 安装防火墙:配置防火墙以限制网络流量,并仅允许经过验证的连接。

2. 关闭不必要的网络服务:只保留必需的网络服务,并关闭所有未使用的服务。

3. 加密网络通信:使用安全的加密协议(如SSH)来保护远程通信的机密性。

四、更新和漏洞修复1. 定期更新操作系统和软件包:应定期更新操作系统和安装的软件包,以修复已知漏洞并提高系统的稳定性。

2. 自动化安全补丁管理:使用脚本自动检测和安装最新的安全补丁。

五、日志和监控1. 启用安全日志记录:配置系统以记录安全事件和登录尝试,以便及时检测和响应潜在的入侵。

2. 安装和配置入侵检测系统(IDS):使用IDS实时监测系统是否受到入侵尝试,并及时发送警报。

六、备份和恢复1. 定期备份系统关键文件:定期备份系统关键文件和配置,以便在系统损坏或数据丢失时进行恢复。

2. 测试备份恢复:定期测试备份文件的完整性,并确保在需要时能够正确恢复系统。

综上所述,本文介绍了一种Linux系统安全加固脚本,通过用户管理、文件权限、网络安全、更新和漏洞修复、日志和监控、备份和恢复等方面的措施,提高系统的安全性。

系统安全加固参考信息

系统安全加固参考信息

Linux 系统安全加固参照信息目录1 操作系统安全 -身份鉴识 31.1 对登录操作系统的用户进行身份表记和鉴识31.2 最小密码长度 31.3 密码复杂度 31.4 密码词典 41.5 系统密码使用时间41.6 对失败登录的次数进行限制41.7 密码重复使用次数设置51.8SSH服务 IP,端口,协议,同意密码错误的次数,网络中同意翻开的会话数 51.9root 账号远程登录设置51.10防备任何人使用su 命令连结 root 用户 61.11系统 Banner设置 62 操作系统安全 -接见控制 72.1 改正帐户口令,改正默认帐户的接见权限72.2 删除剩余的、过期的帐户,防止共享帐户的存在72.3 限制超级管理员远程登录83 操作系统安全 -入侵防备 83.1 仅安装需要的应用程序,封闭不需要的服务和端口83.2 封闭不用要的服务83.3 网络接见控制策略94 操作系统安全 -资源控制 94.1 依据安全策略设置登录终端的安闲超时断开会话或锁定94.2 文件创立初始权限94.3 设置适合的历史命令数目94.4 系统磁盘节余空间充分知足近期的业务需求104.5 检查并记录操作系统的分区状况和文件系统利用率105 操作系统安全—日记105.1 日记功能开启 105.2 失败登录日记监控115.3syslog日记等级的安全配置115.4 安全审计谋略 115.5 系统日记记录 125.6 启用记录 cron 行为日记功能和cron/at 的使用状况 126 操作系统安全 -系统安全 126.1 补丁管理 126.2 检查并记录系统开启的网络端口136.3 封闭无效服务和启动项136.4 仅同意特定 IP 同意接见服务 147 操作系统安全 ---其余服务安全 147.1FTP配置文件 147.2R族文件 157.3NFS文件系统配置状况检查157.4FTP用户及服务安全151操作系统安全 -身份鉴识1.1 对登录操作系统的用户进行身份表记和鉴识要求解决方法需对全部的帐号设置密码,要求在登岸系统时一定输进口令进行身份考证。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

目录
1文档使用说明 (4)
1.1适用范围 (4)
1.2适用人员 (4)
2帐户安全配置要求 (4)
2.1创建/etc/shadow影子口令文件 (4)
2.2建立多帐户组,将用户账号分配到相应的帐户组 (5)
2.3删除或锁定可能无用的帐户 (5)
2.4删除可能无用的用户组 (6)
2.5检查是否存在空密码的帐户 (6)
2.6设置口令策略满足复杂度要求 (7)
2.7设置帐户口令生存周期 (8)
2.8设定密码历史,不能重复使用最近5次(含5次)内已使用的口令 (8)
2.9限制root用户远程登录 (9)
2.10检查passwd、group文件权限设置 (10)
2.11删除帐户目录下的.netrc/.rhosts/.shosts文件 (11)
2.12系统umask设置 (11)
3访问、认证安全配置要求 (12)
3.1远程登录取消telnet采用ssh (12)
3.2限制系统帐户FTP登录 (12)
3.3配置允许访问inetd服务的IP范围或主机名 (13)
3.4禁止除root外帐户使用at/cron (13)
3.5设定连续认证失败次数超过6次(不含6次)锁定该账号 (14)
4文件系统安全配置要求 (15)
4.1重要目录和文件的权限设置 (15)
4.2检查没有所有者的文件或目录 (15)
5网络服务安全配置要求 (16)
5.1禁止NIS/NIS+服务以守护方式运行 (16)
5.2禁用打印服务以守护方式运行 (17)
5.3禁用SENDMAIL服务以守护方式运行 (17)
5.4禁用不必要的标准启动服务 (18)
5.5禁用不必要的inetd服务 (22)
6IP协议安全配置要求 (22)
6.1关闭IP转发 (22)
6.2关闭转发源路由包 (23)
6.3增大最大半连接数防范SYN攻击 (24)
6.4关闭ICMP重定向 (25)
6.5关闭响应echo广播 (26)
6.6关闭响应地址掩码和时间戳广播防止探测 (27)
7日志安全配置要求 (28)
7.1非日志服务器禁止接收syslog (28)
7.2启用inetd日志记录 (29)
7.3配置SYSLOG (29)
7.4记录FTP会话与命令 (30)
7.5设置远程日志服务器 (31)
7.6检查系统日志文件权限 (31)
8其他安全配置要求 (32)
8.1禁用图形界面登录 (32)
8.2字符交互界面帐户超时自动退出 (33)
8.3图形界面设置默认自动锁屏时间为10分钟 (33)
1文档使用说明
1.1适用范围
本文档是Linux操作系统的对于Linux系统的设备账号认证、日志、协议、补丁升级、文件系统管理等方面的安全配置要求。

对系统的安全配置审计、加固操作起到指导性作用。

1.2适用人员
一线维护工程师和安全专业服务工程师。

要求使用人员熟悉Unix命令、系统管理和维护,熟悉安全加固流程。

2帐户安全配置要求
2.1创建/e t c/s h a d o w影子口令文件
2.2建立多帐户组,将用户账号分配到相应的帐户组
帐户
2.3删除或锁定可能无用的
2.4删除可能无用的用户组
2.5检
查是否存在空密码的帐户
2.6设置口令策略满足复杂度要求
2.7 设置帐户口令生存周期
2.8 设定密
码历史,不能重复使用最近5次(含5次)内已使
用的口令
远程登录
2.9限制r o o t用户
2.10检查p a s s w d、g r o u p文件权限设置
2.11删除帐户目录下的.n e t r c/.r h o s t s/.s h o s t s文件
2.12系统u m a s k设置
3访问、认证安全配置要求3.1远程登录取消t e l n e t采用s s h
3.2限制系统帐户F T P登录
3.3配置允许访问i n e t d服务的I P范围或主机名
3.4禁止除r o o t外帐户使用a t/c r o n
3
.5 设定连续认证失败次数超过6次(不含6次)锁定该账号
4文件系统安全配置要求4.1重要目录和文件的权限设置
4.2检查没有所有者的文件或目录
5网络服务安全配置要求
5.1禁止N I S/N I S+服务以守护方式运行
5.2禁用打印服务以守护方式运行
用S E N D M A I L服务以守护方式运行
5.3禁
5.4禁用不必要的标准启动服务
5.5禁用不必要的i n e t d服务
6I P协议安全配置要求6.1关闭I P转发
6.2关闭转发源路由包
6.3 增大最大半连接数防范S Y N
攻击
6.4关闭I C M P重定向
6.5关闭响应e c h o广播
6.6关闭响应地址掩码和时间戳广播防止探测
7日志安全配置要求
7.1非日志服务器禁止接收s y s l o g
7.2启用i n e t d日志记录
O G
7.3配置S Y S L
7.4记录F T P会话与命令
7.5设置远程日志服务器
7.6检查系统日志文件权限
8其他安全配置要求8.1禁用图形界面登录
8.2字符交互界面帐户超时自动退出
屏时间为10分钟
8.3图形界面设置默认自动锁。

相关文档
最新文档