热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Linux服务器密码过期策略、登录次数限制、私钥登录等配置方法

本文介绍了在Linux服务器上进行密码过期策略、登录次数限制、私钥登录等配置的方法。通过修改配置文件中的参数,可以设置密码的有效期、最小间隔时间、最小长度,并在密码过期前进行提示。同时还介绍了如何进行公钥登录和修改默认账户用户名的操作。详细步骤和注意事项可参考本文内容。




linux服务器的一些配置

介绍关于linux服务器的一些配置。


文章目录


  • linux服务器的一些配置
  • 一、linux服务器设置密码过期策略
  • 二、linux服务器设置密码登录次数限制
  • 三、linux服务器设置公钥登录
  • linux服务器修改默认账户用户名
  • 总结




一、linux服务器设置密码过期策略

修改 /etc/login.defs 配置文件,在用xshell登录到服务器后,在命令行界面输入 vim /etc/login.defs 进入服务器配置文件的修改界面,此时xshell界面如下:
在这里插入图片描述
其中该配置文件中需要修改的几个参数如下:

PASS_MAX_DAYS 60 #密码最大有效期,此处参数PASS_MAX_DAYS为60,表示60天后,密码会过期。99999表示永不过期。
PASS_MIN_DAYS 0 #两次修改密码的最小间隔时间,0表示可以随时修改账号密码
PASS_MIN_LEN 8 #密码最小长度,对于root无效
PASS_WARN_AGE 7 #密码过期前多少天开始提示

在xshell界面输入i,开启vim的编辑功能,修改上面的参数来达到想要的密码过期策略设置,比如上面的四个参数,代表linux服务器用户密码的有效期为60天,两次修改密码的时间间隔为0天(即可以随时修改密码),用户设置的密码最小长度为8,在密码过期前7天开始提示密码将要过期。设置完成后按下Esc键,然后再输入 :wq(注:需要前面的英文冒号)后按下Enter键,即对该配置文件修改及配置成功。因为该配置文件仅对之后系统新建的用户有效,因此如果需要修改root用户的密码过期时间,可以先使用 chage -l root 指令查看root用户的密码过期时间。
在这里插入图片描述
若想修改root用户的密码过期时间,输入 chage -M 5 root 可将root用户的密码过期设置为5天后。输入 chage -M 99999 root则将root用户密码设置为永不过期,对其他用户的操作也如此。
在这里插入图片描述

示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。


二、linux服务器设置密码登录次数限制

为了实现这个功能,主要需要修改两个文件 /etc/pam.d/sshd 和 /etc/pam.d/login 其中sshd是ssh登录的配置文件,login是终端登录配置文件。


登录失败处理功能策略(ssh远程连接登录)


首先在linux命令行界面输入 vim /etc/pam.d/sshd进入sshd文件的编辑界面,将配置代码添加至配置文件的第一行,也就是#%PAM-1.0的下面如下:
在这里插入图片描述
参数说明:

#限制登录错误次数配置
auth required pam_tally2.so deny=3 unlock_time=20 #代表对普通用户设置密码错误3次之后便锁定20s
auth required pam_tally2.so deny=3 unlock_time=20 even_deny_root root_unlock_time=20 #普通用户和root用户密码错误3次之后锁定20s
#各参数解释:
even_deny_root #也限制root用户;
deny=3 #设置普通用户和root用户连续错误登陆的最大次数,超过最大次数,则锁定该用户
unlock_time=20 #设定普通用户锁定后,多少时间后解锁,单位是秒;
root_unlock_time #设定root用户锁定后,多少时间后解锁,单位是秒;

修改好该配置文件后按下ESC,输入:wq 保存退出后,该配置文件即可生效。


登录失败处理功能策略(服务器端)


vim /etc/pam.d/system-auth (服务器终端),其他操作均同上。


登录失败处理功能策略(终端)


vim /etc/pam.d/login (终端),其他操作均同上。


三、linux服务器设置公钥登录

给linux服务器配置公钥登录首先需要生成公钥和私钥,生成秘钥的方式有很多种,能直接在xshell等连接工具生成或者直接在服务器生成,如果已有公钥和私钥,可以直接跳至修改配置文件部分。如没有秘钥,以下提供一种服务器生成秘钥的方法,按照以下步骤输入指令,生成公钥和私钥:


生成秘钥


[root@VM-8-15-centos ~]# ssh-keygen -t rsa #选择rsa算法加密生成公钥和私钥
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): test #输入公钥名
Enter passphrase (empty for no passphrase): #输入密码
Enter same passphrase again: #再次输入密码
Your identification has been saved in test.
Your public key has been saved in test.pub.
The key fingerprint is:
SHA256:9o48dWPNIDUG7tKXI6y865I/dlFRU2ILoMJea3Cm7do root@VM-8-15-centos
The key's randomart image is:
+---[RSA 2048]----+
| oo..=..|
| . o =o + |
| + = .o o. |
| . O =. o. |
| o S =o++ |
| = +oo+.o |
| .+..+ . |
| o+++. |
| .=E=. |
+----[SHA256]-----+

修改配置文件


将生成的秘钥文件一个私钥(无后缀)和一个公钥(后缀.pub),移动至 .ssh文件夹(该操作目的为方便之后的配置)。在.ssh目录下执行 以下指令:

[root@VM-8-15-centos .ssh]# cat test.pub >> ~/.ssh/authorized_keys #将生成的公钥输出到authorized_keys文件
[root@VM-8-15-centos .ssh]# chmod 600 authorized_keys #修改authized_keys的权限
[root@VM-8-15-centos .ssh]# vim /etc/ssh/sshd_config #进入sshd_config配置文件的修改界面

#添加或修改以下配置
RSAAuthentication yes #是否开启rsa验证
PubkeyAuthentication yes #是否启用公钥
AuthorizedKeysFile .ssh/authorized_keys #公钥保存位置
PasswordAuthentication no: #是否使用密码登录,如果想只使用私钥登录,可以设置为no

在这里插入图片描述
配置文件修改完成之后,输入service sshd restart (注: centOS 6)或者 systemctl restart sshd.service (注:centOS 7)重启sshd服务,使配置文件生效,将生成的私钥下载至本地,在xshell或者其他工具上导入该私钥(私钥妥善保管),即可实现服务器的私钥登录。


linux服务器修改默认账户用户名

修改以下两个配置文件即可:
代码如下:

vim /etc/passwd #将第一行的第一个root替换为重命名的用户
vim /etc/shadow #将这一行中的root 替换为重命名的用户

如果碰到不能保存退出的情况,使用 :wq! 指令强制保存退出即可,修改完这两个配置文件之后,即可使用新的用户名登录。


总结
这些都是在日常学习中的总结,第一次用csdn写博客,样式啥的不太会,所以看起来会挺乱的,请见谅。

推荐阅读
author-avatar
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有