一、用户防护

Chage  -l  用户名   查看用户账号有效期信息

Chage  -E   时间   用户名   给用户设置过期时间

/etc/login.defs  文件保存许多默认设置

Passwd  -l  用户名  临时锁定用户

Passwd  -S  用户名  查看用户状态

Passwd  -u  用户名  解锁用户

/etc/issue   用户登陆信息(包括操作系统和内核版本号)

二、文件防护

Lsattr  文件名

Chattr  +a  文件名   可以追加

备注:这里追加只能是用echo >>  来追加,用vim打开追加会报错

Chattr  -a   文件名   解锁文件

Chattr  +i   文件名   锁定文件(不允许修改,删除),只能查看

Chattr  -i  文件名   解锁文件

更多操作可以man  chattr查看

三、用户提权

Su - 用户名  切换到该用户

Su - 用户名  -c  “命令”   以该用户的身份执行命令,非交互的(可用于写脚本)

Whoami   查看当前用户身份

Su  -  不加用户就是切到root

Su  -  -c  “命令’  切换成管理员执行命令,这个要输入管理员的密码

Sodu命令

/etc/sudoers  两种方法修改

1、用vim   /etc/sudoers    打开之后有颜色高亮显示,缺点是配置文件写错不会报警

2、Visudo 回车            打开都是一样的颜色,优点是配置文件写错会报警

Example

需求:给sofadm 用户执行 systemctl的权限

1、which  systemctl  查询一下命令所在的路径

/usr/bin/systemctl

2、Vim  /etc/sudoers

找到模板

意思是:允许root用户,以所有身份,执行任何命令

在下边添加一行

Sofadm    ALL=(root)    /usr/bin/systemctl

3、测试一下su  -  sofadm  切换到该用户

Sudo  -l  查看一下可以执行的命令

Sudo  Systemctl  restart sshd   启动不报错

备注:命令可以用感叹号表示不予许做

!  /usr/bin/passwd  root  表示不能给root用户改密码

多个命令之间可以用逗号隔开   

也可以用*表示,比如 /usr/sbin/user*  表示以user开头的命令都授权

! /user/sbin/user*  *  root  第二个*表示命令中选项

可以为sudo 设置log日志,以便跟踪sudo执行操作

在 /etc/sudoers 中添加一行   Defaults  logfile = “/var/log/sudo”  文件名可以自定义

总结:su - 需要知道管理员密码

Sudo 不需要知道管理员密码,但是前提是管理员已经分配权限才能执行

四、Selinux

安全上下文标签  cp 是会把原来文件标签变成之后文件夹下标签

Mv 是会保留原来文件的标签

Example

查看标签  ls  -Z  文件

改变文件标签:  chcon  -t  新标签  文件

或者chcon  --reference=/var/ftp/d1.tar.gz  /var/ftp/d2.tar.gz

比如:在/root下创建一个文件cp到httpd根目录下,程序就没有权限读取,如果是mv过去就有权限读取(阿里云ecs一般都没有开启selinux)

五、加密与解密

Md5sum  文件名    md5校验码,用来查看文件内容是否有变化

Vimdiff   文件1  文件2   比较两个文件的不同

对称加密

Gpg  -c  文件  加密   会在当前目录下生成一个文件.gpg的加密文件

Gpg  -d  文件.gpg >  文件名   解密

非对称加密步骤

1、本机生成密钥对

gpg --gen-key    生成

gpg --list-keys   查看

2、Export导出公钥

gpg -a --export  UserA > /tmp/UserA.pub    -a 表示ASCALL码,UserA表示生成密钥时填的姓名

3、Scp公钥到目标主机

scp /tmp/UserA.pub 192.168.4.5:/tmp/

4、目标主机import导入公钥

gpg --import /tmp/UserA.pub

gpg --list-keys   查看

5、目标主机使用导入的公钥加密数据

gpg -e -r UserA love.txt       -e表示加密,-r表示使用哪个公钥   会生成.gpg文件

6、目标主机scp加密的问价到本机,本机使用私钥解密

scp love.txt.gpg 192.168.4.100:/root

gpg -d love.txt.gpg > love.txt

 

非对称加密的签名机制步骤

1、本机创建文件并用私钥签名

tar zcf log.tar /var/log             //建立测试软件包

