1211日课后shell总结


1211shell


作者:高波

归档:学习笔记

2017年12月11日13:10:56


快捷键:

Ctrl + 1 标题1

Ctrl + 2 标题2

Ctrl + 3 标题3

Ctrl + 4 实例

Ctrl + 5 程序代码

Ctrl + 6 正文


格式说明:

蓝色字体:注释

黄色背景:重要

绿色背景:注意

1.1 目
录    I

第一章    1

1.1.1 namp -sP 10.0.0.0/24    1

1.1.2 time -c 1 -W 10.0.0.6    1

1.1.3 shell的并发    1

1.1.4 一个小例子,仿web容器.    2

1.1.5 nc 命令总结    2

1.1.6 while循环1加到100.    3

1.1.7 iptables 参数-F 清除规则 -L 列出所有规则.    3

1.1.8 网站入侵检测.    3

1.1.9 查看进程所在的文件的目录. netstat找到进程 ll /proc/进程号/exe    3

1.1.10 防止脚本中断的办法.screen的介绍.    4

1.1.11 while 循环之读取文件    4

1.1.12 获取文章的每行 每个单词 每个字符    5

1.1.13 DOS攻击耗光宽带或者web连接数等拼资源.    6

1.1.14 ELK    6

1.1.15 WAF    6

1.1.16 IDS是英文"Intrusion Detection Systems"的缩写,中文意思是"入侵检测系统"。    6

第一章

  1. namp -sP 10.0.0.0/24

入侵者使用Nmap扫描整个网络寻找目标。通过使用" -sP"命令,进行ping扫描。缺省情况下,Nmap给每个扫描到的主机发送一个ICMP echo和一个TCP ACK, 主机对任何一种的响应都会被Nmap得到。 
举例:扫描192.168.7.0网络: 
# nmap -sP 192.168.7.0/24

Sp " 选项告诉Nmap仅仅进行ping扫描。 当你有一组IP地址来扫描时,而且你不知道哪一个是可达的,这时这个选项会很有用。

有一系列和安全扫描相关的命令参数

  1. time -c 1 -W 10.0.0.6

-W timeout

-c 次数

  1. shell的并发

在shell中一般的并发思路是让执行的程序在后台原型,然后你只需要获取结果就可以.

缺点是会打开很多进程.进程多系统会卡死.没有线程级别.不容易实现.

并行后台,控制不了顺序结果输出.

消耗资源过多.

同时开254个进程

没有底部控制并发.

shell文件描述符,控制并发.

开的进程多,线程级别.

  1. 一个小例子,仿web容器.

[[email protected] server]# cat web.sh

#!/bin/bash

while true

do

nc -l 80 < aa.html

done

nc 10.0.0.17 80

ok

  1. nc 命令总结

常用功能:

  1. 端口扫描

				nc -v -w 2
							192.168.2.34 -z 21-24
														
  1. 简单聊天工具
  1. 操作memcache
  1. 拷贝文件

从192.168.2.33拷贝文件到192.168.2.34

在192.168.2.34上: nc -l 1234 > test.txt

在192.168.2.33上: nc 192.168.2.34 < test.txt

  1. while循环1加到100.

  1. awk ‘BEGIN{for (i=0;i<100;i++) sum+=i;print sum}‘

1加到100

  1. iptables 参数-F 清除规则 -L 列出所有规则.

  1. 网站入侵检测.

  1. inotify检查网站的目录下面的修改删除事件
  2. MD5检查. md5sum -C

    被入侵的原因有:

    权限没有设置好777的问题

    root密码过于简单

    web服务等的启动没有使用专门的用户使用了高权限的root用户.

  1. 查看进程所在的文件的目录. netstat找到进程 ll /proc/进程号/exe

[[email protected] ~]# netstat -tlnp

Active Internet connections (only servers)

Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name

tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1228/sshd

tcp6 0 0 :::8080 :::* LISTEN 1272/java

tcp6 0 0 :::22 :::* LISTEN 1228/sshd

[[email protected] 1272]# ll /proc/1272/exe

lrwxrwxrwx 1 jenkins jenkins 0 Dec 11 08:38 /proc/1272/exe -> /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.151-1.b12.el7_4.x86_64/jre/bin/java

[[email protected] 1272]# ll /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.151-1.b12.el7_4.x86_64/jre/bin/java

-rwxr-xr-x 1 root root 7304 Oct 20 22:27 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.151-1.b12.el7_4.x86_64/jre/bin/java

[[email protected] 1272]# ll /usr/bin/java

lrwxrwxrwx 1 root root 22 Dec 1 08:59 /usr/bin/java -> /etc/alternatives/java

  1. 防止脚本中断的办法.screen的介绍.

  1. 第一步下载screen. yum insatll screen -y
  2. 第二步输入命令screen
  3. 第三步执行自己的命令
  4. 第四步ctrl+a+d 后台执行后完毕.
  5. 查看screen -ls 看见一个进程号的文件. screen -r 进程号
    进入进程到前台.
  1. while 循环之读取文件

[[email protected] ~]# while read i;do echo "$i ===";done <aa.txt

fjhjnkjfdjkkjf ===

fjhjn43kjfdj343454kkjf ===

fjhjnkj76fdjkkjf ===

中文在shell是16进制数字解析.

windows是GBK编码

  1. 获取文章的每行 每个单词 每个字符

