SELinux、SELinux运行模式、破解Linux系统密码、firewalld防火墙介绍、构建基本FTP服务、systemd管理服务、设置运行模式

1 路漫漫其修远兮,吾将上下而求索

2 DNS服务器

作用:负责域名解析的服务器,将域名解析为IP地址

/etc/resolv.conf:指定DNS服务器地址配置文件

3 常用的网络工具

ip命令(Linux最基础的命令)

1.查看IP地址

    [root@server ~]# ip  address   show
    [root@server ~]# ip   a    s

2.临时添加IP地址

    [root@server ~]# ip address add 192.168.10.1/24 dev  eth0
    [root@server ~]# ip   a   a   192.168.20.1/24   dev  eth0
    [root@server ~]# ip  a  s

3.删除临时IP地址

    [root@server ~]# ip  address  del  192.168.10.1/24   dev    eth0
    [root@server ~]# ip   a   s

ping 命令,测网络连接

-c 指定ping包的个数

    [root@server ~]# ping -c  2  192.168.88.240
    [root@server ~]# ping -c  3  192.168.88.2
    [root@server ~]# ping -c  4  192.168.88.3

4 日志管理

•常见的日志文件

/var/log/messages 记录内核消息、各种服务的公共消息

/var/log/dmesg 记录系统启动过程的各种消息

/var/log/cron 记录与cron计划任务相关的消息

/var/log/maillog 记录邮件收发相关的消息

/var/log/secure 记录与访问限制相关的安全消息

•通用分析工具

–tail、tailf、less、grep等文本浏览/检索命令

–awk、sed等格式化过滤工具

tailf:实时跟踪文件内容

[root@server /]# echo 123456 > /opt/1.txt

[root@server /]# tailf /opt/1.txt

•users、who、w 命令

–查看已登录的用户信息,详细度不同

•last、lastb 命令

–查看最近登录成功/失败的用户信息

    [root@server /]# users       
    [root@server /]# who   
     pts:图形命令行终端
    [root@server /]# last          #登录成功的用户
    [root@server /]# lastb        #登录失败的用户

Linux内核定义的事件紧急程度(了解)

–分为 0~7 共8种优先级别

–其数值越小,表示对应事件越紧急/重要

      0  EMERG(紧急)     会导致主机系统不可用的情况
      1  ALERT(警告)     必须马上采取措施解决的问题
      2  CRIT(严重)       比较严重的情况
      3  ERR(错误)        运行出现错误
      4  WARNING(提醒)    可能会影响系统功能的事件
      5  NOTICE(注意)     不会影响系统但值得注意
      6  INFO(信息)       一般信息
      7  DEBUG(调试)     程序或系统调试信息等

5 系统安全保护

SELinux概述

•Security-Enhanced Linux

–美国NSA国家安全局主导开发,一套增强Linux系统安全的强制访问控制体系

–集成到Linux内核(2.6及以上)中运行

–基于SELinux体系针对用户、进程、目录和文件提供了预设的保护策略,以及管理工具

•SELinux的运行模式

–enforcing(强制)、permissive(宽松)

–disabled(彻底禁用)

任何模式变成disabled模式,都要经历重启系统

•切换运行模式

–临时切换:setenforce 1或0

–固定配置:/etc/selinux/config 文件

虚拟机A

    [root@server /]# getenforce  #查看当前运行模式
    Enforcing
    [root@server /]# setenforce 0  #修改当前运行模式
    [root@server /]# getenforce
    Permissive
    [root@server /]# vim    /etc/selinux/config  
    SELINUX=permissive      #需改配置

虚拟机B:同上

虚拟机C:同上

6 破解root密码思路

前提:必须是服务器的管理者,涉及重启服务器

1)重启系统,进入 救援模式

    [root@A ~]# reboot 

开启虚拟机A,在此界面按e键

在linux开头的该行,将此行的ro修改为rw 然后空格输入 rd.break

按 ctrl x 启动,会看到switch_root:/#

2)切换到硬盘操作系统环境

    # chroot    /sysroot   #切换环境,切换到硬盘操作系统的环境

3)重新设置root的密码

    sh-4.2# echo   1    |    passwd   --stdin    root