gpg -b log.tar                     //创建分离式数字签名

2、scp文件和签名一起发送给目标主机

scp log.tar* 192.168.4.5:/root        //将签名文件与签名传给UserB

3、目标主机使用公钥验证签名的真实性

gpg --verify log.tar.sig log.tar

六、AIDE入侵检测

备注:该软件不会防止入侵,只能检测

步骤

1、装包,光盘自带

Yum   -y  install  aide

2、配置文件位置/etc/aide.aonf  做测试可以修改一下配置文件,只检测/root

找到配置目录的行,ctrl + v ,然后下键到期,点击大写的I ,输入# ,然后按esc 注释之后添加一行  /root  DATAONLY

3、做检测并且把生成的new文件拷贝到其他地方存放好

Aide  --init

存放路径:/var/lib/aide/aide.db.new.gz initialized

4、把new文件拷贝过来并且改名字把new去掉,然后做检测

Mv    拷贝过来的路径/aide.db.new.gz initialized    /var/lib/aide/aide.db.gz initialized

Aide  --check

七、namp扫描

# nmap [扫描类型] [选项] <扫描目标 ...>

//常用的扫描类型// -sS,TCP SYN扫描(半开)

// -sT,TCP 连接扫描(全开)

// -sU,UDP扫描

// -sP,ICMP扫描

// -A,目标系统全面分析

//-p  21-22  ip  扫描指定ip的指定端口

八、抓包

A--------------交换机(路由器)--------------B

前提:要在A和B的路线上或者在A或者B上才能抓包,也就是包要经过抓包的位置

Example:抓ftp包

1、A上装包

Yum -y install tcpdump

2、A抓包

Tcpdump  -A  -h  ip  and  tcp  port  21  -w  ftp.log

-A  是抓的包用ASCALL码显示,不然都是乱码

-w  是抓的包保存在文件中,会自动创建

3、B上连接服务,输入账号密码

ftp  ip

4、A上查看

Tcpdump  -r  ftp.log  |  egrep -i “(user|pass)”

Egrep 是支持扩展正则

-i   是忽略大小写

//监控选项如下:

// -i,指定监控的网络接口

// -A,转换为 ACSII 码,以方便阅读

// -w,将数据包信息保存到指定文件

// -r,从指定文件读取数据包信息

//tcpdump的过滤条件:

// 类型:host、net、port、portrange

// 方向:src、dst

// 协议:tcp、udp、ip、wlan、arp、……

// 多个条件组合:and、or、not

linux基础安全的更多相关文章

  1. Linux基础练习题(二)

    Linux基础练习题(二) 1.复制/etc/skel目录为/home/tuer1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限. [root@www ~]# cp -r ...

  2. 大数据每日干货第四天(linux基础之一目录结构与常用命令)

           为了和qq空间同步,也写的第四天,前面几天明天会发布,本来打算把每天学的东西记录下来,通过朋友给的建议要发的话稍微系统化下,从大数据需要的linux基础,到离线数据分析包括hadoop. ...

  3. Linux课程实践一:Linux基础实践(SSH)

    一.SSH服务 1. 安装SSH (1)查看是否已经安装过ssh服务 rpm -qa |grep ssh (2)进行安装 sudo apt-get install openssh-server Ubu ...

  4. 还是不想改报告,伊阿忆啊哟-Linux基础继续

    hi 虽然今天是最最美好的周六(前不着工作日后不着工作日),但老子还要来改报告,但额就是不想改,你拿我有啥办法啊... 争取完结Linux基础 一.Linux常用命令(三) 4.帮助命令 4.1 帮助 ...

  5. 原来今天是感恩节-Linux基础继续&MySQL和PHP

    hi 原来今天是感恩节.虽然一直没有过这个节日的习惯,但仅仅是听到感恩的消息,都能想到一幅幅画面.愿大家安好! 下午开题会议还是有所收获,悄悄的,就变向那个不喜欢自己的人了. 一.Linux基础(二) ...

  6. 买错的电影票,含着泪也得看-LAMP搭建&Linux基础

    hi 没说过,上周五室友过生请客,在龙湖里吃嗨了喝爽了,回去的路上侃侃而谈.说好的这周一起去看年内最后的大片,火星救援的,谁知道老子眼神不好,买错了电影的时间...把周六的约定提前到了今儿个下午,ma ...

  7. Linux基础3(文件权限)

    文件权限 1.普通权限 (登陆用户对文件或目录的读写执行的权限) 普通权限对管理员用户无效 文件和目录 都有4中类型的用户u 所有者 : 文件.目录的创建者g 所属组 : 文件.目录属于的用户组o 其 ...

  8. Linux课程实践一:Linux基础实践(基础操作)

    一.软件源维护 1. 基本操作 (1)查看源列表 sudo vim /etc/apt/sources.list deb:二进制软件安装包 deb-src:源码包 (2)备份软件源列表 sudo cp ...

  9. 实践一:Linux基础实践

    一.Linux基础实践 1.1 1. 掌握软件源的维护方法,配置系统使用软件源镜像.掌握通过软件源来查找,安装,卸载,更新软件的方法. 这部分内容在许多学长学姐的报告里都有很详细的讲解,我在此就不赘述 ...

  10. Linux基础精华

    Linux基础精华 (继续跟新中...) 常用命令: Linux shell 环境 让你提升命令行效 率的 Bash 快捷键 [完整版] 设置你自己的liux alias Linux的Find使用 L ...