[[email protected] scripts]# cat readline.sh 
#!/bin/bash
n=1
while read i
  do
   echo "第${n}行 $i"
   m=1
   for x in $i
     do
       echo "第${m}个单词 $x"
       echo $x|grep -o . 
       ((m++))
   done
   ((n++))
done< $1

  1. DOS攻击耗光宽带或者web连接数等拼资源.

故意攻击网络协议实现的缺陷或者消耗目标对象的宽带资源.攻击对象包括宽带,文件系统容量或者开放的进程或者允许的连接.

DDOS攻击.分布式平资源.CC代理服务器分布式拼资源.

  1. ELK

  1. WAF

  1. IDS是英文"Intrusion Detection Systems"的缩写,中文意思是"入侵检测系统"。

入侵检测系统

linux的杀毒软件

时间: 2024-10-13 21:10:48

1211日课后shell总结的相关文章

2015年9月13日和15日【shell、sed&awk 的使用(一)】-JY1506402-19+liuhui880818

目录: 一.shell程序的运行原理 二.shell常用技巧 1.命令历史 2.命令别名 3.命令引用 4.文件名通配 5.常用快捷键 6.补全功能 7.输入输出重定向和管道 8.与用户交互命令 9.脚本的规范建立与执行 10.bash常用选项 11.命令状态结果 持续发现中... 三.常用知识点说明 1.变量 1)变量类型 2)本地变量 3)环境变量 4)特殊变量 2.条件测试 1)整数测试 2)字符串测试 3)文件测试 4)测试表达式 3.条件判断(选择执行) 4.脚本参数(位置参数变量)

2015年9月5日--课后作业

1.总结Linux系统上的任务计划(at.crontab)的详细使用方法: at命令: 承载未来时间运行的某作业: 支持使用作业队列: 默认为a队列: Ctrl+d at [option]... TIME TIME: (1) 绝对时间 HH:MM, MMDD[CC]YY, MM/DD/[CC]YY, DD.MM.[CC]YY or [CC]YY-MM-DD tomorrow (2) 相对时间 now+#UNIT minute, hour, day, week (3) 模糊时间 midnight

Linux基本功杂记——[002]——7月29日课后作业

1.file1文件的内容为:”1 2 3 4 5 6 7 8 9 10” 计算出所有数字的总和 方法一:[[email protected]7 fh]# echo $(tr ' ' '+' <file1) | bc 55 方法二:[[email protected]7 fh]# x=$(($(tr ' ' '+' <file1))) && echo $x 55 方法三:[[email protected]7 fh]# x=$(tr ' ' '+' <file1) | py

7月29日课后练习

1.硬链接与软链接的区别 硬链接:指向文件的inode号码,创建硬链接会使inode"链接数增加.不能给目录创,不能跨分区创,每个硬链接之间都是平等的. 软链接:指向导向文件的文件名,而不是其inode号码,导向文件的inode"链接数"不会因此发生变化.软链接大小取决于路径的字符大小. 2.将/etc/issue文件中的内容转换为大写后保存至/tmp/issue.out文件中 tr [[:lower:]] [[:upper:]] < /etc/issue > /

Linux 第九天: (08月11日) Linux Shell脚本编程

Shell脚本是包含一些命令或声明, 并符合一定格式的文本文件格式要求 运行shebang机制#!/bin/bash bash -n /path/to/some_script  检测脚本中的语法错误bash -x /path/to/some_script  调试执行 bash中变量的种类本地变量 生效范围 当前shell进程, 对当前外进程, 包括子shell无效环境变量 生效范围 当前shell进程和子进程局部变量 生效范围 当前shell进程中某代码片段 通常指函数位置变量 $1 $2 让脚

Linux基本功杂记——[004]——8月4日课后作业

一.找出ip addr命令结果中本机所有的IPv4地址 BASH: [email protected] ~/py $ ip addr | grep -oP '(?:\d+\.){3}\d+/\d+' 127.0.0.1/8 172.18.16.4/24 Python3: [email protected] ~/py $ cat ipaddr.py #!/usr/bin/python3 #-*- coding='utf-8' -*- import re import subprocess ipb

Linux基本功杂记——[007]——8月10日课后作业

/*答案不止一个,仅列出自认为最优雅的存在*/ 作业要求:编写BASH脚本实现题目要求的内容. 一.显示当前主机系统信息,包括主机名,IPv4地址,操作系统版本,内核版本,CPU型号,内存大小,硬盘大小 1 #!/usr/bin/bash 2 printf 3 " Hostname: $(hostname)\n \ 4 IPv4: $(ip addr | grep -oP '(\d+\.){3}\d+/\d+' | awk 'BEGIN{ORS=" "}{print}')\n

2月29日课后作业

1.网站系统开发需要掌握的技术 java语言,环境配置,数据库,php语言 2.课堂测试源代码: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml">

3月10日课后作业

整体感觉这个程序可以划分为很多的小模块,多个模块的堆积对应一个用户的要求是否有分数部分可以采用生成两个随机数并控制其范围,将其中一个作为分子,另一个作为分母:题目数量可以在测试函数中通过变量输入 打印方式导出到文本或者直接在命令行中输出关于是否有乘除法,是否包含括号,数值范围,加减有无负数....可以将几个功能划分为相应的模块,在用户输入对应的要求的时候调用相关功能模块,避免了代码的重复编写打印格式个人感觉用户自己定义的话不太容易单纯用C++简单的代码实现,考虑可以使用几个样式模板提供给用户,让