4)如果SELinux是强制模式,才需要SELinux失忆,其他模式不需要让SELinux进行失忆

    sh-4.2# touch   /.autorelabel    #让SELinux失忆
    或者可以修改SELinux运行模式,修改成宽松模式即可
    sh-4.2# vim   /etc/selinux/config #查看SELinux开机的运行模式

5)强制重启系统完成修复

    sh-4.2# reboot   -f     #-f强制重启系统 才能                                                                                             

密码防护(了解)

1.设置救援模式密码

[root@A ~]# grub2-setpassword

Enter password: #输入密码,密码不显示

Confirm password: #重新输入密码,密码不显示

[root@A ~]# cat /boot/grub2/user.cfg #存放grub密码的文件

7 构建Web服务

Web服务:提供一个页面内容的服务

提供Web服务的软件:httpd、Nginx、tomcat

http协议:超文本传输协议

daemon(守护神)

英 [ˈdiːmən] 美 [ˈdiːmən]

n.(古希腊神话中的)半神半人精灵

虚拟机A:

1.安装软件包

    [root@server ~]# yum  -y  install  httpd

2.运行提供Web服务程序

    ]# /usr/sbin/httpd         #绝对路径运行程序
    ]# pgrep  -l  httpd        #查看进程信息

4.书写一个页面文件

    ]# vim   /var/www/html/index.html
    haha阳光明媚

5.本机浏览器访问测试

    ]# curl   192.168.88.240
    haha阳光明媚

8 构建FTP服务

FTP协议:文本传输协议

实现FTP服务功能的软件:vsftpd

默认共享数据的主目录:/var/ftp/

虚拟机A

1.安装软件包

    [root@server ~]# yum  -y  install  vsftpd
    [root@server ~]# vim /etc/vsftpd/vsftpd.conf
    anonymous_enable=YES   #开启无需密码验证功能

2.运行程序

    [root@server ~]# /usr/sbin/vsftpd
    [root@server ~]# pgrep  -l  vsftpd  #查看进程信息
    [root@server ~]# touch  /var/ftp/dcc.txt

3.本机访问测试

    [root@server ~]# curl  ftp://192.168.88.240
    -rw-r--r--    1 0   0    0 May 16 06:42 dcc.txt
    drwxr-xr-x    2 0    0   6 Oct 13  2020 pub

9 防火墙的策略管理

作用:隔离,严格过滤入站,放行出站

•系统服务:firewalld ----》iptables(底层防火墙)

•管理工具:firewall-cmd、firewall-config(图形)

•根据所在的网络场所区分,预设区域

  • public:仅允许访问本机的ssh、dhcp、ping服务
  • trusted:允许任何访问
  • block:拒绝任何来访请求,明确拒绝客户端
  • drop:丢弃任何来访的数据包,不给任何回应

•防火墙判定原则:

1.查看客户端请求中来源IP地址,查看自己所有区域中规则,那个区域中有该源IP地址规则,则进入该区域

2.进入默认区域(默认情况下为public)

10 防火墙默认区域的修改

虚拟机A

]# firewall-cmd    --get-default-zone   #查看默认区域

虚拟机B

    ]# curl      192.168.88.240    #失败
    ]# curl      ftp://192.168.88.240      #失败
    ]# ping    -c2    192.168.88.240        #成功

虚拟机A:修改默认区域

    ]# firewall-cmd   --set-default-zone=trusted

虚拟机B

    ]# curl      192.168.88.240    #成功
    ]# curl      ftp://192.168.88.240    #成功

11 防火墙public区域添加规则

虚拟机A:添加允许的协议

]# firewall-cmd --set-default-zone=public

    ]# firewall-cmd  --zone=public  --add-service=http   
    ]# firewall-cmd   --zone=public   --list-all

虚拟机B

    ]# curl   http://192.168.88.240    #成功
    ]# curl   ftp://192.168.88.240     #失败

 虚拟机A:添加允许的协议

    ]# firewall-cmd    --zone=public  --add-service=ftp
    ]# firewall-cmd   --zone=public  --list-all

虚拟机B

    ]# curl   http://192.168.88.240    #成功
    ]# curl   ftp://192.168.88.240    #成功

12 防火墙public区域添加规则(永久) 

    -永久(--permanent  破门能它) 
    ]# firewall-cmd   --reload    #加载防火墙永久策略
    ]# firewall-cmd   --zone=public    --list-all
    ]# firewall-cmd    --permanent --zone=public   --add-service=http   #永久添加http协议
    ]# firewall-cmd   --permanent  --zone=public     --add-service=ftp    #永久添加ftp协议
    ]# firewall-cmd   --reload    #加载防火墙永久策略
    ]# firewall-cmd   --zone=public   --list-all

