服务器的安全稳定是每个运维都希望达到的目标,毕竟网站一旦流量大了,访问高了,就会有一些无聊人来攻击,帮忙检测漏洞是好,但纯ddos的性质就很恶劣了.说远了,这篇文章只是检测有非法ip登录到服务器上就自动给运维报警,当然也可以改成短信报警,前提是你有短信网关. #!/bin/bash #该脚本作用是检测是否有恶意IP登陆服务器并邮件报警 #可以结合139邮箱以达到短信及时通知到手机的功能 #适用系统centos5 Ldate=`which date` Lawk=`which awk` Llast=…
zabbix3.0.4获取数据库登陆用户趋势详解 主要思路: 通过zabbix客户端shell脚本mysql命令取出用户表中的数据将结果反馈给zabbix,画出趋势图 1.修改zabbix-agent客户端配置: 添加zabbix用户的sudo权限 visudo # 添加如下这行 zabbix ALL=(ALL) NOPASSWD: ALL /etc/zabbix/zabbix_agentd.conf UserParameter=user_num,/usr/local/zabbix-agent/…
今天查看线上服务器日志/var/log/secure发现有很多国外的ip尝试登陆服务器,以前一直没太注意这方面,作为系统管理员真是失职啊,虽然服务器已经设置了强密码,但是看到有人想搞你还是很不爽的.一开始的思路是通过防火墙,后来google到有比防火墙更简单粗暴的方法,就是通过/etc/hosts.deny配置文件就可以禁掉一些IP了(其实这是centos系统另外一种形式的防火墙,学名叫TCP_Wrappers),代码如下: #!/bin/bash cat /var/log/secure|awk…
本篇文章由:http://xinpure.com/shell-script-to-modify-the-mac-ip-address/ 麻烦事 最近在笔记本 WIFI 网络上遇到一个麻烦事, 在公司需要网络需要静态 IP 地址,关键还是 4 网段的 IP (192.168.4.1) 但是家里的的网络是在 1 网段的 IP (192.168.1.1) 所以就成了,每天到公司要手动修改静态 IP 地址,然后回到家里后又得重新设置为 DHCP 好烦~ 命令行修改 IP 地址 唯一能方便点的方法,就是通…
    #提取IP地址和子网掩码 [root@localhost ~]# ifconfig eth0|grep 'inet addr'|awk -F'[ :]+' '{print $4"/"$8}' 192.168.16.110/255.255.255.0 [root@localhost ~]# #查外网IP地址 [root@localhost ~]# curl -s ipecho.net/plain;echo 114.93.99.39 #查外网ip地址是什么宽带<br>[…
