热门标签 | 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写博客,样式啥的不太会,所以看起来会挺乱的,请见谅。

推荐阅读
  • 本文介绍了如何使用C#制作Java+Mysql+Tomcat环境安装程序,实现一键式安装。通过将JDK、Mysql、Tomcat三者制作成一个安装包,解决了客户在安装软件时的复杂配置和繁琐问题,便于管理软件版本和系统集成。具体步骤包括配置JDK环境变量和安装Mysql服务,其中使用了MySQL Server 5.5社区版和my.ini文件。安装方法为通过命令行将目录转到mysql的bin目录下,执行mysqld --install MySQL5命令。 ... [详细]
  • SpringBoot整合SpringSecurity+JWT实现单点登录
    SpringBoot整合SpringSecurity+JWT实现单点登录,Go语言社区,Golang程序员人脉社 ... [详细]
  • Python项目实战10.2:MySQL读写分离性能优化
    本文介绍了在Python项目实战中进行MySQL读写分离的性能优化,包括主从同步的配置和Django实现,以及在两台centos 7系统上安装和配置MySQL的步骤。同时还介绍了创建从数据库的用户和权限的方法。摘要长度为176字。 ... [详细]
  • 本文介绍了在RHEL 7中的系统日志管理和网络管理。系统日志管理包括rsyslog和systemd-journal两种日志服务,分别介绍了它们的特点、配置文件和日志查询方式。网络管理主要介绍了使用nmcli命令查看和配置网络接口的方法,包括查看网卡信息、添加、修改和删除配置文件等操作。 ... [详细]
  • Python脚本编写创建输出数据库并添加模型和场数据的方法
    本文介绍了使用Python脚本编写创建输出数据库并添加模型数据和场数据的方法。首先导入相应模块,然后创建输出数据库并添加材料属性、截面、部件实例、分析步和帧、节点和单元等对象。接着向输出数据库中添加场数据和历程数据,本例中只添加了节点位移。最后保存数据库文件并关闭文件。文章还提供了部分代码和Abaqus操作步骤。另外,作者还建立了关于Abaqus的学习交流群,欢迎加入并提问。 ... [详细]
  •     这里使用自己编译的hadoop-2.7.0版本部署在windows上,记得几年前,部署hadoop需要借助于cygwin,还需要开启ssh服务,最近发现,原来不需要借助cy ... [详细]
  • 原文地址http://balau82.wordpress.com/2010/02/28/hello-world-for-bare-metal-arm-using-qemu/最开始时 ... [详细]
  • Hadoop2.6.0 + 云centos +伪分布式只谈部署
    3.0.3玩不好,现将2.6.0tar.gz上传到usr,chmod-Rhadoop:hadophadoop-2.6.0,rm掉3.0.32.在etcp ... [详细]
  • linux 禁止指定ip访问
    linux中如何禁止指定的ip访问呢?比如被别人暴力破解,被别人使用不同的密码尝试登录:所以我想直接禁用这些ip的访问.怎么办呢?解决方案:修改配置文件etchosts.deny把 ... [详细]
  • pc电脑如何投屏到电视?DLNA主要步骤通过DLNA连接,使用WindowsMediaPlayer的流媒体播放举例:电脑和电视机都是连接的 ... [详细]
  • 本文主要介绍关于linux文件描述符设置,centos7设置文件句柄数,centos7查看进程数的知识点,对【Linux之进程数和句柄数】和【linux句柄数含义】有兴趣的朋友可以看下由【东城绝神】投 ... [详细]
  • mac php错误日志配置方法及错误级别修改
    本文介绍了在mac环境下配置php错误日志的方法,包括修改php.ini文件和httpd.conf文件的操作步骤。同时还介绍了如何修改错误级别,以及相应的错误级别参考链接。 ... [详细]
  • 本文介绍了使用readlink命令获取文件的完整路径的简单方法,并提供了一个示例命令来打印文件的完整路径。共有28种解决方案可供选择。 ... [详细]
  • Annotation的大材小用
    为什么80%的码农都做不了架构师?最近在开发一些通用的excel数据导入的功能,由于涉及到导入的模块很多,所以开发了一个比较通用的e ... [详细]
  • ZABBIX 3.0 配置监控NGINX性能【OK】
    1.在agent端查看配置:nginx-V查看编辑时是否加入状态监控模块:--with-http_stub_status_module--with-http_gzip_stat ... [详细]
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社区 版权所有