在云服务器跑包,会有很多问题
因为我们一般用ssh连接,而为了在我们断开连接的时候后台也在执行,就需要用到nohup命令,
nohup 英文全称 no hang up(不挂起),用于在系统后台不挂断地运行命令,退出终端不会影响程序的运行。
nohup 命令,在默认情况下(非重定向时),会输出一个名叫 nohup.out 的文件到当前目录下,如果当前目录的 nohup.out 文件不可写,输出重定向到 $HOME/nohup.out 文件中。
语法格式 nohup 需要执行的内容 &
也就是说在运行跑包程序前加上nohup 它会把原本显示的内容放进一个文件里,默认是nohup.out
如果执行的命令后面加上 > pass.out 那它就会把内容放进pass.out里
然后再结尾加上& 会让程序在后台执行
所以我的跑包命令就变成了
nohup aircrack-ng -w number.txt undefine-01.cap > passkey.out &
这个即使我关掉终端也会在后台跑包,而程序的输出结果就放在passkey.out里
接下来就是让它在跑出结果后发邮件通知我了
那它怎么知道什么时候跑出结果呢,那就需要写个脚本了,在这个同目录下创建search.sh
编写脚本文件 search.sh#!/bin/bash
while [ true ]
do
grep KEY passkey.out
if [ $? -ne 0 ]
then
/bin/sleep 60
else
pass=$(grep KEY passkey.out)
python mail.py "$pass"
break
fi
done
这个脚本会每隔60秒判断passkey.out文件中是否有 KEY 这个字符串。如果有就把它那一行通过邮件发给我。mail.py就是发邮件的程序脚本。
注意search.sh也要后台执行
赋予执行权限:chmod +777 search.sh
执行:nohup ./search.sh &
为什么要找KEY?
我之前说了跑包的结果会放在passkey.out里 ,而通过下面两张图可以知道不管能不能跑出密码,都会有KEY这三个字符
所以只要结果中有了三个字符就代表跑完了。
python 通过STMP 发邮件可以去看我专门写的文章点这里,也可以直接用下面的代码,只需要更改配置信息里面的内容为自己的,比如邮箱,你需要有两个邮箱,一个用来发邮件比如163邮箱(需要开通STMP,开通后会有口令),一个用来接收邮件比如qq邮箱
mail.py#coding=utf-8
import smtplib
import sys
from email.mime.text import MIMEText
from email.header import Header
# --------------------------------------------配置信息开始
mail_host = "smtp.163.com" # 设置服务器(如果是qq邮箱,将163换成qq)
mail_user = 'xiaobendanya77@163.com' # 用户名
mail_pass = '################' # 口令
username = 'xiaobendanya77@163.com' # 发件人名称
getusername = '2372198934@qq.com' # 收件人名称
getmail =['2372198934@qq.com'] # 收件人邮箱
context = sys.argv[1] # 内容
title = '这里填标题' # 标题
# ---------------------------------------------配置信息结束
def email():
sender = True
try:
massage= MIMEText(context, 'plain', 'utf-8') # 加入正文内容
massage['From'] = Header(username, 'utf-8') # 加入发件人名称
massage['To'] = Header(getusername, 'utf-8') # 加入收件人名称
massage['Subject'] = Header(title, 'utf-8') # 加入标题
server = smtplib.SMTP_SSL() # 获取服务 25端口不需要加 _SSL
server.connect(mail_host, 465) # 链接服务 25和465都为SMTP端口号
server.login(mail_user, mail_pass) # 登录服务
server.sendmail(mail_user, getmail, massage.as_string()) # 开始发送
server.close() #关闭服务
except smtplib.SMTPException :
sender = False
return sender
sender = email()
if sender:
print("邮件发送成功 ...")
else:
print("邮件发送失败 ...")
总结
在执行跑包的的目录下创建 search.sh mail.py
后台执行跑包命令 nohup aircrack-ng -w number.txt undefine-01.cap > passkey.out &
后台执行脚本 nohup ./search.sh & ,该脚本会自动调用mail.py发邮件
需要安装有python
放一张效果图
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)