一、场景摘要:

1、windows计划任务中,有一个用户登录时候触发的事件
2、cmd命令:netstat -ano   | find "3389" 可以看到当前远程登录的IP
3、bat脚本中:set loginUserId=%UserName%   可以获得当前的登录用户名
4、利用eKing.CmdReadFileAndSendEmailOper实现读取文件和邮件发送提示
5、利用bat实现被windows计划任务触发执行
 
原文链接:
 
二、相关下载和链接:
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
 
 
三、程序目录截图:
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

利用windows的计划任务和eKing.CmdReadFileAndSendEmailOper(控制台小程序)实现远程登录服务器的邮件告警提醒的更多相关文章

  1. 在windows下如何使用密钥对远程登录服务器?

    在企业的生产中相信各位朋友都会使用远程登录服务器,这样即高效也非常方便,(服务器在西藏,没有远程技术,公司在北京,你只能到西藏与机器相伴,在这里我使用xshell软件),我们使用ssh 服务登录服务器 ...

  2. Linux实现利用SSH远程登录服务器详解

    Linux实现利用SSH远程登录服务器详解 http://www.111cn.net/sys/linux/55152.htm

  3. 利用windows任务计划备份sqlserver

    sqlserver Express版不含agent service(虽然可以从“服务”里看到,但是无法启动),因此无法使用代理服务执行备份作业,如果代理作业服务正常,建议还是首先采用代理服务. 此备份 ...

  4. 跟我一起,利用bitcms内容管理系统从0到1学习小程序开发:一、IIS下SSL环境搭建

    缘起 1.从事互联网十来年了,一直想把自己的从事开发过程遇到的问题给写出来,分享给大家.可是可是这只是个种想法,想想之后就放下了,写出来的类文章是少之又少.古人说无志之人常立志,有志之人立长志.今天, ...

  5. 利用shell脚本远程登录服务器并修改saltstack配置并重启服务

    最近公司为了上一个活动功能,增加了40台服务器,虽然服务器可以通过saltstack 来统一管理(自动化运维工具 SaltStack 搭建),项目可以通过jenkins + saltstack统一发布 ...

  6. POWERSHELL 计划任务的创建,收集DC中失败的登录信息并邮件通知

    (注:本文参考以下前辈文章修改而来,源文章连接:http://itadmindev.blogspot.hk/2011/07/powershell-ad-dc-failed-logins-report. ...

  7. Windows任务计划创建计划,定时执行PowerShell命令

    [环境介绍] 操作系统:Windows Server 2012 R2,64位操作系统 PowerShell版本:PowerShell 1.0 脚本位置:C:\BackUp.ps1 启动目录:C:\Wi ...

  8. Windows server 2008普通用户不能远程登录问题

    1.查登录权限 如果文件服务器没有为用户授权,那么用户自然就不能远程登录服务器系统了,为此笔者决定先仔细检查一下文件服务器系统是否为自己使用的登录账号,授予了远程登录权限.在进行这种检查时,笔者先是在 ...

  9. Windows远程桌面,连接被拒绝,因为没有授权此用户帐户进行远程登录。

    Windows 服务器远程连接的时候,出现错误:“连接被拒绝,因为没有授权此用户帐户进行远程登录.”,导致无法远程登录服务器,如下图所示: 问题分析 该错误一般是由于 Windows 远程桌面相关权限 ...

随机推荐

  1. 面试题----实现memcpy

    #include <stdio.h> void *memcpy(void *memTo,const void *memFrom,size_t size) { if(memTo == NUL ...

  2. Linux 普通用户启动nginx

    众所周知,apache的80端口为系统保留端口,如果通过其他非root用户启动,会报错如下: ()Permission denied: make_sock: could not bind to add ...

  3. vue---数据更新,视图不更新问题

    写点赞功能时,点赞后已经追加到对象里了,但是视图没有更新. 查找了些资料: 数据已经更新了但是视图不更新的问题,有几个原因: 1.根属性不存在,而想要直接给根属性赋值导致的视图不更新.此时初始化属性的 ...

  4. Dev-FAT-UAT-PRO

    DEV Development environment FAT Feature Acceptance Test environment UAT User Acceptance Test environ ...

  5. AssemblyInfo.cs 详解

    前言 ? .net工程(包括Web和WinForm)的Properties文件夹下自动生成一个名为AssemblyInfo.cs的文件,一般情况下我们很少直接改动该文件.但我们实际上通过另一个形式操作 ...

  6. 【Java并发编程】1、ConcurrentHashMap原理分析

    集合是编程中最常用的数据结构.而谈到并发,几乎总是离不开集合这类高级数据结构的支持.比如两个线程需要同时访问一个中间临界区(Queue),比如常会用缓存作为外部文件的副本(HashMap).这篇文章主 ...

  7. 【Java并发编程】3、DelayQueue应用场景,多考生考试

    该场景来自于:http://www.cnblogs.com/sunzhenchao/p/3515085.html. 模拟一个考试的日子,考试时间为120分钟,30分钟后才可交卷,当时间到了,或学生都交 ...

  8. 聊聊Java内存模型

    一.Java内存模型 硬件处理 电脑硬件,我们知道有用于计算的cpu.辅助运算的内存.以及硬盘还有进行数据传输的数据总线.在程序执行中很多都是内存计算,cpu为了更快的进行计算会有高速缓存,最后同步至 ...

  9. apicloud 第一篇

    最近公司需要开发一款app,说实话,之前也只是对Android有过一部分的了解,ios基本上都毛都不知道,所以作为小公司的我们经过商议决定使用apicloud,虽然用户体验不如原生的好,但谁叫我们穷, ...

  10. CSS应用的小问题总结

    1.两个元素换行书写时,在实际的布局中展示为两个元素之间多了一个区间(这个区间通常是因为代码在换行时,解析会自动默认为一个空格字符),所以在实际应用时,如果想要将两个元素完全无缝隙的放置在一起并排显示 ...