专栏首页小狼的世界20个Linux服务器安全强化建议(二)

20个Linux服务器安全强化建议(二)

接上文,继续介绍一些Linux服务器的安全配置。

#6、强密码策略。

当我们使用 useradd、usermod 命令创建或维护用户账号时,确保始终应用强密码策略。例如,一个好的密码至少包括8个字符,包含了字母、数字以及特殊字符串、大小写等。使用诸如“John the ripper”这样的工具来查找弱口令用户,使用 pam_cracklib.so 来增强密码策略。

#6.1 密码生命周期。

chage 命令能够修改口令的修改周期,以及最近一次密码修改的日期。系统依据这些信息判断用户口令是否应该修改。在 /etc/login.defs 文件中定义了包括密码生命周期在内的一些选项。如果需要对某个用户禁用密码生命周期,如下:

1 # chage -M 99999 userName

获取密码过期信息,输入:

1 chage -l userName

我们也可以在 /etc/shadow 文件中定义这些字段:

{userName}:{password}:{lastpasswdchanged}:{Minimum_days}:{Maximum_days}:{Warn}:{Inactive}:{Expire}:

其中:Minimum_days 定义密码修改的最小时间间隔,也就是用户能够修改密码的最小时间间隔。Maximum_days 定义密码有效的时间间隔,超过这个时间,用户就必须修改密码。Warn 定义口令过期多少天前开始向用户提示进行口令修改。Expire 定义从1970年1月1日到过期时的天数,之后该用户将无法再登录。

建议使用 chage 命令,而不是修改 /etc/shadow 文件

1 # chage -M 60 -m 7 -W 7 userName

#6.2、禁止使用之前用过的密码。

可以设置禁止所有用户使用之前的旧密码,pam_unix 模块提供了这个功能,允许我们定义之前几个旧密码不能使用。

#6.3、登录失败后锁定用户。

在Linux中可以使用 faillog 命令来显示失败的登录或者设置失败登录限制。查看失败的登录,可以输入:

faillog

解锁登录失败的用户,运行

faillog -r -u userName

注意可以使用 passwd 命令来锁定或解锁用户密码。

#6.4、如何来检查是否有账号使用了空口令。

使用如下命令:

1 # awk -F: '($2 == "") {print}' /etc/shadow

锁定所有空密码的账户

1  # passwd -l accountName

#6.5、确保没有非Root用户的UID为0。

只有Root用户的UID为0,其具有系统的所有权限。使用下面的命令进行检查:

# awk -F: '($3 == "0") {print}' /etc/passwd

应该仅能看到root一行的结果,如果还有其他用户,请将这些用户删除。

#7、禁止root用户登录。

永远不要使用root用户登录,应该使用 sudo 来执行需要root权限的命令。sudo 避免了root口令的共享,同时提供了一些审计和追踪的功能支持。

#8、服务器的物理安全。

我们必须确保服务器的物理安全,配置 BIOS 禁止从外部设备启动。设置 BIOS 和 grub boot loader 的密码。所有的设备应当安全的存放在IDC(Internet Data Center)中,并且安排了适当的机房安检。

#9、禁用不需要的服务。

禁用所有不必要的服务和守护进程,并且将他们从随系统启动中删除。使用下面的命令来检查是否有服务随系统启动。

# chkconfig --list | grep '3:on'

要禁用服务,可以使用下面的命令:

# service serviceName stop
# chkconfig serviceName off

#9.1、检查网络监听的端口。

使用 netstat 命令查看服务器中有哪些监听端口

# netstat -tulpn

如果有不需要的服务,可以使用 chkconfig 进行关闭。如果需要对外屏蔽,可以使用 iptables 。

#10、删除X Windows。

对服务器来说,X Windows完全没有必要。可以使用包管理工具删除。

# yum groupremove "X Window System"

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 将PHP应用无缝转移到IIS中?

    在使用Godday的空间的时候,他就提供了一个将应用从Linux转移到Windows环境的选项(这个转移还被我们用来作为避免被GW封杀的手段),其实是不知道Go...

    大江小浪
  • 设计网事读书笔记

    从三月份的时候开始读,利用零零星星的时间,终于读完了千年的《设计网事》这本书。虽名为书,实则是他最近几年的博文汇集而来。纵观此书,却与阅读单篇感觉很不一样。下面...

    大江小浪
  • 增强网站易用性的10个设计技巧

    易用性就是是你的网站对用户来说使用更简单,能够让用户在他需要的地方很快找到需要的信息。类比于Google所提倡的”让用户呆在Google的时间不短缩短“,对于网...

    大江小浪
  • 039|前沿|0|未来工业4.0下的智能仓储物流

    众所周知,最近几年不管从政府,从学界,从工业界还是从商界等等,大家都在谈论工业4.0、智能制造、工业互联网的话题。我国也明确的指出制造业是一个国家强大的...

    老King
  • 如何在 Python 内使用深度学习实现 iPhone X 的 FaceID

    在最近推出的 iPhone X 中,它被讨论最多的特点之一是它采用了新的解锁方法,即 TouchID:FaceID。

    AI研习社
  • 支付宝 App 架构的原理与实战

    根据公开的 2018 年移动互联网行业分析报告,目前支付宝的月活跃用户已经超过 QQ ,成为国内第二大 App。

    开发者技术前线
  • 你见过可以解量子力学薛定谔方程的Python库吗

    Python的发展速度持续加快,其应用范围从机器学习逐渐扩散到各个领域。今天给大家介绍一个可以解决量子力学中薛定谔方程的一个Python库Quantized。

    HuangWeiAI
  • 推荐系统 —— 协同过滤

    作为推荐系统 这一系列的第二篇文章,我们今天主要来聊一聊目前比较流行的一种推荐算法——协同过滤; 当然,这里我们只讲理论,并不会涉及到相关代码或者相关框架的使...

    solve
  • 面试题系列第4篇:重写了equals方法,为什么还要重写hashCode方法?

    这不仅仅是一道面试题,而且是关系到我们的代码是否健壮和正确的问题。在前面两篇文章涉及到了equals方法的底层讲解:《说说==和equals的区别?你的回答可能...

    程序新视界
  • 公司团队小流程不正规,设计师没有话语权?破解之道在这里!

    今天,咱们就小伙伴遇到的几个核心问题做个解答。长话短说,通常小伙伴们在实际工作中大概率遇到的问题无外乎如下几个:

    用户5009027

扫码关注云+社区

领取腾讯云代金券