vi auto_ssh.exp #!/usr/bin/expect   set ipaddress "123.227.159.159" set passwd "你的密码" set timeout 30   spawn ssh root@$ipaddress   expect { "yes/no" {send "yes\r";exp_continue} "password" {send "$pass…
通过shell脚本配置免密登陆,分为两个脚本,一个是配置文件config.env,一个是正式脚本sshkey.sh. # config.envexport HOST_USER=(root) export PASSWD=(a) export SSH_HOST=(192.168.165.15 192.168.165.16 192.168.165.165) 以上congfig.env文件中,SSH_HOST参数可配置多个IP,可配置不同的用户 sshkey.sh脚本内容大致如下: 在本地用rsa加密方…
服务器总是一下子买了很多的段的ip.通过绑定后,也不知道这些ip是否绑定成功,所以就写了一个shell脚本,把ip输好,批量ping一下,看是不是都能ping通. 脚本如下: 此外.还有一个ip文件,里面放的都是ip 名为allip 我们来运行一下,看一下结果: 除了8.8.%  他显示 ping 其他 失败.的确这些ip是ping不通.好了.效果就这些,我们来看一下他的原理 先贴一下程序: #! /bin/bashfor i in `cat allip`doping=`ping -c 1 $i…
前言 此程序需要ganymed-ssh2-build210.jar包(下载地址:http://www.ganymed.ethz.ch/ssh2/) 为了调试方便,可以将\ganymed-ssh2-build210\src下的代码直接拷贝到工程里, 此源码的好处就是没有依赖很多其他的包,拷贝过来干干净净. 简介 目的:是执行远程机器上的Shell脚本;远程机器IP:***.**.**.***用户名:sshapp密码:sshapp登录后用pwd命令,显示当前目录为:/sshapp.在/sshapp/…
shell脚本批量ssh登陆主机并执行命令 今天在客户现场遇到了这个问题,客户没有管理工具,无法批量登陆主机下发命令,几个个C段啊,让我一个一个登陆,.................. 所以写了个shell脚本,批量使用用户名密码方式登陆Linux主机,执行命令,并判断是否执行成功. 功能: 读取IP地址文件,循环登陆主机执行命令,保存返回结果. 脚本已经上传到github https://github.com/b4zinga/UsefulScripts/blob/master/remote-…
这个功能主要用于在web端利用程序对远程服务器进行操作,通过PHP_ssh执行shell脚本来实现. 首先要安装php_ssh2组件,linux中centos7下有ssh2源,直接安装.window下则需要自行下载dll组件加载,具体方法自行搜索. 安装完毕后就可以在PHP写执行shell脚本的程序了 $ssh_user='root'; //登陆linux的ssh2用户名 $ssh_pwd='********'; //登陆linux的密码 $ssh_port='22'; //端口号22 $ssh…
一.简介 源码地址 日期:2018/4/23 介绍:用于hadoop的双向免密脚本,让填写机器互相之间免密登陆 效果图: 暂无 二.使用 适用:centos6+ 语言:中文 注意:执行前需要填写脚本里的ip数组,请勿修改脚本名 下载 wget https://raw.githubusercontent.com/goodboy23/shell/master/jobs/bidfree.sh 执行 bash bidfree.sh…
在 shell 脚本获取 ip.数字转换等网络操作 ip 和数字的相互转换 ip转换为数字 :: function ip2num() { local ip=$1 local a=$(echo $ip | awk -F '.' '{print $1}') local b=$(echo $ip | awk -F '.' '{print $2}') local c=$(echo $ip | awk -F '.' '{print $3}') local d=$(echo $ip | awk -F '.'…
//调用shell脚本,IP处理 package com.letv.sdns.web.utils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.stereotype.Service; import javax.net.ssl.HostnameVerifier; import javax.net.ssl.HttpsURLConnection; import javax.net…
比如有如下文件test.txt 1  134.102.173.43 2  134.102.173.43 3  134.102.171.42 4  134.102.170.9 要统计出现次数最多的IP可以利用以下shell脚本: cat test.txt | awk '{print $2}' | sort | uniq -c | sort -n -r | head -n 1…
场景:在linux A 上执行Linux B上的shell脚本和命令 步骤1.设置ssh免登陆 1.SSH无密码登录 # 本地服务器执行(A机器):生成密钥对 ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa cp  ~/.ssh/id_dsa.pub authorized_keys 如果有邮箱的话,使用 ssh-keygen -t rsa -C anl@163.comcat ~/.ssh/id_rsa.pub 然后使用winscp或者fileziall之类的文件…
先建一个存放ip列表的txt文件: [root@yysslopenvpn01 ~]# cat hostip.txt 192.168.130.1 192.168.130.2 192.168.130.3 192.168.130.4 192.168.130.5 192.168.130.6 192.168.130.7 192.168.130.8 192.168.130.9 192.168.130.10 192.168.130.11 192.168.130.12 192.168.130.13 192.16…
ifconfig -a|grep inet|grep -v 127.0.0.1|grep -v inet6|awk '{print $2}'|tr -d "addr:"​ 命令解释如下: grep 'inet'             截取包含ip的行 grep -v '127.0.0.1'     去掉本地指向的那行 grep -v inet6           去掉包含inet6的行 awk '{ print $2}'       $2 表示默认以空格分割的第二组 同理 $1表示…
Shell脚本实现检测某ip网络畅通情况,实战用例 环境准备,linux shell 发送email 邮件:1.安装sendmailyum -y install sendmail安装好sendmail以后执行以下命令启动sendmail/etc/init.d/sendmail startStarting sendmail: [ OK ]Starting sm-client: [ OK ]启动以后我们可以执行mail命令测试一下是否能发送邮件一.通过文件内容发送邮件mail -s 'Test ma…
0x00 将IP列表放到txt文件内 先建一个存放ip列表的txt文件: [root@yysslopenvpn01 ~]# cat hostip.txt 192.168.130.1 192.168.130.2 192.168.130.3 192.168.130.4 192.168.130.5 192.168.130.6 192.168.130.7 192.168.130.8 192.168.130.9 192.168.130.10 192.168.130.11 192.168.130.12 19…
前天没事写了一个防CC攻击的Shell脚本,没想到这么快就要用上了,原因是因为360网站卫士的缓存黑名单突然无法过滤后台,导致WordPress无法登录!虽然,可以通过修改本地hosts文件来解决这个问题,但是还是想暂时取消CDN加速和防护来测试下服务器的性能优化及安全防护. 前天写的Shell脚本是加入到crontab计划任务执行的,每5分钟执行一次,今天实际测试了下,可还是可以用的,但是感觉5分钟时间有点过长,无法做到严密防护.于是稍微改进了下代码,现在简单的分享下! 一.Shell代码  …
编写shell脚本不停地telnet一个域名,并输出结果到文件中 [root@localhost ~]# cat telnetscript.sh #!/bin/bash #检查是否在root用户下执行此脚本(0代表root用户的权限) " ];then echo "请在root用户下运行脚本" exit fi #定义输出目录 DIR="/var/log/" TIME="$(date +%Y-%m-%d,%X)" IP=ip地址或域名 P…
IDC小菜鸟一枚,非科班出身.常常有客户的centos服务器需要分配15个IP甚至30个IP.每次需要手动分配十分麻烦,于是花了一天时间学了shell脚本,写了这个脚本. #!/bin/bash read -p "The IP numbers: " num while [[ $num -gt 0 ]] do read -p "Please enter IP Address :" ipaddr touch /etc/sysconfig/network-scripts/…
改脚本查看哪些ip被占用. #!/bin/bash for i in {1..10}   //赋予i变量1-10 do   //干什么 ping -c1 -w1 192.168.7.$i &> /dev/null   //ping 192.168.7.网段 每个ip1次 显示1行全输出到无底洞 if [ $? -eq 0 ]; //返回值是否为0 then   //如果返回值为0则做下面的输出 echo station$i is up! else   //否则 echo station$i…
#########shell脚本命令#### 1.diff diff file file1 ####比较两个文件的不同 -c ####显示周围的行 -u ####按照一格式统一输出生成补丁 -r ####比较两个文件的不同 patch file file.path ####打补丁 -b ####备份原文件 mnt]# diff westos westos.new -c ###显示周围行 *** westos2016-11-22 04:04:37.782657053 -0500 --- westo…
原文网址:http://zhu8337797.blog.163.com/blog/static/170617549201122512712136/ 命 令 选 项 功 能 bash –x 脚本名 回显 在变量替换之后.执行命令之前,显示脚本的每一行 bash –v 脚本名 详细 在执行之前,按输入的原样打印脚本中各行 bash –n 脚本名 不执行 解释但不执行命令 set –x 打开回显 跟踪脚本的执行 set +x 关闭回显 关闭跟踪功能 --------------------------…
Shell脚本给管理和使用系统都带来了巨大的便利,然后在多用户系统中,也带来了许多安全性问题.在脚本中可能存在的安全性问题如下: (1)在脚本中使用cd命令,切换到不安全的目录执行脚本. (2)在脚本中修改了环境变量的值,从而导致系统产生了变化. (3)在某个目录中创建了非法的文件.例如使用重定向在目录/etc中创建了文件nologin,这将导致其他用户无法登陆. 在Shell脚本中,提供了一种受限模式.脚本在受限模式中运行时,可以极大地保护系统的安全性.当脚本中出现cd命令.重定向.修改环境变…
shell脚本语法基础汇总 将命令的输出读入一个变量中,可以将它放入双引号中,即可保留空格和换行符(\n) out=$(cat text.txt) 输出1 2 3 out="$(cat text.txt)" 输出: 1 2 3 --------------[]一般用于算术比较 -gt 大于 -lt 小于 -ge 大于等于 -le 小于等于 逻辑与-a [ $var1 -eq 0 -a $var2 -gt 2 ] 逻辑或 [ $var1 -eq 0 -o $var2 -gt 2 ] […
用途说明 curl命令是一个功能强大的网络工具,它能够通过http.ftp等方式下载文件,也能够上传文件.其实curl远不止前面所说的那些功能,大家可以通过man curl阅读手册页获取更多的信息.类似的工具还有wget. curl命令使用了libcurl库来实现,libcurl库常用在C程序中用来处理HTTP请求,curlpp是libcurl的一个C++封装,这几个东西可以用在抓取网页.网络监控等方面的开发,而curl命令可以帮助来解决开发过程中遇到的问题. 常用参数 curl命令参数很多,这…
awk工具概述awk编程语言/数据处理引擎基于模式匹配检查输入文本,逐行处理并输出通常在shell脚本中,或取指定的数据单独用时,可对文本数据做统计 命令格式格式一:awk [选项] '[条件]{编辑指令}' 文件格式二:前置命令 | awk [选项] '[选项]{编辑指令}' 常用命令选项:-F:指定分隔符,可省略(默认空格或tab位)-f:调用awk脚本进行处理-v:调用外部shell变量 实例:[root@ceshiji ~]# awk '{print $1}' /etc/passwd[r…