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"

时间: 2024-11-05 20:26:38

20个Linux服务器安全强化建议(二)的相关文章

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

Linux服务器安全对于保护用户数据.知识产权非常重要,同时还能减少你面对黑客的时间.在工作中,通常由系统管理员对Linux的安全负责,在这篇文章中,介绍了20条对Linux系统进行强化的建议.本文所有的建议都基于CentOS.RHEL系统或者Ubuntu/Debian的发行版本. #1.加密数据通信方式. 所有通过网络传输的数据都是可以被监听的,因此只要有可能就要使用密码.证书等方式加密你的通讯数据. 1.使用 scp.ssh.rsync或者sftp来进行文件传输.也可以使用特殊的sshfs或

Linux与云计算——第二阶段Linux服务器架设 第一十二章:数据库搭建—PostgreSQL

Linux与云计算--第二阶段Linux服务器架设 第一十二章:数据库搭建-PostgreSQL 1.1 安装PostgreSQL [1] 安装并启动PostgreSQL. [[email protected] ~]# yum -y install postgresql-server [[email protected] ~]# postgresql-setup initdb Initializing database ... OK [[email protected] ~]# vim /var

20个Linux服务器性能调优技巧

Linux是一种开源操作系统,它支持各种硬件平台,Linux服务器全球知名,它和Windows之间最主要的差异在于,Linux服务器默认情况下一般不提供GUI(图形用户界面),而是命令行界面,它的主要目的是高效处理非交互式进程,响应时间并不是那么重要,相反,能够长时间处理高负载才是最关键的. Linux高可用服务器集群解决方案让IT系统管理员可以从容应对许多常见的硬件和软件故障,允许多台计算机一起工作,为关键服务正常运行提供保障,系统管理员可以不中断服务执行维护和升级.Linux服务器有各种用途

Linux服务器性能监控工具sar二

服务器高负载因何而起? 下列项目的过度使用会直接导致高负载问题: CPU 内存(包括虚拟内存) 磁盘I/O 该如何检查这些项目? 这取决于大家是要审查当前资源使用情况还是历史资源使用情况.当然,在本文中我们将从这两方面进行探讨. 关于sar的简要说明 历史资源使用情况可通过sar工具查看,该工具在默认情况下应该通过sysstat软件包安装在所有cPanel服务器当中.只要通过cron命令对sysstat进行周期性执行(/etc/cron.d/sysstat),服务器的运行状态数据就会被收集起来.

Linux服务器管理: 日志管理(二)

日志的轮替 1.日志文件的命名规则 a.如果配置文件中拥有"dateext"参数,那么日志会用日期来作为日志文件的后缀,例如:"secure-20150630".这样的话日志文件不会重叠,所以也就不需要日志文件的改名,只需要保存指定的日志个数,删除多余的日志文件即可. b.如果配置文件中没有"dateext"参数,那么日志文件就需要进行改名 ,当第一次进行日志轮替时,当前的"secure"日志会自动改名为"secur

Linux服务器下载与上传文件

一.图形化工具 FileZilla.SecureCRT,连接Linux服务器后直接操作 二.命令 使用终端模拟软件连接服务器后,首先安装lrzsz工具包 yum install lrzsz rz ,上传文件 sz filename  ,下载文件(只能下载文件,文件夹考虑先打包  tar -czvf xxx.tar.gz xxx/  将xxx文件夹打包压缩为xxx.tar.gz文件) 原文地址:https://www.cnblogs.com/lingblog/p/11963489.html

python批量操作Linux服务器脚本,key登录(执行命令、上传、下载)(二)

1 #-*- coding: utf-8 -*-   2 #批量操作linux服务器(执行命令,上传,下载)   3 #!/usr/bin/python   4 import paramiko   5 import datetime   6 import os   7 import threading   8 def ssh2(ip,username,privatekeyfile,keypwd,cmd):   9     try:  10         paramiko.util.log_to

[转]20个你不得不知的Linux服务器性能调优技巧

Linux是一种开源操作系统,它支持各种硬件平台,Linux服务器全球知名,它和Windows之间最主要的差异在于,Linux服务器默认情况下一般不提供GUI(图形用户界面),而是命令行界面,它的主要目的是高效处理非交互式进程,响应时间并不是那么重要,相反,能够长时间处理高负载才是最关键的.Linux高可用服务器集群解决方案让IT系统管理员可以从容应对许多常见的硬件和软件故障,允许多台计算机一起工作,为关键服务正常运行提供保障,系统管理员可以不中断服务执行维护和升级. Linux服务器有各种用途

linux杂谈(十九):DNS服务器的配置(二)

1.本机和外网的解析 ? ?之前讨论了DNS的正向解析和反向解析,但有的时候我们想让DNS服务器对于服务器本机的解析和对于外网的解析是不同的.那就需要在主配置文件中对本机和外网进行不同的配置: ? ? ? ? ? ?这个是主配置文件中对于本服务器的访问,并且副配置文件为example.com.zone:(注意要注释的内容). ? ? ? ?这个是对于非本机的配置,并且副配置文件为example.com.inter. ? ?为了统一期间,把之前的副配置文件的策略注释掉. ? ? ? ? ?然后我们