Linux 云服务器aircrack-ng后台跑包并用邮件发送结果

在线wifi跑包 金刚包跑包 cap跑包 hccapx ewsa在线 就来 握手包跑包

各位好 又见面了 我是曹操 今天给大家带来一篇新的教程

希望各位细心学习 低调用网

nohup aircrack-ng -w number.txt undefine-01.cap > passkey.out &

在使用云服务器运行包时,可能会遇到许多问题。通常我们使用SSH连接,为了在断开连接后仍然在后台执行程序,我们需要使用nohup命令。Nohup是no hang up(不挂起)的缩写,用于在系统后台持续运行命令,即使退出终端也不会影响程序的运行。默认情况下,nohup命令会将输出重定向到名为nohup.out的文件中,如果当前目录下的nohup.out文件不可写,则会将输出重定向到$HOME/nohup.out文件中。

语法格式为:nohup 需要执行的命令 &。也就是说,在运行包程序之前加上nohup命令,它会将原本显示的内容放入一个文件中,默认情况下是nohup.out。如果在执行的命令后面加上 > pass.out,它将把内容放入pass.out文件中。然后在命令结尾加上&,使程序在后台执行。因此,我的运行包命令变成了:

#!/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

即使我关闭终端,该命令也会在后台运行,而程序的输出结果将放在passkey.out文件中。接下来,我需要在运行结果后发送电子邮件通知我。为此,我需要编写一个脚本,在相同的目录下创建search.sh文件。脚本文件search.sh的内容如下:

#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("邮件发送失败 ...")

该脚本将每隔60秒检查passkey.out文件中是否存在”KEY”字符串。如果存在,它将通过电子邮件将该行发送给我。mail.py是用于发送电子邮件的程序脚本。请注意,search.sh也需要在后台执行。赋予脚本执行权限:chmod +777 search.sh,然后执行:nohup ./search.sh &。

为什么要查找”KEY”?我之前提到过,运行包的结果将放在passkey.out文件中,通过下面的两张图可以看到,无论是否能够找到密码,都会有”KEY”这三个字符。因此,只要结果中包含这三个字符,就代表运行完成。

Python通过SMTP协议发送电子邮件,您可以查看我专门撰写的文章,点击这里,或直接使用下面的代码。只需将配置信息中的内容更改为您自己的,例如邮箱地址。您需要拥有两个邮箱,一个用于发送邮件(例如163邮箱,需要开启SMTP并获得授权码),另一个用于接收邮件(例如qq邮箱)。mail.py的内容如下:

总结:在运行包的目录下创建search.sh和mail.py两个文件,后台执行运行包命令nohup aircrack-ng -w number.txt undefine-01.cap > passkey.out &,后台执行脚本nohup ./search.sh &,该脚本将自动调用mail.py发送电子邮件。需要安装Python。以下是效果图的示例:

赞(0)