linux系统笔记(服务管理、进程计划、服务器加固修复、网络配置)

第八章 系统的启动过程及服务管理

系统启动过程

RHEL系统基本启动过程

linux系统过程概述

第一阶段:BIOS启动引导

实现硬件初始化,外设检查以及定位启动介质;

移交启动惹怒至MBR(磁盘主引导记录)

第二阶段:GRUB/GRUB2启动引导

GRUB/GRUB2引导内容 系统启动加载文件

读取/boot/grub/grub.conf配备

第三阶段:内核加载,只读挂载/设备

加载以及初始化内核

挂载和运行initrd(systemd)文件系统并装载驱动(静态模块)

释放initrd(systemd)文件系统并行切换至根文件系统

第四阶段:Sys初始化

启动init(systemd)进程

运行rc.sysinit脚本并初始化系统环境(并行/etc/system/)

读取inittab确定运行级别以及启动相应服务

开启终端或启动X server以及完成启动过程

systemd与init

init:

一是启动时间长。init进程是串行启动,只有前一个进程启动完,才会启动下一个进程

二十启动脚本复杂。init进程只是执行启动脚本,不管其他事情。脚本需要自己处理各个情况,这往往使得脚本变得很长

systemd:

按需求启动服务,减少系统资源消耗

尽可能并行启动进程,减少系统启动等待时间

/etc/inittab定义了默认启动级别

运行设置及查看

init 5切换为图形模式

vim /etc/inittab
rhel7:systemctl isolate multi-user.target 切换为文本模式
system isolate grapical.target 切换为图形模式

以上为临时修改模式

systemctl set-default multi-user.target 开机默认为文本模式
systemctl set-default graphical.target 开机默认为图形模式

以上为永久修改模式

systemctl:systemctl是与systemd交互的命令

获取当前运行级别的方法

rhel6:runlevel

rhel7:systemctl get-default

在引导提示符下显示target/runlevel的依赖项

systemctl show -p "Requires" multi-user.target
systemctl show -p "Wants" multi-user.target

第九章 进程管理与任务计划

ps 查看静态进程信息

ps aux

STAT

D:(不可中断)不可唤醒的睡眠状态,通常用于I/O情况,kill也不能中断

S:(中断)状态处于休眠中,当某个条件形成后或者已收到信号时脱离该状态

T:(停止)进程收到停止信号后,后台暂停或进程处于出错状态

s:当前进程有多个子进程

Z:表示僵尸进程

<:表示当前进程优先级高

N:表示当前进程优先级低

L:被锁入内存

top:动态查看进程活动与系统负载信息(默认每三秒刷新一次,可以按q退出)

TIME:进程从启动以来占用CPU的时间

必会命令

进程管理

Ctrl+z 前台进程调入后台
​
ctrl+c结束进程
​
jobs 查看后台进程
​
fg # 将后台第#个进程在前台运行
​
bg #  将后台第#个进程在后台运行
​
&   直接将进程放在后台运行
​
kill killall pkill 结束进程

at 一次性定制服务

设置格式

at [HH:MM] [yyy-mm-dd]

at>ctrl+d 结束编辑

查询与删减

atq (at -l)

atrm

at -c #查看指定计划任务内容

crontab 任务计划,可以在指定时间重复执行

查看指令写入格式,可以通过cat /etc/crontab获取(分/时/日/月/周)

用户定义的配置文件位于/var/spool/cron/用户名

crontab -e [-u 用户名] 编辑计划任务

crontab -l [-u 用户名] 查看计划任务

crontab -r [-u 用户名] 删除计划任务

crontab -u

date 获取或修改时间

date 月日时分年

时间数值的特殊表示方法
*表示该范围内任意时间
,表示时间间隔的多个不连续时间点
-表示一个连续的时间范围
/指定间隔的时间频率

第十章 服务器引导加固与修复

常见端口

21/20 ftp
22 ssh
23 telnet
25 smtp
53 dns 
67/68  dhcp
69 tftp
80 http
443 https
110 pop3 995 pop3s sssl
143 imap 993 imap ssl
137 138 nmb 139 445 smb samba
3389 windos remote desktop
3306 mysql 1521 oracle
2049 nfs

kernel升级

确认当前系统内核版本:

查看当前kernel:uname -r

查看可升级kernel: yum list kernel

升级kernel:

yum update kernel (需要提供可更新yum源)

rpm -ivh kernel-3.10.0-123.1.2.el7.x86_64.rpm

