一、场景摘要:
1、windows计划任务中,有一个用户登录时候触发的事件 2、cmd命令:netstat -ano | find “3389” 可以看到当前远程登录的IP 3、bat脚本中:set loginUserId=%UserName% 可以获得当前的登录用户名 4、利用eKing.CmdReadFileAndSendEmailOper实现读取文件和邮件发送提示 5、利用bat实现被windows计划任务触发执行 原文链接:
http://www.lookdaima.com/WebForms/WebPages/Blanks/Pm/Docs/DocItemDetail.aspx?id=0821b76a-add3-4303-b41d-34a6faeceb89&EmDocDetailShowTypeV=2
二、相关下载和链接: 程序下载:
完整程序文件和日志
eKing.CmdSendEmail|实现发送邮件|主要用于数据库定时备份后的邮件提醒|V1.0版本
eKing.CmdDes3EncryptOper|自定义的des3加密操作
https://svn.lookdaima.com:8443/!/#Cmds/view/head/CSharp/Common/eKing.CmdReadFileAndSendEmailOper(user/123)
https://svn.lookdaima.com:8443/!/#Cmds/view/head/CSharp/Common/eKing.CmdReadFileAndSendEmailOper
https://github.com/fuzhx/cmds/tree/master/CSharp/Common/eKing.CmdReadFileAndSendEmailOper
https://github.com/fuzhx/cmds/tree/master/CSharp/Common/eKing.CmdReadFileAndSendEmailOper
应用下载
源码下载
在线源码:eKing.CmdReadFileAndSendEmailOper
三、程序目录截图:
1、bat.log:计划任务执行后的输出日志 2、eKing.CmdDes3EncryptOper.exe:辅助小工具,实现邮箱密码的des3加密 3、eKing.CmdReadFileAndSendEmailOper.exe:读取loginip.log的内容并发送邮件 4、login.bat:计划任务的批处理脚本 5、loginip.log:login.bat执行时候输出的内容,有登录IP和当前服务器的IP(避免服务器过多,混淆的情况)
bat.log的内容:
bat.log
C:\Windows\system32>echo user.login
user.login
C:\Windows\system32>set loginUserId=Administrator
C:\Windows\system32>echo Administrator
Administrator
C:\Windows\system32>netstat -ano | find “3389” 1>C:\Cmds\CS\common\login\loginip.log
C:\Windows\system32>ipconfig -all 1>>C:\Cmds\CS\common\login\loginip.log
C:\Windows\system32>C:\Cmds\CS\common\login\eKing.CmdReadFileAndSendEmailOper.exe EmailName=qq89616537 EmailSmtpServer=smtp.163.com EmailSend=qq89616537@163.com EmailPwd=***** EnableSsl=false EmailRecv=89616537@qq.com;qq89616537@163.com; EmailTitle=”{DateTime.Now}-用户Administrator 远程登录119.29.88.48(看代码网)服务器” EmailText=远程访问服务器提示 EmailEncoding=gb2312 HtmlFlag=false PwdTextType=des3 EmailTextType=file DirFullName=~/ FileNameExpress=login*.log ReadFileEncoding=gb2312 EmailTextFileMaxLength=0 FileNameToLower=true
操作成功
login.bat的内容:
login.bat
:用户登录服务器邮件通知
echo user.login
:获得登录的用户
set loginUserId=%UserName%
echo %loginUserId%
: 输出远程的IP
netstat -ano | find “3389” > C:\Cmds\CS\common\login\loginip.log
:输出Ip
ipconfig -all >> C:\Cmds\CS\common\login\loginip.log
C:\Cmds\CS\common\login\eKing.CmdReadFileAndSendEmailOper.exe EmailName=qq89616537 EmailSmtpServer=smtp.163.com EmailSend=qq89616537@163.com EmailPwd=**** EnableSsl=false EmailRecv=89616537@qq.com;qq89616537@163.com; EmailTitle=”{DateTime.Now}-用户%loginUserId%远程登录119.29.88.48(看代码网)服务器” EmailText=远程访问服务器提示 EmailEncoding=gb2312 HtmlFlag=false PwdTextType=des3 EmailTextType=file DirFullName=~/ FileNameExpress=login*.log ReadFileEncoding=gb2312 EmailTextFileMaxLength=0 FileNameToLower=true
loginip.log的内容
loginip.log
TCP 0.0.0.0:3389 0.0.0.0:0 LISTENING 3756
TCP 10.135.87.157:3389 61.186.27.212:42758 ESTABLISHED 3756
TCP [::]:3389 [::]:0 LISTENING 3756
UDP 0.0.0.0:3389 *:* 3756
UDP [::]:3389 *:* 3756
Windows IP 配置
主机名 . . . . . . . . . . . . . : 10_135_87_157
主 DNS 后缀 . . . . . . . . . . . :
节点类型 . . . . . . . . . . . . : 混合
IP 路由已启用 . . . . . . . . . . : 否
WINS 代理已启用 . . . . . . . . . : 否
以太网适配器 以太网:
连接特定的 DNS 后缀 . . . . . . . :
描述. . . . . . . . . . . . . . . : Tencent VirtIO Ethernet Adapter
物理地址. . . . . . . . . . . . . : 52-54-00-2B-60-FE
DHCP 已启用 . . . . . . . . . . . : 否
自动配置已启用. . . . . . . . . . : 是
本地链接 IPv6 地址. . . . . . . . : fe80::3150:c7ba:927e:8325%13(首选)
IPv4 地址 . . . . . . . . . . . . : 10.135.87.157(首选)
子网掩码 . . . . . . . . . . . . : 255.255.192.0
默认网关. . . . . . . . . . . . . : 10.135.64.1
DHCPv6 IAID . . . . . . . . . . . : 340939776
DHCPv6 客户端 DUID . . . . . . . : 00-01-00-01-21-8A-D1-DF-52-54-00-2B-60-FE
DNS 服务器 . . . . . . . . . . . : 10.225.30.181
10.225.30.223
TCPIP 上的 NetBIOS . . . . . . . : 已启用
隧道适配器 isatap.{CBE3395E-CAD3-4F82-8C9C-5FF8A258E753}:
媒体状态 . . . . . . . . . . . . : 媒体已断开
连接特定的 DNS 后缀 . . . . . . . :
描述. . . . . . . . . . . . . . . : Microsoft ISATAP Adapter
物理地址. . . . . . . . . . . . . : 00-00-00-00-00-00-00-E0
DHCP 已启用 . . . . . . . . . . . : 否
自动配置已启用. . . . . . . . . . : 是
四、计划任务的配置: 发生的 1、打开控制面板 2、点击计划任务 3、点击创建任务 4、设置常规 5、新建触发器 6、设置触发器 7、新建操作 8、设置操作 9、输入操作系统密码确认
其中: 设置操作的输入项参考: C:\Cmds\CS\common\login\login.bat > C:\Cmds\CS\common\login\bat.log 另附上: Des3实现密码的加密操作 Des3密钥:ekinglbs2018tool
五、发送邮件效果:
六、参数设置: EmailName:发送人的邮箱帐号|如:qq89616537 EmailSmtpServer:SMTP服务|如:smtp.163.com EmailSend:发送人的邮箱帐号|如:qq89616537@163.com EmailPwd:邮箱密码 |如:明文或des3加密 EnableSsl:使用Ssl模式|布尔类型|如:fasle EmailRecv:接收人邮箱帐号|如:89616537@qq.com;qq89616537@163.com; EmailTitle:邮件标题 |如:{DateTime.Now}-用户%loginUserId%远程登录119.29.88.48(看代码网)服务器 EmailText:邮件内容|如:远程访问服务器提示 EmailEncoding:邮件编码|如:gb2312/或utf8 HtmlFlag:内容为Html模式|布尔类型|如:false PwdTextType:密码内容类型|text:明文;des3:des3加密|如des3 EmailTextType:邮件内容类型 |text:纯文字;file:文件|如:text DirFullName:完整的Dir名称|D:\one(无后缀)|或:~/执行程序所在的目录 FileNameExpress:文件名表达式|如:*_bak.log ReadFileEncoding:读取文件编码|如:gb2312 EmailTextFileMaxLength:读取的文件允许最大值|长整型|同文件的FileLength做比较|字节做单位|0代表不限 FileNameToLower:文件是否小写比较|布尔类型|如:true