13 防火墙单独拒绝PC2所有的访问 

    虚拟机A:   
    [root@server ~]# firewall-cmd  --zone=block       --add-source=192.168.88.2
    虚拟机A:删除策略
    [root@server ~]# firewall-cmd --zone=block      --remove-source=192.168.88.2

 14 三台虚拟机,卸载防火墙软件

    [root@server ~]# yum  -y remove  firewalld

15 服务管理:程序的运行

手动方式:

/usr/sbin/httpd #绝对路径运行

killall httpd #手动杀死

systemd方式:

用户--->systemd--->找到相应的进程或程序

用户--systemctl--->systemd--服务启动配置文件--->找到相应的进程或程序

服务启动配置文件目录:/lib/systemd/system/

    systemctl  restart    服务名    #重起服务     
    systemctl   start     服务名      #开启服务 
    systemctl   stop     服务名      #停止服务
    systemctl   status    服务名      #查看服务当前的状态
    systemctl  enable   服务名     #设置服务开机自启动
    systemctl   disable   服务名      #设置服务禁止开机自启动
    systemctl   is-enabled  服务名    #查看服务是否开机自启
    ]# yum -y install httpd          
    ]# killall   httpd       #杀死手动启动的httpd   
    ]# systemctl  restart  httpd    #重启httpd服务
    ]# systemctl  status  httpd     #查看服务httpd状态
    ]# systemctl  enable  httpd    #设置httpd开机自启动
    Created symlink from /etc/systemd/system/multi-user.target.wants/httpd.service to /usr/lib/systemd/system/httpd.service.
    ]# systemctl  is-enabled httpd   #查看httpd是否是开机自启动
    ]# systemctl disable  httpd     #关闭httpd开机自启动
    Removed symlink /etc/systemd/system/multi-user.target.wants/httpd.service.
    ]# systemctl  is-enabled httpd   #查看httpd是否是开机自启动

16 管理运行级别

5与6系列:运行级别 300服务

0:关机 0个服务 相当于poweroff

1:单用户模式(基本功能的实现,破解Linux密码) 50个服务

2:多用户字符界面(不支持网络) 80个服务

3:多用户字符界面(支持网络)服务器默认运行级别 100个服务

4:未定义 0个服务

5:图形界面 300个服务

6:重启 0个服务 相当于reboot

切换运行级别:init 数字

7与8系列:运行模式(运行级别)

字符模式:multi-user.target

图形模式:graphical.target

当前直接切换到字符模式

    ]# systemctl  isolate  multi-user.target    #相当于原来的init  3

 当前直接切换到图形模式

    ]# systemctl  isolate  graphical.target    #相当于原来的init  5

查看每次开机默认进入模式

    [root@server /]# systemctl    get-default

设置永久策略,每次开机自动进入字符模式

    [root@server /]# systemctl   set-default   multi-user.target 
    [root@server /]# reboot 

 设置永久策略,每次开机自动进入图形模式

    [root@server /]# systemctl   set-default    graphical.target
    [root@server /]# reboot 

17 真机传递数据到虚拟机 

真机为windows:windterm软件,效果如图-1、图-2、图-3所示。

18 补充内容

杀死一个用户开启的所有进程

命令格式:pkill -9 -u 用户名 -t 终端

[root@pc2 ~]# who #查看正在登录的用户

[root@pc2 ~]# pkill -9 -u root -t pts/1

19 案例1:启用SELinux保护

19.1 问题

本例要求为虚拟机 svr1、ps2 配置SELinux:

  1. 确保 SELinux 处于宽松模式
  2. 在每次重新开机后,此设置必须仍然有效

19.2 方案

SELinux,Security-Enhanced Linux:是由美国NSA国家安全局提供的一套基于内核的增强的强制安全保护机制,针对用户、进程、文档标记安全属性并实现保护性限制。

SELinux安全体系直接集成在Linux内核中,包括三种运行模式:

  • disabled:彻底禁用,内核在启动时不加载SELinux安全体系
  • enforcing:强制启用,内核加载SELinux安全体系,并强制执行保护策略
  • permissive:宽松模式,内核加载SELinux安全体系,只记录不执行