yum localinstall kernel-3.10.0-123.1.2.el7.x86_64.rpm

grub2内核启动设置

查看已安装kernel版本

cat /boot/grub2/grub.cfg | grep -i 'red hat'

设置kernel启动版本

grub2 -set-default number (数字按照上面文件的顺序设置,如果有3个核心,设置区间为0-2,如果设置为3的话则顺序为0)

查看设置的启动版本

grub2 -editenv list (/)

破解root密码

Grub引导菜单加密(系统引导管理器GRUB)

通过命令grub2-mkpasswd-pbkdf2生成加密密码 (从grub开始复制)

修改/etc/grub.d/00_header,在末尾追加

cat << EOF

set superusers="user1"

password_pbkdf2 user Encrypted Password Of User1

EOF

更新配置文件已生效

grub-mkconfig -o /boot/grub2/grub.cfg

修复grub2- 引导破坏故障

rm -rf /boot/grub2/

dd if=/dev/zero of=/dev/sda bs=1 count=446

在救援模式下

chroot /mnt/sysimage

grub2-isntall /dev/sda

grub2-mkconfig -o /boot/grub2/grub.cfg

修复/boot/下的所有文件被删除故障

rm -rf /boot/*

在救援模式下

chroot /mnt/sysimage

mount /dev/sr0/mnt

grub2-install /dev/sda

rpm -ivh /mnt/Packages/kernel-3.10.0-514.el7.x86_64.rpm --force

grub2-mkconfig -o /boot/grub2/grub.cfg

第十一章 网络配置与日志分析

网络信息查看与配置

查看网络接口信息

查看所有活动网络接口信息

ipconfig

查看指定网络接口信息

ifconfig

hostname查看当前主机名
​
route -n 查看路由表
​
netstat 查看接口统计信息    netstat -lntup
​
ping测试网络连通性    -c 次数
​
traceroute 测试主机到主机之间经过的网络节点
​
nslookup测试DNS域名解析

命令设置网络接口参数(临时)

 linux网络接口表示方法
​
eth0 eth表示以太网表示第一块网卡
​
lo0表示本地回环网卡
​
 设置网络接口ip以及子网掩码
​
ifconfig eth0 ip地址 [netmask 子网掩码]
​
ifconfig eth0 ip地址 [/掩码长度]
​
 禁用或者重新激活网卡
​
ifconfig eth0 up 或者  ifup eth0
​
ifconfig eth0 down 或者 ifdown eth0
​
 设置虚拟网络接口
​
ifconfig eth0:0 ip地址

命令设置路由表

删除路由表中默认网关记录
route del default gw IP地址
添加默认网关记录
route add default gw IP地址
添加指定网段的路由记录
route add -net 网段地址 gw IP地址
删除指定网段路由记录
route del -net 网段地址

centos7网络查看

nmcli con show [--active]
nmcli con show "static-eth0"
nmcli dev status
​
Apply modification
systemctl restart network.service
nmcli con reload
​
nm-connection-editor

centos7网络配置

nmcli con add con-name "simple" ifname eth0 type ethernet ip4 174.0.0.X/24 gw4 172.25.X.254
nmcli con modify "simple" ipv4.dns 172.25.254
nmcli con modify "simple" ipv4.addresses 172.25.0.X+100/24
nmcli con modify "simple" connection.autoconnect yes
nmcli con modify "simple eth0" connection.autoconnect no
nmcli con modify "simple eth0" +ipv4.addresses 10.0.0.X/24

常用网络配置文件修改

/etc/hostname 主机名称配置文件
/etc/resolv.conf  DNS服务器地址保存位置  (nameserver)
/etc/hosts 主机与IP地址映射记录
修改主机名:hostnamectl set-hostname 主机名称
​

Bond/Team网卡绑定

联网编组提供了更好的性能,而且由于其模块化设计,更可扩展

内核有效地处理网络数据包,teamd处理逻辑接口和接口处理。实现负载平衡和主动备份逻辑。

一下为常见的team模式:

broadcast roundbin activebackup loadbalance lacp

日志管理工具

消息 等级号 级别 说明

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

Journald日志管理

journalctl
journalctl -n 10
journalctl -p err
journalctl -f
journalctl --since today
journalctl --since "-1 hour"
journalctl --since "2022-02-10 20:30:00" --until "2022-02-13 12:00:00"
​
日志实时监控
tail -f logfile / journal -f
eg:tail -f /avr/log/messages

十二章 SElinux和防火墙

SElinux:

强制访问控制 -vs自主访问控制

-默认情况下:没有明确的允许就是拒绝

SElinux策略定义:

-安全的上下文

-允许特定行为

-有条件的开启或关闭布尔值

修改SElinux模式

类型:Enforcing(记录日志),Permissive,or Disabled

配置文件

  • /etc/sysconfig/selinux

图形工具

  • yum install policycoreutils-gui

  • system-config-selinux

运行时修改

  • getenforce and setenforce 0 | 1

  • Kernel arguments:selinux=0 | 1 or enforcing=0 | 1

SElinux文件格式

  • 所有文件和进程都有上下文

  • 安全设置中的元素

-user:role:type:sensitivity:category

-user_u:object_r:tmp_t:s0:c0

管理文件上下文

修改文件的上下文

-chcon -R -t public_content_t /srv/www (selinux relabel)

-semanage fcontext -a -t httpd_sys_content_t

LInux包过滤防火墙概述

  • netfilter

位于linux内核中的包过滤功能体系

称为linux防火墙的“内核态”

  • iptables

位于/sbin/iptables ,用来管理防火墙规则工具

称为linux防火墙的“用户态”

--以上两种称呼都可以表示linux防火墙

iptables的表、链结构1

  • 链规则

规则的作用:对数据包进行过滤处理

链的作用:容纳各种防火墙规则

链的分类依据:处理数据包的不同时机

  • 默认包括五种规则链

INPUT:处理入站数据包

OUTPUT:处理出站数据包

FORWARD:处理转发数据包

POSTROUTING链:在进行路由选择后处理数据包

PREROUTING链:在进行路由选择前处理数据包

iptables的表、链结构2

  • 规则表

表的作用:容纳各种规则链

表的划分依据:防火墙规则的作用相似

  • 默认包括四个规则表

raw表:确定是否对该数据包进行状态跟踪

mangle表:为数据包设置标记

nat表:修改数据包中的源、目标ip地址或端口

filter表:确定是否放行该数据包

数据包过滤的匹配流程1

  • 规则表之间的顺序

raw →mangle →nat →filter

  • 规则链之间的顺序

入站 :PREROUTING →INPUT

出站:OUTPUT →POSTROUTING

转发:PREROUTING →FORWARD →POSTROUTING

  • 规则链内的匹配顺序

按顺序依次检测,匹配即停止(LOG策略例外)

若找不到相匹配的规则,则按该链的默认策略处理

iptables的基本语法-1

语法构成
​
iptables [-t表名]  选项 [链名] [-j 控制类型]
​
iptables -t filter -I INPUT -p icmp -jREJECT
​
I:阻止ping测试
选项、链名、控制类型使用大写字母,其余为小写
​

第十三章 DHCP和SSH

openSSH的基本功能

替换常见的不安全的网络应用程序

提供基于用户的身份验证,从远程主机登录以及远程主机上的交互或非交互式命令操作

不同网络主机之间的文件复制以及压缩数据的可选支持,完全替换"r"实用程序:rlogin,rsh,rcp

跨不安全的网络进行密码安全的身份验证和通信,能够通过端口隧道转发不安全协议,所有通信的自动和透明加密

OpenSSH验证

sshd服务可以使用几种不同的身份验证方法

password(sent securely)

RSA and DSA keys

Kerberos/LDAP

s/key and Secure(OTP)

服务简介

RPM:openssh , openssh-clients , openssh-server

服务:sshd

监听端口:22/tcp

服务器配置文件: /etc/ssh/sshd_config

  • 服务的启动分类:

运行状态启动:systemctl start service

开机自启动: systemctl enable service

1、install
2、service/systemctl status start
3、chkconfig 'service name' on / systemctl enable 'service name'
4、SElinux(enforcing)
5、iptables/firewall

管控ssh连接

用户登录时,sshd在用户和系统之间建立连接

但是,在系统管理员未停止sshd服务前,连接不会断开

查看linux下登录用户的行为信息
w (显示更全)/ who
找出连接进程信息
psaux | grep sshd
将进程结束
kill pid
killall sshd

由sshd提供的安全ftp

sftp host

sftp user@host

DHCP动态主机配置协议

作用:为大量客户机提供自动分配地址,提高网络配置效率‘

可为客户机分配一下信息:ip地址、子网掩码 ,默认搜索域名 ,默认网关 ,DNS服务器地址

DHCP软件可通过yum安装

yum install dhcp -y

DHCP文件: /etc/dhcp/dhcpd.conf

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值