随机推荐

  1. Arm开发板+Qt学习之路-论can网通讯受log日志的影响

    日期:2016-05-25 最近开发过程中发现一个问题,使用两个开发板进行can网通讯,按照经验来说,通讯的速度应该是很快的,项目中将接口的超时时间设置为100ms,在某种情境下,会在短时间内发送多次 ...

  2. iptables详解(8)iptables自定义链

    自定义链存在的意义:对链进行分类 target可能是一个“动作“也可能是一个”自定义链” 1.新增自定义链. root@ubuntu:~# iptables -t filter -N IN_WEB#结 ...

  3. Flume 自定义拦截器 多行读取日志+截断

    前言: Flume百度定义如下: Flume是Cloudera提供的一个高可用的,高可靠的,分布式的海量日志采集.聚合和传输的系统,Flume支持在日志系统中定制各类数据发送方,用于收集数据:同时,F ...

  4. Uncaught TypeError: Cannot set property 'onclick' of null解决办法

    如果把js内容直接放在这个head标签以内,button按钮不能正常点击更换body的背景颜色,报错提示:demo6.html:16 Uncaught TypeError: Cannot set pr ...

  5. ViewPager调用notifyDataSetChanged() 刷新问题解决方案

    一.问题来由 ViewPager控件很大程度上满足了开发者开发页面左右移动切换的功能,使用非常方便.但是使用中发现,在删除或者修改数据的时候,PagerAdapter无法像BaseAdapter那样仅 ...

  6. 百度大脑EasyEdge端模型生成部署攻略

    EasyEdge是百度基于Paddle Mobile研发的端计算模型生成平台,能够帮助深度学习开发者将自建模型快速部署到设备端.只需上传模型,最快2分种即可生成端计算模型并获取SDK.本文介绍Easy ...

  7. Kakfa集群(2.11-0.10.1.0)版本滚动升级方案

    Kafka集群版本升级(2.11-0.10.1.0)升级(2.11-0.10.2.2) 官网升级说明: 一.系统环境Zookeeper集群:172.16.2.10172.16.2.11172.16.2 ...

  8. JAVA架构师眼中的高并发架构,分布式架构 应用服务器集群

    前言 高并发经常会发生在有大活跃用户量,用户高聚集的业务场景中,如:秒杀活动,定时领取红包等. 为了让业务可以流畅的运行并且给用户一个好的交互体验,我们需要根据业务场景预估达到的并发量等因素,来设计适 ...

  9. C# WPF简况(2/3)

    微信公众号:Dotnet9,网站:Dotnet9,问题或建议:请网站留言, 如果对您有所帮助:欢迎赞赏. C# WPF简况(2/3) 阅读导航 本文背景 代码实现 本文参考 1.本文背景 承接上文(C ...

  10. 并发编程之J.U.C的第一篇

    并发编程之J.U.C AQS 原理 ReentrantLock 原理 1. 非公平锁实现原理 2)可重入原理 3. 可打断原理 5) 条件变量实现原理 3. 读写锁 3.1 ReentrantRead ...