运维不得不会的一些运维技巧(非常详细) 收藏这一篇就够了

shell 密码生成

  
echo  \`< /dev/urandom tr -dc \_A-Z-a-z-0-9 | head -c32\`  
或者  
yum install pwgen  
  
pwgen 12位随机密码  


列出所有变量

  
set  


查看二进制文件内容

  
hexdump /usr/sbin/init > 1.txt  


检测修复磁盘

  
  
e2fsck  


随机数取

  
import random  
  
print (random.randrange(1,29))  


vim 粘贴格式乱

  
set paste  


清理cache内存

 /etc/sysctl.conf  
vm.drop\_caches = 1  
vm.drop\_caches = 2  
vm.drop\_caches = 3

操作机录写入message

  
vim rsys.sh  
  
cat >> /etc/profile <<EOF  
  
HISTFILESIZE\=2000  
  
HISTSIZE\=2000  
  
HISTTIMEFORMAT\="%Y%m%d-%H%M%S: "  
  
export HISTTIMEFORMAT  
  
export PROMPT\_COMMAND\='{ command=$(history 1 | { read x y; echo $y; }); logger -p local1.notice -t bash -i "user=$USER,ppid=$PPID,from=$SSH\_CLIENT,pwd=$PWD,command:$command"; }'  
  
EOF  
  
echo "127.0.0.1  secaudit.xf.conf" >>/etc/hosts  
  
echo ':msg,contains, "Did not receive identification string from 127.0.0.1" ~' >>/etc/rsyslog.conf  
  
echo "authpriv.\* @secaudit.xf.conf" >>/etc/rsyslog.conf  
  
echo "local1.notice @secaudit.xf.conf" >>/etc/rsyslog.conf  
  
service rsyslog restart  


安装桌面图形化

  
yum groupinstall "GNOME Desktop" "Graphical Administration Tools"  
  
systemctl set-default graphical.target  


configure时

  
vim auto/cc/gcc  
  
#debug  
  
#CFLAGS="$CFLAGS -g" ##这一行注释起来,关闭编译时的调试模式,这样编译得到的源码包的大小会减少很多  


centos7阿里云源安装

  
wget \-O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo  
  
wget \-O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo  


解决ssh连接慢的问题

  
第一个:sed \-i 's/GSSAPIAuthentication yes/GSSAPIAuthentication no/g' /etc/ssh/sshd\_config  
  
第二个:sed \-i 's/#UseDNS yes/UseDNS no/g' /etc/ssh/sshd\_config  
  
第三个:systemctl restart sshd.service  


mysql 导入大数据

  
set global max\_allowed\_packet\=268435456;  
  
show global variables like 'max\_allowed\_packet';  


apache 查看并发数

  
netstat \-n | awk '/^tcp/ {++S\[$NF\]} END {for(a in S) print a, S\[a\]}'  


内核升级

  
这里升级内核方法:  
  
\[root@k8s-master01 ~\]# uname  -r  
  
3.10.0-862.el7.x86\_64  
  
       
  
rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-3.el7.elrepo.noarch.rpm  
  
安装完成后检查 /boot/grub2/grub.cfg 中对应内核 menuentry 中是否包含 initrd16 配置,如果没有,再安装一次!  
  
\[root@k8s-master01 ~\]# yum --enablerepo=elrepo-kernel install -y kernel-lt  
  
       
  
设置开机从新内核启动  
  
\[root@k8s-master01 ~\]# grub2-set-default 0  
  
       
  
重启机器  
  
\[root@k8s-master01 ~\]# init 6  
  
       
  
安装内核源文件(在升级完内核并重启机器后执行,也可以不用执行这一步。可选):  
  
\[root@k8s-master01 ~\]# yum --enablerepo=elrepo-kernel install kernel-lt-devel-$(uname -r) kernel-lt-headers-$(uname -r)  
  
       
  
\[root@k8s-master01 ~\]# uname -r  
  
4.4.180-2.el7.elrepo.x86\_64  


py随机数

  
def v\_code():  
  
ret = “”  
  
for i in range(5):  
  
num = random.randint(0,9)  
  
alf = chr(random.randint(65,122))  
  
num\_alf = str(random.choice(\[num,alf\]))  
  
ret +=num\_alf  
  
return ret  
  
print (v\_code())

取消ssl 私钥密码

  
1.使用openssl命令去掉私钥的密码  
  
openssl rsa -in ~/.ssh/id\_rsa -out ~/.ssh/id\_rsa\_new  
  
2.备份旧私钥  
  
mv ~/.ssh/id\_rsa ~/.ssh/id\_rsa.backup  
  
3.使用新私钥  
  
mv ~/.ssh/id\_rsa\_new ~/.ssh/id\_rsa  
  
4.设置权限  
  
chmod 600 ~/.ssh/id\_rsa  


python共享文件(同网段共享大文件)

  
python  -m http.server --directory  共享路径  -b 0.0.0.0 8080  
  
  
  
直接访问ip + 端口 即可  


可以判断一个命令是否支持

command -v  yum

expr 做比较处理

参考文章

https://www.cnblogs.com/f-ck-need-u/p/7231832.html

获取本机ip

  
IP=\`ip addr |grep inet |sed -n '3p'|awk  '{print $2}' |awk -F '/' '{print $1}'\`

邮件发送

vim /etc/mail.rc

  
\# smtp服务器认证的用户名  
  
\# smtp服务器认证的用户名  
  
set from=larryd.yin@feisu.com  
  
\# smtp服务器的地址  
  
set smtp=smtp.exmail.qq.com  
  
\# 邮件认证的方式  
  
set smtp-auth=login  
  
\# smtp服务器认证的用户名  
  
set smtp-auth-user=larryd.yin@feisu.com  
  
\# smtp服务器认证的用户密码(授权码)  
  
set smtp-auth-password=yfqAyfq1020  
  
\# 忽略验证  
  
set ssl-verify=ignore  
  
set nss-config-dir=/etc/maildbs/  


mail -s “test” |mail -s “test1” larryd.yin@feisu.com

时区修改

  
 复制相应的时区文件,替换系统时区文件;或者创建链接文件  
  
cp /usr/share/zoneinfo/$主时区/$次时区 /etc/localtime  
  
  
  
例如:在设置中国时区使用亚洲/上海(+8)  
  
  
  
cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime  


服务器启动流程

  
启动第一步--加载 BIOS  
  
当你打开计算机电源,计算机会首先加载 BIOS 信息,BIOS 信息是如此的重要,以至于计  
算机必须在最开始就找到它。这是因为 BIOS 中包含了 CPU 的相关信息、设备启动顺序信  
息、硬盘信息、内存信息、时钟信息、PnP 特性等等。在此之后,计算机心里就有谱了,  
知道应该去读取哪个硬件设备了。  
  
启动第二步--读取 MBR  
众所周知,硬盘上第 0 磁道第一个扇区被称为 MBR,也就是 Master Boot Record,即主  
引导记录,它的大小是 512 字节,别看地方不大,可里面却存放了预启动信息、分区表信  
息。系统找到 BIOS 所指定的硬盘的 MBR 后,就会将其复制到 0x7c00 地址所在的物理内存中。其实被复制到物理内存的内容就是 Boot Loader,而具体到你的电脑,那就是 lilo 或者 grub了。  
  
  
  
启动第三步--Boot Loader  
Boot Loader 就是在操作系统内核运行之前运行的一段小程序。通过这段小程序,我们可  
以初始化硬件设备、建立内存空间的映射图,从而将系统的软硬件环境带到一个合适的状态,  
以便为最终调用操作系统内核做好一切准备。Boot Loader 有若干种,其中 Grub、Lilo 和 spfdisk 是常见的 Loader。我们以 Grub 为例来讲解吧,毕竟用 lilo 和 spfdisk 的人并不多。系统读取内存中的 grub 配置信息(一般为 menu.lst 或 grub.lst),并依照此配置信息来启动不同的操作系统。  
  
  
  
启动第四步--加载内核  
根据 grub 设定的内核映像所在路径,系统读取内存映像,并进行解压缩操作。此时,屏幕  
一般会输出“Uncompressing Linux”的提示。当解压缩内核完成后,屏幕输出“OK,booting the kernel”。系统将解压后的内核放置在内存之中,并调用 start\_kernel()函数来启动一系列的初始化函数并初始化各种设备,完成 Linux 核心环境的建立。至此,Linux 内核已经建立起来了,基于 Linux 的程序应该可以正常运行了。  
  
  
启动第五步--用户层 init 依据 inittab 文件来设定运行等级  
内核被加载后,第一个运行的程序便是/sbin/init,该文件会读取/etc/inittab 文件,并依据  
此文件来进行初始化工作。其实/etc/inittab 文件最主要的作用就是设定 Linux 的运行等级,其设定形式是“:id:5:initdefault:”,这就表明 Linux 需要运行在等级 5 上。Linux 的运行等级设定如下:  
0:关机  
1:单用户模式  
2:无网络支持的多用户模式  
3:有网络支持的多用户模式  
4:保留,未使用  
5:有网络支持有 X-Window 支持的多用户模式  
6:重新引导系统,即重启  
  
启动第六步--init 进程执行 rc.sysinit  
在设定了运行等级后,Linux 系统执行的第一个用户层文件就是/etc/rc.d/rc.sysinit 脚本程序,它做的工作非常多,包括设定 PATH、设定网络配置(/etc/sysconfig/network)、启  
动 swap 分区、设定/proc 等等。如果你有兴趣,可以到/etc/rc.d 中查看一下 rc.sysinit 文件。  
  
  
启动第七步--启动内核模块  
具体是依据/etc/modules.conf 文件或/etc/modules.d 目录下的文件来装载内核模块。  
启动第八步--执行不同运行级别的脚本程序根据运行级别的不同,系统会运行 rc0.d 到 rc6.d 中的相应的脚本程序,来完成相应的初始化工作和启动相应的服务。  
  
  
  
启动第九步--执行/etc/rc.d/rc.local  
你如果打开了此文件,里面有一句话,读过之后,你就会对此命令的作用一目了然  
rc.local 就是在一切初始化工作后,Linux 留给用户进行个性化的地方。你可以把你想设置  
和启动的东西放到这里。  
  
  
启动第十步--执行/bin/login 程序,进入登录状态  


根分区扩容

查看根分区不够用了

![](https://mmbiz.qpic.cn/sz_mmbiz_png/oibefyPicvTky9PQiaiaxyABD3cTIiaVIwTUqNXA6zDvvZjOKYjJbzWlu3nYtOcag4b6yWDnenIZVKQ1ZUZa2CP3x4Q/640?wx_fmt=png) 

关掉系统,从新增加一块硬盘,开机。(云主机不用关机直接添加就行)

fdisk –l 本次增加的磁盘叫做/dev/vdb

![](https://mmbiz.qpic.cn/sz_mmbiz_png/oibefyPicvTky9PQiaiaxyABD3cTIiaVIwTUqoQ3b0iayMEA2InahNTOKhniaFFBre1LcLmHvlOnOXCiaO4eNC1zjHL0ug/640?wx_fmt=png)

给新增加的磁盘分区:

fdisk /dev/vdb

输入p,查看分区;(新加的硬盘是没有分区的,如果有 数据可以情况,输入d删除)

输入n ,创建新分区;

输入p,创建主分区

输入1,新建xvdc的第一个主分区,(或者回车即可)

回车(默认从开始分)

输入最大的柱面数,也就是磁盘的最大数;或者回车(默认最大的)

选择格式t

列出格式l

输入格式:8e

查看:p

输入w ,保存退出

重启完成后,pvcreate /dev/vdb1 将/dev/vdb1创建为PV

![](https://mmbiz.qpic.cn/sz_mmbiz_png/oibefyPicvTky9PQiaiaxyABD3cTIiaVIwTUqWicdx6AvjHwiaEb1E9qggGrb6OGvcL7dIhF6wjcyiaiaXs2XVibcB0BfeGA/640?wx_fmt=png) 

df –lh 查看根分区的名字,或者说查看需要扩展分区的名字

vgdisplay

![](https://mmbiz.qpic.cn/sz_mmbiz_png/oibefyPicvTky9PQiaiaxyABD3cTIiaVIwTUq5dOcCWHK7QHuqM4iakFck4iaqAGtnIKLyacYNZyLs05kHvaDUFDO6mKQ/640?wx_fmt=png) 

vgextend cl /dev/vdb1

将/dev/vdb1扩展成为根分区

![](https://mmbiz.qpic.cn/sz_mmbiz_png/oibefyPicvTky9PQiaiaxyABD3cTIiaVIwTUq2WJlTRKicWUNkyYO25Qzb6YKXCnqTSeEu5kSFRumHWfKJd40uYlwMicA/640?wx_fmt=png) 

vgdisplay查看卷组情况,几下Free PE数,

![](https://mmbiz.qpic.cn/sz_mmbiz_png/oibefyPicvTky9PQiaiaxyABD3cTIiaVIwTUqDgZiablAtAAiayIpuX4DXrp6myFBXN1aapdEZf4JBYJy6Yb6dsaAa0ag/640?wx_fmt=png) 

查看lvdisplay 查看根LV的Path

![](https://mmbiz.qpic.cn/sz_mmbiz_png/oibefyPicvTky9PQiaiaxyABD3cTIiaVIwTUqPvR7kriceHmia27hGUp2ZbwPzyibXxlkW2ELTYmHcLcoIuB4JGKjSCVvg/640?wx_fmt=png) 

扩容整个加的硬盘到根分区:

lvextend -l +100%FREE /dev/cl/root

或者:扩容100G

lvextend -l +100G /dev/cl/root 

100G的硬盘总共是25599,而其中一部分是用作标记、或者别的预留,所以要少留一点

查看:lvdisplay

使扩容生效:xfs_growfs /dev/cl/root

 Centos6.X 使用:resize2fs /dev/cl/root

![](https://mmbiz.qpic.cn/sz_mmbiz_png/oibefyPicvTky9PQiaiaxyABD3cTIiaVIwTUq1ucg5MYf9GquO6ZGHMsDUEGXvO6N3zFBrKaWZLEjuzLlHnhalbKwBQ/640?wx_fmt=png) 

df –lh 查看一下根分区已经扩展好了。

![](https://mmbiz.qpic.cn/sz_mmbiz_png/oibefyPicvTky9PQiaiaxyABD3cTIiaVIwTUqK4GIjN0EINjoUnOjA2TJrXg0uJAxqlYQiaFU04Evb8vBZPYINvPJZMA/640?wx_fmt=png) 

vmware 热添加磁盘

添加磁盘后  
  
确定主机总线号  
  
\[root@openstack ~\]# reboot ls /sys/class/scsi\_host/^C  
  
\[root@openstack ~\]# ls /sys/class/scsi\_host/  
  
host0  host1  host2  
  
\[root@openstack ~\]# echo "- - -">/sys/class/scsi\_host/host0/scan  
  
\[root@openstack ~\]# echo "- - -">/sys/class/scsi\_host/host1/scan  
  
\[root@openstack ~\]# echo "- - -">/sys/class/scsi\_host/host2/scan  
  
\[root@openstack ~\]# lslb  
  
\-bash: lslb: command not found  
  
\[root@openstack ~\]# lsblk  
  
NAME            MAJ:MIN RM SIZE RO TYPE MOUNTPOINT  
  
sda               8:0    0  50G  0 disk  
  
├─sda1            8:1    0   1G  0 part /boot  
  
└─sda2            8:2    0  49G  0 part  
  
  ├─centos-root 253:0    0  44G  0 lvm  /  
  
  └─centos-swap 253:1    0   5G  0 lvm  \[SWAP\]  
  
sdb               8:16   0  20G  0 disk  
  
sr0              11:0    1   1G  0 rom  
  
\[root@openstack ~\]#

将文件1 的内容逐行拼接到文件2的第一行

awk '{print $1}' 1 |paste - 2

取出括号内的字符

cut -d '(' -f2|cut -d ')' -f1

shell 随机密码

date +%s |sha256sum |base64 |head -c 10 ;echo

抓包分析

  
 tcpdump tcp -i ens33 -t -s 0 -c 100 and dst port ! 22 and src net 10.10.1.0/24 -w ./out.cap

(1)tcp: ip icmp arp rarp 和 tcp、udp、icmp这些选项等都要放到第一个参数的位置,用来过滤数据报的类型(2)-i eth1 : 只抓经过接口eth1的包(3)-t : 不显示时间戳(4)-s 0 : 抓取数据包时默认抓取长度为68字节。加上-S 0 后可以抓到完整的数据包(5)-c 100 : 只抓取100个数据包(6)dst port ! 22 : 不抓取目标端口是22的数据包(7)src net 192.168.1.0/24 : 数据包的源网络地址为192.168.1.0/24(8)-w ./target.cap : 保存成cap文件,方便用ethereal(即wireshark)分析

题外话

在如今互联网技术如日中天、迅猛发展的时代,特别是云计算、大数据、物联网、人工智能等新兴领域的快速发展,对网络安全人才的需求更为迫切。

可以说,只要是生活和工作中用到网络的时候(手机联网、办公连网、车载联网、智能家居联网等场景)就有网络安全。

在这里插入图片描述
目前我国高校网络安全人才的培养规模每年仅3万人,在这样的背景下,即使企业给出高额薪资,也招不够人,导致网安人才平均月薪高达26K

在这里插入图片描述

这里我整合并且整理成了一份【282G】的网络安全/红客技术从零基础入门到进阶资料包,需要的小伙伴文末免费领取哦,无偿分享!!!

学习计划安排

学习路线图大纲总览

在这里插入图片描述

我一共划分了六个阶段,但并不是说你得学完全部才能上手工作,对于一些初级岗位,学到第三四个阶段就足矣~

【一一帮助网络安全学习,以下所有资源免费领取一一】
①网络安全学习路线
②上百份渗透测试电子书
③安全攻防357页笔记
④50份安全攻防面试指南
⑤安全红队渗透工具包
⑥HW护网行动经验总结
⑦100个漏洞实战案例
⑧安全大厂内部视频资源
⑨历年CTF夺旗赛题解析

接下来我将给各位小伙伴划分一张学习计划表!

学习计划

那么问题又来了,作为萌新小白,我应该先学什么,再学什么?
既然你都问的这么直白了,我就告诉你,零基础应该从什么开始学起:

阶段一:初级网络安全工程师

接下来我将给大家安排一个为期1个月的网络安全初级计划,当你学完后,你基本可以从事一份网络安全相关的工作,比如渗透测试、Web渗透、安全服务、安全分析等岗位;其中,如果你等保模块学的好,还可以从事等保工程师。

在这里插入图片描述

综合薪资区间6k~15k

1、网络安全理论知识(2天)
①了解行业相关背景,前景,确定发展方向。
②学习网络安全相关法律法规。
③网络安全运营的概念。
④等保简介、等保规定、流程和规范。(非常重要)

2、渗透测试基础(1周)
①渗透测试的流程、分类、标准
②信息收集技术:主动/被动信息搜集、Nmap工具、Google Hacking
③漏洞扫描、漏洞利用、原理,利用方法、工具(MSF)、绕过IDS和反病毒侦察
④主机攻防演练:MS17-010、MS08-067、MS10-046、MS12-20等

3、操作系统基础(1周)
①Windows系统常见功能和命令
②Kali Linux系统常见功能和命令
③操作系统安全(系统入侵排查/系统加固基础)

4、计算机网络基础(1周)
①计算机网络基础、协议和架构
②网络通信原理、OSI模型、数据转发流程
③常见协议解析(HTTP、TCP/IP、ARP等)
④网络攻击技术与网络安全防御技术
⑤Web漏洞原理与防御:主动/被动攻击、DDOS攻击、CVE漏洞复现

5、数据库基础操作(2天)
①数据库基础
②SQL语言基础
③数据库安全加固

6、Web渗透(1周)
①HTML、CSS和JavaScript简介
②OWASP Top10
③Web漏洞扫描工具
④Web渗透工具:Nmap、BurpSuite、SQLMap、其他(菜刀、漏扫等)


那么,到此为止,已经耗时1个月左右。你已经成功成为了一名“脚本小子”。那么你还想接着往下探索吗?

阶段二:中级or高级网络安全工程师

综合薪资区间15k~30k

7、脚本编程学习(4周)
在网络安全领域。是否具备编程能力是“脚本小子”和真正网络安全工程师的本质区别。在实际的渗透测试过程中,面对复杂多变的网络环境,当常用工具不能满足实际需求的时候,往往需要对现有工具进行扩展,或者编写符合我们要求的工具、自动化脚本,这个时候就需要具备一定的编程能力。在分秒必争的CTF竞赛中,想要高效地使用自制的脚本工具来实现各种目的,更是需要拥有编程能力。

零基础入门的同学,我建议选择脚本语言Python/PHP/Go/Java中的一种,对常用库进行编程学习
搭建开发环境和选择IDE,PHP环境推荐Wamp和XAMPP,IDE强烈推荐Sublime;

Python编程学习,学习内容包含:语法、正则、文件、 网络、多线程等常用库,推荐《Python核心编程》,没必要看完

用Python编写漏洞的exp,然后写一个简单的网络爬虫

PHP基本语法学习并书写一个简单的博客系统

熟悉MVC架构,并试着学习一个PHP框架或者Python框架 (可选)

了解Bootstrap的布局或者CSS。

阶段三:顶级网络安全工程师

这部分内容对于咱们零基础的同学来说还太过遥远了,由于篇幅问题就不展开细说了,我给大家贴一个学习路线。感兴趣的童鞋可以自行研究一下哦,当然你也可以点击这里加我与我一起互相探讨、交流、咨询哦。


在这里插入图片描述

资料领取

上述这份完整版的网络安全学习资料已经上传网盘,朋友们如果需要可以微信扫描下方二维码 即可免费领取↓↓↓
或者

点此链接】领取

  • 13
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值