云计算【第一阶段(23)】Linux系统安全及应用

一、账号安全控制

1.1、账号安全基本措施


1.1.1、系统账号清理

  • 将非登录用户的shell设为/sbin/nologin
  • 锁定长期不使用的账号
  • 删除无用的账号
1.1.1.1、实验1

用于匹配以/sbin/nologin结尾的字符串,$ 表示行的末尾。

(一般是程序用户改为nologin)

grep "/sbin/nologin$" /etc/passwd

usermod -s /sbin/nologin 用户名

 改回去

 1.1.1.2、实验2

 账号锁住
usermod -L wangwu #锁定账号 

或passwd -l wangwu锁定用户账户
passwd -S wangwu# 查看账号状态

解锁(需要有密码不然要加p)

usermod -U wangwu
passwd -u wangwu

 1.1.1.3、实验3

删除无用账号

 1.1.1.4、锁定文件

attr 属性名

如果服务器中的用户账号已经固定,不再进行更改,还可以采取锁定账号配置文件的方法。使用 chattr 命令,分别结合“+i”“-i”选项来锁定、解锁文件,使用 lsattr 命令可以查看文件锁定情况

锁  chattr +i /etc/passwd   /etc/shadow

 测试添加一个用户

 

查 lsattr  /etc/passwd  /etc/shadow

解 chattr -i  /etc/passwd  /etc/shadow

1.1.2、密码安全控制

  • 设置密码有效期
  • 要求用户下次登录时修改密码
1.1.2.1、实验1

vim /etc/login.defs

对新建的用户有效  

其中PASS_MIN_LEN:指定密码的最小长度,默认不小于 5 位,但是现在用户登录时验证已经被 PAM 模块取代,所以这个选项并不生效。

企业会把密码有效期改为30  60 90 天这样

1.1.2.1、实验2

密码失效时间M       m是需要修改密码的最小间隔,也就是几天可以修改一次密码(0表示随时可以修改)

 当使用 -d 0  的时候,下一次登录需要强制修改密码(d本身代表密码最近一次被更改的日期)

 

1.1.3、命令历史限制

历史命令会翻到诸如密码或其他操作,我们要减少历史记录的数量

  • 减少记录的命令条数
  • 注销时自动清空命令历史
  • 终端自动注销
  • 闲置600秒后自动注销

history -c 临时的清除

1.1.3.1、实验1

用于将来的新登录的用户

在vim /etc/profile

改成10

需要重启后生效

1.1.3.2、实验2

在.bash_history删除

或者

echo " " > .bash_history  #清空记录

这个记录不影响然当前 shell 会话中 history 命令的输出,因为 history 命令显示的是当前 shell 会话中存储的历史记录,而不是从 .bash_history 文件中读取的内容。

并且当 shell 会话结束时,这些记录会被追加到 .bash_history 文件中,但是还是要清。

其他办法

如果需要每个用户登出时都清除输入的命令历史记录,可以在/etc/skel/.bash_logout文件中添加下面这行rm -f $HOME/.bash_history 。这样,当用户每次注销时,.bash_history文件都会被删除

1.1.3.3、实验3

或者写在其他.bash_profile或者.bashrc 下

关于环境变量的读取顺序:
/etc/profile   -->   .bash_profile     -->   .bashrc    -->    /bin/bash

修改/etc/profile文件需要管理员权限

1.1.4、终端自动注销

需要注意的是,当正在执行程序代码编译、修改系统配置等耗时较长的操作时,应避免设置 TMOUT 变量。必要时可以执行“unset TMOUT”命令取消 TMOUT 变量设置

 1.1.4.1、实验1

将后面新登录用户都有这个设置

vim /etc/profile

G到最后一行补充

1.1.5、权限的限制

限制su命令用户

默认情况下,任何用户都允许使用 su 命令,从而有机会反复尝试其他用户(如 root) 的登录密码,这样带来了安全风险。为了加强 su 命令的使用控制,可以借助于 pam_wheel 认证模块,只允许极个别用户使用 su 命令进行切换。

1.1.5.1、实验1

在/etc/pam.d/su文件里设置禁止用户使用su命令

