版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Linux安全检测及防护学会编写Shell脚本学会Linux主机的基本安全优化学会构建安全的远程访问通道学会编写包过滤规则、防火墙脚本学会构建缓存代理服务器学会端口扫描、漏洞评估等安全应用学会集中监测多台服务器课程目标课程结构编写Shell脚本基本安全优化Linux防火墙安全扫描及监测变量、脚本结构条件测试、if语句for循环、while循环、case分支账号安全、su和sudo的使用系统引导及登录的安全控制OpenSSH远程登录TCPWrappers控制Linux包过滤防火墙的结构、规则编写防火墙规则的备份与恢复,脚本使用共享上网、服务器的发布Squid代理服务器NMAP端口扫描OpenVAS漏洞评估Cacti集中监测平台第1-3章第4-5章第6-8章第9-11章第一章Shell脚本应用(一)——理论部分掌握Shell脚本的基础知识学会使用Shell变量学会编写简单的Shell脚本技能展示本章结构Shell脚本应用(一)自定义变量特殊的Shell变量编制第一个Shell脚本重定向与管道操作脚本的应用思路计划任务与自动化管理Shell脚本基础使用Shell变量Shell脚本与计划任务Shell的作用——命令解释器,“翻译官”介于系统内核与用户之间,负责解释命令行Shell的作用2-1Shell计算机用户应用程序Linux内核输入输入控制控制系统硬件输出输出用户的登录Shell登录后默认使用的Shell程序,一般为/bin/bash不同Shell的内部指令、运行环境等会有所区别Shell的作用2-2[root@localhost~]#cat/etc/shells/bin/sh/bin/bash/sbin/nologin/bin/tcsh/bin/csh/bin/ksh编写脚本代码使用vi文本编辑器每行一条Linux命令,按执行顺序依次编写编写第一个Shell脚本4-1[root@localhost~]#vifirst.shcd/boot/pwdls-lhvml*赋予可执行权限使脚本具有可执行属性编写第一个Shell脚本4-2[root@localhost~]#chmod+xfirst.sh[root@localhost~]#ls-lfirst.sh-rwxr-xr-x1rootroot14404-2615:02first.sh执行脚本文件方法一:脚本文件路径方法二:sh脚本文件路径方法三:source脚本文件路径编写第一个Shell脚本4-3[root@localhost~]#./first.sh/boot-rw-r--r--1rootroot1.8M2010-03-17vmlinuz-2.6.18-194.el5必须有x权限[root@localhost~]#sh/first.sh/boot-rw-r--r--1rootroot1.8M2010-03-17vmlinuz-2.6.18-194.el5[root@localhost~]#source/first.sh/boot-rw-r--r--1rootroot1.8M2010-03-17vmlinuz-2.6.18-194.el5不要求x权限更完善的脚本构成脚本声明注释信息可执行语句编写第一个Shell脚本4-4[root@localhost~]#vi/first.sh#!/bin/bash#ThisismyfirstShell-Script.cd/bootecho"当前的目录位于:"pwdecho"其中以vml开头的文件包括:"ls-lhvml*输出友好提示信息交互式硬件设备标准输入:从该设备接收用户输入的数据标准输出:通过该设备向用户输出数据标准错误:通过该设备报告执行出错信息重定向与管道操作3-1类型设备文件文件描述编号默认设备标准输入/dev/stdin0键盘标准输出/dev/stdout1显示器标准错误输出/dev/stderr2显示器重定向操作重定向与管道操作3-2类型操作符用途重定向输入<从指定的文件读取数据,而不是从键盘输入重定向输出>将输出结果保存到指定的文件(覆盖原有内容)>>将输出结果追加到指定的文件标准错误输出2>将错误信息保存到指定的文件(覆盖原有内容)2>>将错误信息追加到指定的文件中混合输出&>将标准输出、标准错误的内容保存到同一个文件中管道操作符号“|”将左侧的命令输出结果,作为右侧命令的处理对象格式:cmd1|cmd2[...|cmdn]重定向与管道操作3-3[root@localhost~]#grep"bash$"/etc/passwdroot:x:0:0:root:/root:/bin/bashteacher:x:500:500:BENETLinuxTeacher:/home/teacher:/bin/bash[root@localhost~]#grep“bash$”/etc/passwd|awk-F:‘{print$1,$7}’root/bin/bashteacher/bin/bash以冒号:分隔,输出第1、7个字段请思考:如何编写并执行一个Shell脚本文件?有哪几种重定向操作,各自的操作符号是什么?管道操作符号“|”的用途是什么?小结变量的作用为灵活管理Linux系统提供特定参数,有两层意思:变量名:使用固定的名称,由系统预设或用户定义变量值:能够根据用户设置、系统环境的变化而变化变量的类型自定义变量:由用户自己定义、修改和使用环境变量:由系统维护,用于设置工作环境位置变量:通过命令行给脚本程序传递参数预定义变量:Bash中内置的一类变量,不能直接修改Shell变量的作用、类型定义一个新的变量格式:变量名=变量值变量名以字母或下划线开头,区分大小写,建议全大写查看变量的值格式:echo$变量名自定义变量4-1[root@localhost~]#Product=Benet[root@localhost~]#Version=4.0[root@localhost~]#echo$ProductBenet[root@localhost~]#echo$Product$VersionBenet4.0赋值时使用引号双引号:允许通过$符号引用其他变量值单引号:禁止引用其他变量值,$视为普通字符反撇号:命令替换,提取命令执行后的输出结果从键盘输入内容为变量赋值格式:read[-p
"提示信息"]变量名自定义变量4-2设置变量的作用范围格式1:export
变量名...格式2:export变量名=变量值...——两种格式可以混合使用自定义变量4-3[root@localhost~]#echo"$Product$Version"Benet4.0[root@localhost~]#exportProductVersion[root@localhost~]#bash[root@localhost~]#echo"$Product$Version"Benet4.0[root@localhost~]#exit导出为全局变量子程序引用全局变量整数变量的运算格式:expr变量1运算符变量2[运算符变量3]...常用运算符加法运算:+减法运算:-乘法运算:\*除法运算:/求模(取余)运算:%自定义变量4-4环境变量由系统提前创建,用来设置用户的工作环境配置文件:/etc/profile、~/.bash_profile常见的环境变量:PWD、PATHUSER、LOGNAME、UID、SHELL、HOMEPS1、$PS2特殊的Shell变量3-1[root@localhost~]#echo$PATH/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin[root@localhost~]#PATH="$PATH:/root"
[root@localhost~]#echo$PATH/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin:/root位置变量表示为$n,n为1~9之间的数字[root@localhost~]#./myprog.shonetwothreefourfivesix特殊的Shell变量3-2$1,第1个位置参数$2,第2个位置参数$6,第6个位置参数预定义变量$#:命令行中位置变量的个数$*:所有位置变量的内容$?:上一条命令执行后返回的状态,当返回状态值为0时表示执行正常,非0值表示执行异常或出错$0:当前执行的进程/程序名特殊的Shell变量3-3[root@localhost~]#catmybak.sh#!/bin/bashTARFILE=beifen-`date+%s`.tgztarzcf$TARFILE$*&>/dev/nullecho"已执行
$0脚本,"echo"共完成
$#
个对象的备份"echo“具体内容包括:
$*”[root@localhost~]#./mybak.sh/etc/passwd/etc/shadow
已执行
./mybak.sh脚本,共完成
2
个对象的备份具体包括:/etc/passwd/etc/shadow脚本应用思路1.确定命令操作(设计并执行任务)2.编写Shell脚本(组织任务过程)3.设置计划任务(控制时间,调用任务脚本)Shell脚本与计划任务[root@localhost~]#mysqldump-uoperator…………[root@localhost~]#vi/opt/qnzx_dbbak/qnzx_dbbak.sh#!/bin/bash……[root@localhost~]#crontab-e302***/opt/qnzx_dbbak/qnzx_dbbak.sh本章总结Shell脚本应用(一)自定义变量特殊的Shell变量编制第一个Shell脚本重定向与管道操作脚本的应用思路计划任务与自动化管理Shell脚本基础使用Shell变量Shell脚本与计划任务第一章Shell脚本应用(一)——上机部分需求描述编写登录欢迎脚本e.sh编写服务控制脚本start、stop、status实现思路新建脚本程序e.sh,依次报告各种系统信息修改配置文件~/.bash_profile,调
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 安全责任人2024年度聘用协议样本
- 2024汽车展览馆场地出租协议
- 高等教育教材开发与优化实施方案
- 危险废弃物处理行业前景与市场发展预测
- 德育教师的专业发展路径
- 地理信息测绘协议模板2024
- 2024年个人汽车租赁服务详细协议
- 2024沿海码头经营性租赁协议
- 工程赔偿合同范本
- 审计审核合同范本
- 临床营养科各岗位职责及各项规章制度
- 《创想候车亭》课件2024-2025学年岭美版(2024)初中美术七年级上册
- 山西省晋中市多校2024-2025学年九年级上学期期中语文试题
- 居间权益保障协议
- 安全环保职业健康法律法规清单2024年
- 劳动法专业知识讲座
- 安徽省合肥市第四十五中学2023-2024学年八年级上学期期中数学试题(沪科版)
- 风电场护栏网施工方案
- 6《芣苢》《插秧歌》联读公开课一等奖创新教学设计(任务式)统编版高中语文必修上册
- 人教版(2024新版)七年级全一册信息技术第1-30课全册教学设计
- 部编(统编)人教版七年级语文上册教学计划(含教学进度表)
评论
0/150
提交评论