PowerShell小技巧之使用Hotmail账号发送邮件

在低版本的PowerShell上发送邮件可以借助.NET的system.net.mail.smtpclient类。在高版本的PowerShell中可以借助现成的命令:Send-MailMessage

我在尝试使用Hotmail时,遇到了一个错误:

Send-MailMessage : The SMTP server requires a secure connection or the client was not authenticated. The server response was: 5.7.0 Must issue a
STARTTLS command first

后来发现是没有指定端口号,应当使用:587端口号。

Send-MailMessage -Body 'test' -SmtpServer smtp.live.com -From appana@outlook.com -To 'admin@pstips.net' -Subject 'test' -UseSsl -Credential i@outlook.com -Port 587

常规错误排查:

邮箱是否开启SMTP服务
账号和密码是否输入正确
端口号是否正确

(0)

相关推荐

  • linux shell发送Email邮件的方法详解

    一封最简单的邮件 echo -e "To: handy1989@qq.com\nCC: handy1989@qq.com\nFrom: handy<handy@test.com>\nSubject: test\n\nhello world" | sendmail -t 看上去有点复杂,其实就是sendmail程序从标准输入读取邮件源码,-t参数表示从邮件源码提取收件人信息,然后发送到收件人的邮件服务器,我们稍做整理,将邮件源码保存在email.txt中如下 To: hand

  • 当备份数据库不能用时.用邮件列表得到WEBSHELL!(图)

    今天上午闲着无聊,刚好一个朋友发过来一个网站的后台管理密码.他要我帮他看看.我说你得到后台了.可以用备份数据库功能得到WEBSHELL啊.你还发过来干嘛.他说后台有数据备份的选项.但是不能用.大家看一下图! 里面有备份的选项.但是点了之后出现错误!应该是管理员把文件改名了.或者是位置改变了.不能备份数据库,那怎么办,不能白白的浪费这样的一个机会.我就在后台里面到处看了一下.发现可以通过改网站注册用户的邮件地址.我们用一句话木马替换,然后把邮件地址导出为ASP的文件.我们就可以利用一句话木马客户端

  • 3个备份系统文件并邮件发送的Shell脚本分享

    1.安装MUTT邮件客户端 # yum install mutt -y 2.创建脚本 # vi /etc/rc.d/mail_to_bak_daily.sh 版本一: #!/bin/bash # ========================================================= # 请输入,你想让备份数据放置到哪个独立的目录区 basedir=/backup/daily # =============================================

  • Shell脚本监控服务器在线状态和邮件报警的方法

    对于服务器来说在线率很重要,出现问题要能及时解决,但系统管理员不能一直守在电脑旁边,通过脚本监控网站出现问题及时通过mail通知管理员,如果是139邮箱还可免费手机短信通知.注:通过系统直接发送mail容易被拦截,可使用mail连接第三方smtp发送邮件. shell脚本实现代码: 复制代码 代码如下: #!/bin/bash#set -xwhile truedo list=(www.jb51.net s.jb51.net) mail=jmj@jb51.net date=$(date -d "t

  • Powershell中调用邮件客户端发送邮件的例子

    你可以使用Send-MailMessage发送邮件,但是你想从你默认MAPI客户端准备发送一份邮件,这也不是很麻烦: 复制代码 代码如下: $subject = 'Sending via MAPI client'$body = 'My Message'$to = 'tobias@powertheshell.com' $mail = "mailto:$to&subject=$subject&body=$body" Start-Process -FilePath $mail

  • Shell脚本实现删除邮件队列

    最近遇到了一个麻烦事:机器上邮件队列里老是被塞满,但是又不知道是什么地方发邮件写入的,十分蛋疼,没办法,只有临时处理一下了,写了个删除邮件的脚本rm_mqueue.sh. 复制代码 代码如下: #/bin/bash ###################################### #  touched by lingyun1 on 2014-12-01  # ###################################### #定义堵塞邮件文件路径 quepath=/var

  • Shell脚本实现自动发送邮件的例子

    1.编辑用户Home目录下的.muttrc文件,设置发信环境. 复制代码 代码如下: # cat /root/.muttrc set envelope_from=yes set from=owinux@sina.cn set realname="Owinux" set use_from=yes set rfc2047_parameters=yes set charset="utf-8" 2.发信脚本 复制代码 代码如下: # cat automail.sh #!/b

  • Shell脚本实现硬盘空间和表空间的使用情况统计并邮件通知

    复制代码 代码如下: #/bin/bash #该脚本用于统计硬盘空间和表空间的使用情况,并邮件发出 #初始化环境变量 source /home/oracle/.bash_profile #获得本机ip ip=`/sbin/ifconfig eth0 | grep Bcast | cut -d : -f 2 | cut -d " " -f 1` #切换到本脚本目录 cd /home/oracle/shell/ #删除之前该脚本产生的日志文件 rm -rf $ip.txt #统计硬盘空间

  • PowerShell小技巧之使用Hotmail账号发送邮件

    在低版本的PowerShell上发送邮件可以借助.NET的system.net.mail.smtpclient类.在高版本的PowerShell中可以借助现成的命令:Send-MailMessage 我在尝试使用Hotmail时,遇到了一个错误: Send-MailMessage : The SMTP server requires a secure connection or the client was not authenticated. The server response was:

  • Powershell小技巧之查询AD用户

    假若你登录到了一个AD中你可以轻松的查询AD目录.在先前的技巧中我们阐述了一个基本脚本.这里有一个可以自定义根目录的扩展方法(设置你的查询点),它支持同步查询(而不是递归到一个容器). 它同时也阐述了怎么从一个活动目录查找结果再将其转化成用户对象: $SAMAccountName = 'tobias' $SearchRoot = 'LDAP://OU=customer,DC=company,DC=com' $SearchScope = 'OneLevel' $ldap = "(&(obj

  • Powershell小技巧之获取MAC地址

    在Powershell中获取MAC地址不是很难.这里就有一种方法: 复制代码 代码如下: PS> getmac /FO CSV | ConvertFrom-Csv Physical Address                        Transport Name                         ----------------                        --------------                         5C-51-4F-6

  • Powershell小技巧之使用Jint引擎在PowerShell中执行Javascript函数

    这里演示如何利用PowerShell将一段Javascript函数字符串交给Jint引擎去执行. 执行Javascript函数 .Net版的Javascript解释器 可以从Git上获取Jint的代码,也可以从nuget上下载Jint的程序集. Jint是一个面向.Net的Javascript解释器.Jint不会把Javascript编译成.Net字节码,所以它非常适用于脚本小且运行起来速度快的工程,或者运行在不同平台上的脚本. PowerShell调用 拿到Dll根据-Path参数直接使用Ad

  • Powershell小技巧之使用WS-Man来调用PowerShell命令

    虽然PowerShell远程管理被构建在 WS-Management的之上,但它是协议中的协议.如果尝试使用 PSRP (PowerShell远程处理协议)直接进行交互,本质上需要在客户端机器上运行一个PowerShell副本.另一种方法是使用一个鲜为人知的远程命令行工具,称为WinRS.WinRS是一个简单的工具,允许远程CMD.EXE,它也是构建在WS-Management之上的.所不同的是WinRS重用了 WS-Transfer中的Create和Delete,并引入了一些新的自定义的SOA

  • Powershell小技巧之获取当前的时间并转换为时辰

    午时三刻已到,行刑,刀下留人,现在到底是不是午时,能否让PowerShell告诉我呢? 好的, 没问题.从晚上23点到凌晨2点之间属于子时,每两个小时一个时辰,依次为"子丑寅卯辰巳午未申酉戌亥". 函数获取当前时辰 用PowerShell脚本实现: function Get-ChinaTimeAlias { param( [ValidateRange(0,23)] [int]$Hour = (get-date).Hour ) $timeAliasArray='子丑寅卯辰巳午未申酉戌亥'

  • PowerShell小技巧之定时抓取屏幕图像

    昨天的博文写了定时记录操作系统行为,其实说白了就是抓取了击键的记录和对应窗口的标题栏,而很多应用程序标题栏又包含当时记录的文件路径和文件名,用这种方式可以大致记录操作了哪些程序,打开了哪些文件,以及敲击了哪些按键.事实上这样记录操作系统的行为显得相对单薄一点,因为记录的内容不太形象,对于新手来说太过于隐晦了,对于人类来说,图像会比文字更加有利于用户理解.当操作系统不方便装屏幕记录软件,但又需要看已经登录用户在干什么的时候,用PowerShell的脚本来实现定时抓取图像的方式记录操作,查看图像就知

  • PowerShell小技巧之查找获取注册表路径

    在先前的技巧中我们说明如何将一个PS内置的路径格式转化成一个实际路径.这里介绍了一个例子.这段代码递归从HKEY_CURRENT_USER获取所有包含"powershell"词缀的键(简单的替换查询词缀将能获得你想要查询的任何东西) 复制代码 代码如下: Get-ChildItem -Path HKCU:\ -Include *PowerShell* -Recurse -ErrorAction SilentlyContinue|Select-Object -Property *Path

  • PowerShell小技巧实现IE Web自动化

    Windows 系统自带的Internet Explore +加上PowerShell 即可搞定. 今天就分享下这几天自己写的几个小函数,欢迎拍砖: # # 打开IE窗口 # function New-IEWindow { param( [string]$Url, [switch]$Visible, [switch]$FullScreen ) $Global:IEHost = new-object -com "InternetExplorer.Application" $Global:

  • PowerShell小技巧之观察UNC路径

    许多命令能支持UNC路径,但是UNC路径在脚本中看起来很奇怪.看看下面代码: PS> Test-Path -Path \\127.0.0.1\c$ True 它返回了真,证明UNC路径存在.接着改变当前的路径指向一个非文件系统路径接着测试: PS> cd hkcu:\ PS> Test-Path -Path \\127.0.0.1\c$ False 一样的路径但现在却获得了失败.这是因为UNC路径没有包含盘符,而PS需要根据盘符去分配当前合适位置.如果当前路径没有包含在磁盘路径下,Pow

随机推荐