执行getenforce可以查看当前所处的模式。

在disabled模式与enforcing、permissive模式之间切换时,需要重新启动Linux系统;而在enforcing模式与permissive模式之间切换时,并不需要重启,可以直接执行setenforce 1|0操作。

19.3 步骤

实现此案例需要按照如下步骤进行。

步骤一:调整当前的SELinux运行模式

1)查看当前模式

    [root@server0 ~]# getenforce 
    Enforcing                                      //表示当前为强制模式

若上述操作显示的结果为Disabled,表示SELinux机制已被禁用,只能通过步骤修改固定配置后再重启;若显示的结果为Enforcing,表示已经处于强制启用模式。

2)切换为permissive强制启用模式

    [root@server0 ~]# setenforce  0                  //设置宽松模式
    [root@server0 ~]# getenforce                      //确认切换结果
    Permissive

如果在操作1)中显示的结果为Disabled,则无法使用setenforce命令:

    [root@desktop0 ~]# getenforce 
    Disabled
    [root@desktop0 ~]# setenforce 1
    setenforce: SELinux is disabled 

步骤二:为SELinux运行模式建立固定配置

1)修改配置文件/etc/selinux/config

    [root@server0 ~]# vim  /etc/selinux/config
    SELINUX=permissive
    .. ..

2)重启验证结果

    [root@server0 ~]# reboot
    .. .. 
    [root@server0 ~]# getenforce 
    permissive

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

C#,入门教程(19)——循环语句(for,while,foreach)的基础知识

上一篇: C#,入门教程(18)——分支语句(switch-case)的基础知识https://blog.csdn.net/beijinghorn/article/details/124039953 一、for循环 当老师进入教室,从门口开始分别按行、列点名,看看哪位翘课&…

【脑筋急转弯系列】乒乓球称重问题

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学习,不断总结,共同进步,活到老学到老导航 檀越剑指大厂系列:全面总结 jav…

EndNote登录一直显示The username/password specified is not valid

EndNote登录一直显示The username/password specified is not valid EndNote20今天想打开之前的share library的时候一直显示 ‘The Username/password specified is not valid’,查了很多解决方案,现在献上解决方案: 该密码然后重新登陆…

js 回文串

思路: 判断一个字符串是否为回文字符串的基本思路是比较字符串的正序和倒序是否相同。 两者相同,则该字符串是回文字符串,否则不是。 要实现这一思路,我们可以使用 JavaScript 字符串的一些方法。我是忽略了所有的空格和符号&…

超融合之道:亚信安慧AntDB 8.0版本引领数据库创新

在当今多变的数据应用场景中,AntDB作为行业领先的超融合流式实时数仓,秉承着“融合实时”的研发理念,全面应对企业日益复杂的数据处理需求。通过SQL接口访问多种执行引擎,AntDB在实现交易、分析等多重能力的“超融合”方面取得了显…

【MySQL高级】——性能分析