a、以上两行是默认状态(即开启第一行,注释第二行),这种状态下是允许所有用户间使用su命令进行切换的。
b、两行都注释也是运行所有用户都能使用su命令,但root下使用su切换到其他普通用户需要输入密码;如果第一行不注释,则root使用su切换普通用户就不需要输入密码(pam rootok. so模块的主要作用是使uid为0的用户,即root用户能够直接通过认证而不用输入密码。)
c、如果开启第二行,表示只有root用户和wheel组内的用户才可以使用su命令
d、如果注释第一行,开启第二行,表示只有whee1组内的用户才能使用su命令,root用户也被禁用su命令。
 

实现过程如下:将授权使用 su 命令 的用户添加到 wheel 组,修改/etc/pam.d/su 认证配置以启用 pam_wheel 认证。

锁定文件

二、系统引导和登录控制

三、弱口令检测

JohntheRipper是一款开源的密码破解工具,可使用密码字典(包含各种密码组合的列表文件)来进行暴力破解。

切换到 /opt目录下

1.解压工具包

2.安装软件编译工具

3.切换到src子目录,进行编译安装

4.准备待破解的密码文件

5.执行暴力破解

6.查看已破解出的账户列表

#使用程序前的一些准备
tar -zxvf john-1.8.0.tar.gz
yum install -y gcc gcc-c++ make
cd /opt/john-1.8.0/src
make clean linux-x86-64#准备文件
cp /etc/shadow /opt/shadow.txt#运行破解
cd /opt/john-1.8.0/run
./john   /opt/shadow.txt#查看
./john --show /opt/shadow.txt#指定的字典
/john --wordlist=./password.lst /opt/shadow.txt 

 

四、端口扫描

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/35961.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

鸿蒙登录页面及页面跳转的设计

目录 任务目标任务分析任务实施1.新建工程项目HMLogin2.设计登录页面Index.visual3.设计第二个页面SecondPage4.修改Index.ets代码5.修改SecondPage.ets代码6.运行工程 任务目标 设计一个简单的登录页面,要求可以将第一页的登录信息,传递到第二个页面&a…

Cesium 在加载 3dTiles 如何如何获取ID

