linux 密码安全脚本
#!/bin/bash
#by:osx1260@.com
DIESO=/etc/pam.d
PAMSO=$(ls $DIESO/* |awk -F'/' '{print $4}')
NEPAMUN='password sufficient pam_unix.so md5 shadow nullok try_first_pass use_authtok remember=5'
for PAMS in $PAMSO;do
if [[ -n $(cat "$DIESO/$PAMS" | grep "shadow" | awk '{print $1}') ]];then
PAMUN=''
PAMUN=$(cat "$DIESO/$PAMS" | grep "shadow" | awk '{print $0}')
if [[ -n $(echo $PAMUN | grep "remember" | awk '{print $1}') ]];then
echo "The password remember has been set"
else
sed -i "s/$PAMUN/$NEPAMUN/" $DIESO/$PAMS
fi
fi
done
#!/bin/sh
#by:osx1260@.com
DIESO=/etc/pam.d
PAMSO=$(ls $DIESO/* |awk -F'/' '{print $4}')
NEPAMUN='password sufficient pam_unix.so md5 shadow nullok try_first_pass use_authtok remember=5'
NEWPASSET='password requisite pam_cracklib.so retry=3 difok=3 minlen=8 ucredit=-1 lcredit=-2 dcredit=-1 ocredit=-1'
#retry=3 密码重试次数为3次
#difok=3 允许新密码中有3个字符与旧密码相同
#minlen=8 密码最小长度为8 注意:对root用户无效,root下设置其他用户此参数也无效,用户自己修改自己的密码时才有效
#ucredit=-1 密码中必须包含一个大写字母
#lcredit=-2 密码中必须包含最少两个小写字母
#dcredit=-1 密码中必须包含一个数字
#ocredit=-1 密码中最少必须包含一个标点符号
[ -f /lib/security/pam_cracklib.so ] && echo "start config pam_cracklib.so"
for PAMS in $PAMSO;do
if [[ -n $(cat "$DIESO/$PAMS" | grep pam_cracklib | awk '{print $1}') ]];then
PASSET=''
PASSET=$(cat "$DIESO/$PAMS" | grep "pam_cracklib.so" | awk '{print $0}')
if [[ -n $( echo $PASSET | grep "difok" | awk '{print $1}') ]];then
echo "The password complexity rule has been set "
else
sed -i "s/${PASSET}/${NEWPASSET}/" $DIESO/$PAMS
fi
fi done
限制tty
#!/bin/sh
for t in $(cat /etc/securetty | grep "^tty" | grep -v "tty[1,2]$");
do
T=''
T=$t
sed -i "s/$T/#$T/" /etc/securetty
done
linux 密码安全脚本的更多相关文章
- [分享]运维分享一一阿里云linux系统mysql密码修改脚本
[分享]运维分享一一阿里云linux系统mysql密码修改脚本 大象吃豆子 级别: 小白 发帖 12 云币 27 加关注 写私信 只看楼主 更多操作楼主 发表于: 2014-09-3 ...
- linux系统mysql密码修改脚本
编写了一个适用于阿里云linux系统 mysql密码修改脚本,使用阿里云提供的一键安装包配置后,如果account.log文件删除,并且忘记mysql密码时,可以通过脚本来重置mysql密码. 附:一 ...
- 详解Linux交互式shell脚本中创建对话框实例教程_linux服务器
本教程我们通过实现来讲讲Linux交互式shell脚本中创建各种各样对话框,对话框在Linux中可以友好的提示操作者,感兴趣的朋友可以参考学习一下. 当你在终端环境下安装新的软件时,你可以经常看到信息 ...
- Linux 下 expect 脚本语言中交互处理常用命令
Linux 下 expect 脚本语言中交互处理常用命令 1. #!/usr/bin/expect 告诉操作系统脚本里的代码使用那一个 shell 来执行.这里的 expect 其实和 Linux 下 ...
- 两款不错的Linux密码生成工具
先介绍最简单的方法,Linux自带的 $ strings /dev/urandom | | ; echo whucNWhr35W6ZP0MxrLQ $ /dev/random | base64 | t ...
- linux自动化交互脚本expect详解set timeout 5是 意思是在expect语句中,5s后超时,不再作出选择。
linux自动化交互脚本expect详解 更新时间:2020年10月21日 10:13:20 作者:lendsomething 这篇文章主要介绍了linux自动化交互脚本expect的相 ...
- 使用C#给Linux写Shell脚本
在这个逼格决定人格,鄙视链盛行的年头,尤其是咱们IT界,请问您今天鄙视与被鄙视的次数分别是多少?如果手中没有一点压箱的本事,那就只有看的份了.今天我们也要提升下自己的格调,学习些脑洞大开的东西,学完之 ...
- 使用C#给Linux写Shell脚本(下篇)
在上篇的<使用C#给Linux写Shell脚本>结尾中,我们留下了一个关于C#如何调用BashShell的问题.在文章发布之后,我留意到有读者留言推荐使用“Pash”(一款类PowerSh ...
- linux下shell脚本执行jar文件
最近在搞一个shell脚本启动jar文件个关闭jar文件的东东.搞得我都蛋疼了.今天晚上终于弄好了 话说,小弟的linux只是刚入门,经过各方查资料终于搞定了.话不多说,下面开始上小弟写的shell脚 ...
随机推荐
- 【小知识】DataTable 转 List -----------点滴之水,汇涓涓细流,成汪洋大海
在大部分时候我们从ADO中得到的数据都是DataTable.DataSet数据源,然而有强迫症的同学老是喜欢折腾,硬是要把它转换为实体集合,说是DataTable效率差云云,于是乎收到了同化. 必要信 ...
- 3.bit-map
适用范围:可进行数据的快速查找,判重,删除,一般来说数据范围是int的10倍以下 基本原理及要点:使用bit数组来表示某些元素是否存在,比如8位电话号码 扩展:bloom filter可以看做是对bi ...
- VSCode调试go
VSCode调试go语言出现:exec: "gcc": executable file not found in %PATH% 1.问题描述 由于安装VS15 Preview ...
- asp.net 文件复制或删除用相对路径,File.Copy中用相对路径,巧用相对路径复制文件
再复制文件 File.Copy(Server.MapPath("被复制的文件相对路径"), Server.MapPath("目的位置相对路径"), true); ...
- 8. Unity异常警告错误处理方法
一. The AnimationClip 'cube1_anim' used by the Animation component 'Cube1' must be marked as Legacy. ...
- ANDROID_MARS学习笔记_S01原始版_001_Intent
一.Intent简介 二.代码 1.activity_main.xml <RelativeLayout xmlns:android="http://schemas.android.co ...
- Altium Designer学习: 允许闭合回路
使用AltiumDesigner画PCB时,顶层和底层都有电源线走 但是通过过孔链接的,主要是因为我这里可使用了几个相同的电源接口,把这些上下层的电源接口连在一起就很容易画出闭合回路,这自身没有太大的 ...
- Redisson使用起来很方便,但是需要redis环境支持eval命令
Redisson使用起来很方便,但是需要redis环境支持eval命令,否则一切都是悲剧,比如me.结果还是要用RedisCommands去写一套.例子就如下,获得一个RLock锁对象,然后tryLo ...
- spring cloud官方文档提到的服务开发的12项要素。
I. Codebase 从一个代码库部署到多个环境. II. Dependencies 使用显式的声明隔离依赖,即模块单独运行,并可以显式管理依赖. III. Config 在系统外部存储配置信息. ...
- redis消息队列
http://blog.csdn.net/21aspnet/article/details/7455032