数据库调优中,目标是 响应时间更快,吞吐量更大,利用宏观的监控工具和微观的日志分析帮助我们快速找到调优的思路和方式。 1. 数据库服务器优化步骤 整个流程划分成了 观察(Show status) 和 行动(Action&am…

记一次 .NET某收银软件 非托管泄露分析

一:背景 1. 讲故事 在我的分析之旅中,遇到过很多程序的故障和杀毒软件扯上了关系,有杀毒软件导致的程序卡死,有杀毒软件导致的程序崩溃,这一篇又出现了一个杀毒软件导致的程序非托管内存泄露,真的是分析多…

远程如何才能完整快速的传输大文件?

随着互联网技术的迅速进步,远程文件传输已经成为企业间合作与交流中不可或缺的一环。然而,在需要传输大文件的情况下,传统的文件传输方式往往会面临传输速度慢、文件易损等问题。因此,如何实现远程大文件的快速、安全、完整传输&a…

iOS UI掉帧和卡顿优化解决方案记录

UI卡顿原理 在 VSync 信号到来后,系统图形服务会通过 CADisplayLink 等机制通知 App,App 主线程开始在 CPU 中计算显示内容,比如视图的创建、布局计算、图片解码、文本绘制等。随后 CPU 会将计算好的内容提交到 GPU 去,由 GPU 进行…

教你用通义千问只要五步让千年的兵马俑跳上现代的科目三?

教你用五步让千年的兵马俑跳上现代的舞蹈科目三? 上面这个“科目三”的视频,只用了一张我上月去西安拍的兵马俑照片生成的。 使用通义千问,只要5步就能它舞动起来,跳上现在流行的“科目三”舞蹈。 全民舞王 第1步 打开通义千问…

设计师们必备的神秘利器!这款设计工具不容忽视!

「即时设计」与Figma类似,它是一种云设计工具,可以与多人实时合作,从设计到评估、交付、团队合作和版本管理。 作为一种国内工具,起初我们对它不是很乐观,但不得不说,经过深入使用,无论是迭代速…

【量化交易实战记】小明的破晓时刻——2023下半年新能源汽车板块的成功掘金之旅

在2023年的炎炎夏日,小明在不断的观察分析市场的过程中,突然敏锐地察觉到了新能源汽车市场的风云变幻。他日复一日地研读行业报告、追踪政策动向、分析公司财报,以及密切关注全球市场动态。那段时间里,新能源汽车行业仿佛迎来了一…

C++ 有需求 需要对数字向下取整 int和 double 混淆 已解决

在项目使用中。 原本以为 直接 ceil(13/ 2) 3 但是实际是错误的。 需要 是 ceil(5.0 / 2) double 才能向上取整。结果有大佬 直接使用两种办法 能解决问题。 由于传入的参数和返回的参数都是double&#xff0c;所以需要手动转化 #include <bits/stdc.h> using name…

Docker部署的gitlab升级指南(15.11.X容器里升级PostgreSQL到13.8)

一、确定当前版本 #进入当前版本容器产看gitlab版本 docker exec -it gitlab cat /opt/gitlab/embedded/service/gitlab-rails/VERSION#显示版本如下 14.4.0二、备份数据&#xff0c;防止升级发生意外 #执行备份命令 docker exec -ti gitlab gitlab-rake gitlab:backup:creat…

Mybatis基础---------增删查改

增删改 1、新建工具类用来获取会话对象 import org.apache.ibatis.session.SqlSession; import org.apache.ibatis.session.SqlSessionFactory; import org.apache.ibatis.session.SqlSessionFactoryBuilder; import org.apache.ibatis.io.Resources;import java.io.IOExcept…

Spring环境搭配

概述 Spring 是一个开源框架&#xff0c;Spring 是于2003 年兴起的一个轻量级的Java 开发框架&#xff0c;由 RodJohnson 在其著作 Expert One-On-One J2EE Development and Design 中阐述的部分理念和原型衍生而来。它是 为了解决企业应用开发的复杂性而创建的。框架的主要优势…

【PDF密码】PDF密码,如何强制取消?

想要给PDF文件设置一个密码防止他人对文件进行编辑&#xff0c;那么我们可以对PDF文件设置限制编辑&#xff0c;设置方法很简单&#xff0c;我们在PDF编辑器中点击文件 – 属性 – 安全&#xff0c;在权限下拉框中选中【密码保护】 然后在密码保护界面中&#xff0c;我们勾选【…

一台电脑如何通过另一台联网电脑访问网络

电脑A没有连接网络&#xff0c;电脑B已经连接wifi。 电脑A如何通过访问电脑B从而连接网络&#xff1f; 1. 将这2台电脑用网线直连 2. 电脑B打开【网络和Internet设置】 3. 右键点击WLAN&#xff0c;选择属性&#xff0c;进入共享tab页面&#xff0c;勾选【允许其他网络用户通过…

统计学-R语言-4.7

文章目录 前言描述水平的统计量平均数分位数中位数四分位数 众数描述差异的统计量&#xff08;数据离散程度&#xff09;极差四分位差方差和标准差变异系数标准分数 描述分布形状的统计量偏度与偏度系数峰度与峰度系数 数据的综合描述综合描述的R函数综合描述的实例 总结 前言 …

Linux安装Rdkafka PHP 扩展(Kafka使用教程)

以是centos为例 #可以查看php版本 php -v#查看php安装的扩展库 php -m 1、首先&#xff0c;确保你已经安装了 PHP 和相关的开发工具。你可以使用以下命令来安装它们&#xff1a; sudo yum install php-devel 中间会问你是否ok&#xff0c;输入y回车&#xff0c;出现complete…