文章目录 问题分析问题 加载的 3dTiles 打印content.getFeature(i)出来后如图所示,想获取到id值 分析 var tileset = mapLayer.init3dTileLayer({url:it.url,maximumMemoryUsage: it.maximumMemoryUsage,

关于RAG优化的几个小技巧

一、背景说明 RAG技术为大型语言模型(LLMs)提供了从数据源检索到的信息,以支撑其生成的答案。简而言之,RAG就是搜索加上LLM提示,你让模型在提供的信息上下文中回答问题。查询和检索到的上下文都被注入到发送给LLM的提…

求生之路史低入手 教你怎么使用求生之路创意工坊提高体验性

求生之路是一款抵御丧尸的第一人称射击游戏,四名幸存者联机配合,在现代的城市中,击败各种丧尸还有强大的变种人BOSS,虽然是十几年前的游戏,但是毫不夸张的说,游戏丝毫不过时,目前steam夏促&…

Redis持久化(RDB AOF)

Redis持久化 MySQL的事务,有四个比较核心的特性: 原子性一致性持久性(和持久化一样),将数据存储在硬盘上,重启主机之后数据仍然存在隔离性 redis是一个内存数据库,把数据存储在内存中&#xff0…

算法题 — 接雨水

给定 n 给非负整数,表示每个宽度为 1 的柱子的高度图,计算按照此排列的柱子,下雨之后能能接到多少雨水。 输入:height [0, 1, 0, 2, 1, 0, 1, 3, 2, 1, 2, 1] 输出:6 解释:上面是由数组 [0, 1, 0, 2, 1,…

布尔运算00

题目链接 布尔运算 题目描述 注意点 运算符的数量不超过 19 个布尔表达式由 0 (false)、1 (true)、& (AND)、 | (OR) 和 ^ (XOR) 符号组成算出有几种可使该表达式得出 result 值的括号方法 解答思路 可以使用动态规划根据左右两侧区间不同结果相应组合数量计算得出当前…

国产Cortex-A55人工智能教学实验箱_基于Python机械臂跳舞实验案例分享

一、实验目的 本实验通过TL3568-PlusTEB教学实验箱修改机械臂不同舵机的角度,增加延迟时间,从而做到机械臂跳舞的效果。 二、实验原理 ROS(机器人操作系统) ROS(机器人操作系统),是专为机器人…

@ComponentScan注解在Spring的作用

ComponentScan注解的作用是什么? 告知Spring扫描那些包下的类,可以配置includeFilters,excludeFilters,过滤某些类,更多内容可以具体看下此注解文件。 Spring是如何通过这个注解将类注入到Ioc容器中的? 请…

[linux]sed命令基础入门详解

sed是一种流编辑器,它一次处理一行内容。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”,接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一行,这…

生命在于折腾——Macbook虚拟机开启360核晶

首先启动PD虚拟机,打开360,发现提示如下: 此时将虚拟机关机。 打开该虚拟机设置: 将虚拟机监控程序改为Parallels,并启动nested虚拟化。 改好后截图如下: 保存设置,开机 此时就可以开启了…

硬件实用技巧:摄像头常用的输出协议类型和输出接口类型

若该文为原创文章,转载请注明原文出处 本文章博客地址:https://hpzwl.blog.csdn.net/article/details/140042485 长沙红胖子Qt(长沙创微智科)博文大全:开发技术集合(包含Qt实用技术、树莓派、三维、OpenCV…

docker 多网卡指定网卡出网

前言 宿主机中有多个网卡 ens160 192.168.4.23/20 内网通信用 ens192 10.31.116.128/24 出公网访问-1 ens193 10.31.116.128/24 出公网访问-2 现在需要不同容器中不同出网访问,举例 容器1 192.168.0.1/20 网段走宿主机 ens160网卡,否则全部走ens192 网…

太速科技-FMC144 -八路 250MSPS 14bit AD FMC子卡

FMC144 -八路 250MSPS 14bit AD FMC子卡 一、板卡概述   FMC144是一款具有8通道模数转换器(ADC)的FMC卡,具有14bit分辨率,最大采样速率达250Msps。时钟配置芯片为AD9516-1,可由板载10MHz时钟提供参考,也可…

STM32人体心电采集系统

资料下载地址:STM32人体心电采集系统 1、项目功能介绍 此项目主要实现了以STM32为核心的人体心电采集系统软硬件的设计。软件设计过程是在STM32上移植的uCGUI做图形界面,并如实显示采集到的心电波形信号,有SD卡存储和USB数据传输功能。 2、实…

Ubuntu20.04安装Prometheus监控系统

环境准备: 服务器名称内网IP公网IPPrometheus服务器192.168.0.23047.119.21.167Grafana服务器192.168.0.23147.119.22.8被监控服务器192.168.0.23247.119.22.82 更改主机名方便辨认 hostnamectl set-hostname prometheus hostnamectl set-hostname grafana hostn…

SAS:quote函数合dhms函数

quote函数 dhms函数 中间停药时的给药日期确定

stm32 No traget connected/debug识别不到串口的问题

关于stm32串口识别不到,第一步先确定是否线接错(stlink与stm32接口对应),如果确认接线没有问题的话,可以使用以下方法,成功率较高。 首先将stlink的boot0置1,就是把跳线帽换到高电平这一侧&…

投标书制作

一、投标书的基本要求l . 帮助与你的标书读者沟通。从这个角度上来讲,标书是一篇针对用户需求的论文,逻辑结构和语言一定要清晰、可读。考虑到评标专家一般都具有较好的学术经验,其中很多还是教授、博导,投标的语言要针对读者的阅…

国产固态光耦在工业照明领域的应用

工业照明作为工厂和生产设施中不可或缺的一部分,其效率和安全性直接影响到生产运行的顺畅性和员工的工作环境。国产固态光耦作为现代工业照明技术的重要组成部分,在提升照明系统效率和安全性方面发挥着关键作用。本文将深入探讨国产固态光耦在工业照明领…