0213 | ให้ Windows Server ส่งเมลแจ้งเตือนเมื่อมี login
Thursday, July 30th, 2015 Posted in Windows Server | No Comments »ทำแล้วก็จดไว้ครับ
ก่อนอื่นสร้าง powershell script เซฟไว้ซักที่ (สมมติ c:\scripts\email.ps1)
$message=Get-WinEvent -logname "Microsoft-Windows-TerminalServices-LocalSessionManager/Operational" -maxevents 10 | Where-Object {$_.Id -eq 21 -OR $_.Id -eq 25 } |Format-List -Property * | out-string -Width 100 send-mailmessage -to EMAIL@EXAMPLE.COM -Subject "Login Event on" -SmtpServer mail.domain.com -From db1@warz.extreme.co.th -Body $message
เตรียม smtp server ให้เรียบร้อยด้วยนะครับ
แล้วไปที่ task scheduler กด create task หน้าแรกกรอกประมาณนี้
แล้วไปที่หน้า Trigger กด New แล้วกรอกประมาณนี้ (ช่อง Event Log นั่น กรอก Microsoft-Windows-TerminalServices-LocalSessionManager/Operational นะครับ)
แล้วไปที่หน้า Action กด New กรอกประมาณนี้
เสร็จแล้วกด OK ออกไป มันจะถามรหัสผ่าน windows ทีนึงก็ใส่ให้เรียบร้อย จบ :)
Tags: alert, monitor, powershell, Windows Server
0207 | Mount Network Drive อัตโนมัติตอนเปิดเครื่อง
Monday, May 11th, 2015 Posted in Web Server | No Comments »อันที่จริงมันจะไม่ใช่เรื่องยากเลยครับ ถ้า mount ปกติเราสามารถจิ้มคลิกเอาบน my computer ได้เลยก็จริง แต่ด้วยสิทธิ์การใช้งานบน windows มันแยกเป็นหลายระดับมาก ประมาณนี้
- Local user
- Administrator
- System Service
แล้วสิทธิ์การเข้าถึง network drive ของแต่ละระดับก็เป็นคนละตัวกัน เช่นตอน mount เราสั่งใน local user (จิ้มคลิกใน explorer ปกติ) เวลา elevated เป็น Administrator แล้วมันจะหา path ไม่เจอ (ฮ่วย)
แล้วก็ software server ปกติเราจะรันเป็น system service ถ้าต้อง access network drive มันจะหา path ไม่เจอ เพราะต้อง mount ด้วย system service ถึงจะเจอ (จะบ้าตาย) แล้วการ mount เป็น system service ไม่สามารถเซฟรหัสผ่านได้ (หรือเซฟได้แต่ทำผิดก็ไม่รู้) ก็เลยต้องมีทริคกันนิดหน่อยครับ ด้วย PowerShell
$User = “SERVER\username”
$PWord = ConvertTo-SecureString –String “**************” –AsPlainText -Force
$Credential = New-Object –TypeName System.Management.Automation.PSCredential –ArgumentList $User, $PWord
New-PSDrive -Name Z -PSProvider FileSystem -Root “\SERVER\SHAREPATH” -Credential $Credential
เซฟไอ้ด้านบนนี้เป็นไฟล์ชื่อ mount.ps1 ไว้ใน c:\ แก้ไข username, ***, SERVER\SHAREPATH ให้เรียบร้อย แล้วเปิด Group Policy Editor (run > gpedit.msc) แล้วเข้าตามนี้
double click “Startup” ด้านขวา แล้วกดเข้าหน้า power shell แล้วกรอกตามนี้
จบ
เกลียดแม่ง !
Tags: Azure, tweak, Windows Server