【Linux笔记】阿里云服务器被暴力破解

一、关于暴力破解

前几天新购进了一台阿里云服务器,使用过程中时常会收到“主机被暴力破解”的警告,警告信息如下:

云盾用户您好!您的主机:... 正在被暴力破解,系统已自动启动破解保护。详情请登录http://i.aliyun.com/dashboard/instance?type=yundun.

通常暴力破解的是采用穷举字典的方式尝试远程登陆,也就是我们所说的“猜”密码的方法。

Linux系统安装完后,超级管理员默认的用户名是root,阿里云服务器的默认级管理员也是root,通常提升安全的做法是修改root帐户的登陆名,可以增加破解难度,修改用户名后阿里云服务器的“主机被暴力破解”也不会再提示。

修改用户名和密码有两个相关配置文件:/etc/passwd/etc/shadow,下面会对这两个文件进行详述。

二、passwd文件

passwd文件的位置在/etc/passwd,该配置文件存放了Linux所有帐号的信息,包括用户名、密码、用户识别码、用户组识别码、注释、宿主目录等,可以使用“cat /etc/passwd”命令查看该文件。

passwd文件每行记录表示一个用户帐户,由7个字段组成,用冒号分隔,格式如下:

username:password:User ID:Group ID:comment:home directory:shell

字段含义如下:

■ username

用户名,它唯一地标识了一个用户帐号。

■ password

用户密码,这里用x表示,真实的密码存放在/etc/shadow对应记录行中。(最早期Linux系统的用户密码是放在此处哦)

■ User ID  

用户识别码,简称UID。Linux系统内部使用UID来标识用户,而不是用户名。

UID是一个整数,用户的UID互不相同,比如root用户的UID:0;普通用户UID:500-60000;伪用户:1-499,如上图,系统安装后会有一些默认伪用户,用于执行对应进程程序。

■ Group ID

用户组识别码,简称GID,对应的用户组存放在/etc/group文件的记录行中。不同的用户可以属于同一个用户组,享有该用户组共有的权限。与UID类似,GID唯一地标识了一个用户组。

■ comment

用户注释,可以为空。可以存放用户全名或其它一些信息

■ home directory

用户宿主目录,用户登陆后的缺省目录。一般来说,root帐号的主目录是/root,其他帐号的家目录都在/home目录下,并且和用户名同名。

■ login command

命令解释器,默认为bash shell。如上图,部份用户记录行的命令解释器为:/sbin/nologin,意思是指该用户是不可登系统的。

三、shadow文件

shadow文件的位置在/etc/shadow,该配置文件存放了Linux所有帐号的信息,只有root权限才可以浏览,包括用户名、最后一次修改时间、最小时间间隔、最大时间间隔、警告时间、帐户闲置时间、失效时间、标志等,可以使用“cat /etc/shadow”命令查看该文件。

shadow文件每行记录表示一个用户帐户,由9个字段组成,用冒号分隔,各字段含义如下: 

■ username

用户名,它唯一地标识了一个用户帐号。

■ password

用户密码,己用MD5进行加密。如果该字段为空*,如果该字段为空!!,如果该字段为空,用户可以不需要密码就可以登陆。

■ Days since epoch of last password change

最后一次修改时间,用户最后一次修改密码的天数,以1970-1-1为参考点进行计算。

■ Days until change allowed

最小时间间隔,两次修改密码之间的最小天数,如果该字段为0,表示不限定。

■ Days before change required

最大时间间隔,密码保持有效的最多天数,如果该字段为99999,表示不限定。

■ Days warning for expiration

警告时间,从系统开始警告到密码失效的天数。

■ Days before account inactive

帐号闲置时间,判断用户多久未登陆,如果该字段为空,表示未闲置。

■ Days since Epoch when account expires

失效时间,密码失效的绝对天数,如果该字段为空,表示未失效。

■ Reserved

保留位,一般不使用。

四、相关配置和命令

■ pwconv

该命令将所有用户密码从/etc/passwd移动到/etc/shadow中。

■ pwunconv

该命令将所有用户密码从/etc/shadow恢复到/etc/passwd中。

■ /etc/skel

所有新创建用户的信息配置文件在该目录下,新建用户时会拷贝该目录下的所有文件到新建用户的宿主目录 ,默认是隐藏的。

■ /etc/login.defs

该配置文件是设置用户帐号限制的文件,这里的配置对root用户无效。如果/etc/shadow文件里有相同的选项,则以/etc/shadow里的设置为准,也就是说/etc/shadow的配置优先级高于/etc/login.defs。

■ /etc/default/useradd

该配置文件是设置新建用户时的缺省选项。

■ /etc/motd

该配置文件是设置用户登陆时的提示信息。

 

原文地址:https://www.cnblogs.com/lyongde/p/3216661.html