Benutzer-Werkzeuge

Webseiten-Werkzeuge


start
param(
  [string]$Url = "https://mail.deinedomain.tld/owa/",
  [string]$Username = "DOMAIN\user",
  [string]$Password = "secret",
  [switch]$IgnoreCertErrors
)

[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
if ($IgnoreCertErrors) { [System.Net.ServicePointManager]::ServerCertificateValidationCallback = { $true } }

function New-BasicAuthValue([string]$User,[string]$Pass){
  $pair = "{0}:{1}" -f $User,$Pass
  "Basic " + [Convert]::ToBase64String([Text.Encoding]::ASCII.GetBytes($pair))
}

$req = [System.Net.HttpWebRequest]::Create($Url)
$req.Method = "GET"
$req.AllowAutoRedirect = $false
$req.Headers.Add("Authorization", (New-BasicAuthValue $Username $Password))
$req.UserAgent = "OWA-BasicTest/PS5.1"

try { $resp = $req.GetResponse() }
catch [System.Net.WebException] { $resp = $_.Exception.Response }

if ($resp) {
  "HTTP: {0}" -f ([int]$resp.StatusCode)
  "Location: {0}" -f $resp.Headers["Location"]
  "WWW-Authenticate: {0}" -f ($resp.Headers.GetValues("WWW-Authenticate") -join " | ")
  $resp.Close()
}
param(
  [string]$Url = "https://mail.deinedomain.tld/owa/",
  [switch]$IgnoreCertErrors
)

[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
if ($IgnoreCertErrors) { [System.Net.ServicePointManager]::ServerCertificateValidationCallback = { $true } }

$req = [System.Net.HttpWebRequest]::Create($Url)
$req.Method = "GET"
$req.AllowAutoRedirect = $false

try {
  $resp = $req.GetResponse()
} catch [System.Net.WebException] {
  $resp = $_.Exception.Response
}

if ($resp) {
  "HTTP: {0}" -f ([int]$resp.StatusCode)
  "WWW-Authenticate:"
  $resp.Headers.GetValues("WWW-Authenticate")
  $resp.Close()
} else {
  "No response (TLS/DNS/Network issue)."
}
PS C:\Users\Manuel Zarat> C:\Users\Manuel Zarat\Desktop\eas.ps1
Target: https://eas.akm.at/Microsoft-Server-ActiveSync
User:   D2000\\jango.zarat
Count:  20  Delay: 100ms  Timeout: 10s

[13:46:23.900] #   1 -> HTTP 401 (1156 ms)
[13:46:25.197] #   2 -> HTTP 401 (1187 ms)
[13:46:26.485] #   3 -> HTTP 401 (1181 ms)
[13:46:27.753] #   4 -> HTTP 401 (1159 ms)
[13:46:29.014] #   5 -> HTTP 401 (1147 ms)
[13:46:30.271] #   6 -> HTTP 401 (1151 ms)
[13:46:31.550] #   7 -> HTTP 401 (1161 ms)
[13:46:32.821] #   8 -> HTTP 401 (1167 ms)
[13:46:34.072] #   9 -> HTTP 401 (1141 ms)
[13:46:35.328] #  10 -> HTTP 401 (1153 ms)
[13:46:36.606] #  11 -> HTTP 401 (1168 ms)
[13:46:37.876] #  12 -> HTTP 401 (1175 ms)
[13:46:39.153] #  13 -> HTTP 401 (1151 ms)
[13:46:40.395] #  14 -> HTTP 401 (1146 ms)
[13:46:41.684] #  15 -> HTTP 401 (1188 ms)
[13:46:42.964] #  16 -> HTTP 401 (1167 ms)
[13:46:44.219] #  17 -> HTTP 401 (1162 ms)
[13:46:45.651] #  18 -> HTTP 401 (1306 ms)
[13:46:46.909] #  19 -> HTTP 401 (1156 ms)
[13:46:48.180] #  20 -> HTTP 401 (1166 ms)

PS C:\Users\Manuel Zarat>

Hallo Besucher! Willkommen in diesem kleinen Wiki rund um IT. Vieles ist noch unvollständig, unstrukturiert oder vielleicht sogar falsch bzw. irreführend.

Du kannst Artikel gerne ergänzen oder verbessern. Gerne mit so vielen Links wie nötig. Bitte keine Werbelinks und nur selbst verfasste oder lizenzfreie Texte! Copyright beachten!

Fehlende Verlinkungen

Eine Liste von Seiten die noch erstellt werden müssen.

# ID Links
1turn3 : Show backlinks
2https2 : Show backlinks
3graylog2 : Show backlinks
4saslauthd2 : Show backlinks
5xml2 : Show backlinks
6chef2 : Show backlinks
7netzwerkkarte2 : Show backlinks
8cuda1 : Show backlinks
9iscsitarget1 : Show backlinks
10pcie1 : Show backlinks
11ssd1 : Show backlinks
12hub1 : Show backlinks
13rpc1 : Show backlinks
14srtp1 : Show backlinks
15iax21 : Show backlinks
16unix1 : Show backlinks
17networkd1 : Show backlinks
18sata1 : Show backlinks
193des1 : Show backlinks
20soundkarte1 : Show backlinks
21sips1 : Show backlinks
22realmd1 : Show backlinks
23ddos1 : Show backlinks
24sctp1 : Show backlinks
25vnc1 : Show backlinks
26creddump71 : Show backlinks
27courier1 : Show backlinks
28base641 : Show backlinks
29vmfs1 : Show backlinks
30pjsip1 : Show backlinks
31dnscat21 : Show backlinks
32tshark1 : Show backlinks
33dnsrecon1 : Show backlinks
34oakley1 : Show backlinks
35ice1 : Show backlinks
36webrtc1 : Show backlinks
37playground:playground1 : Show backlinks
38sendmail1 : Show backlinks
39fierce1 : Show backlinks
40mailx1 : Show backlinks
41wpa31 : Show backlinks
42nvme1 : Show backlinks
<#
PowerShell 5.1 – EAS Basic-Auth Test (sendet IMMER weiter, auch bei 429)
 
Optional:
- -IgnoreCertErrors (nur Test!)
- -LogHeaders um X-EAS-FAIL / X-Blocked-By etc. zu sehen, falls du die in HAProxy setzt.
#>
 
param(
  [string]$Url = "https://eas.akm.at/Microsoft-Server-ActiveSync",
  [string]$Username = "D2000\\jango.zarat",
  [string]$Password = "Lunikoff0310!",
  [int]$Count = 20,
  [int]$DelayMs = 100,
  [int]$TimeoutSec = 10,
  [switch]$IgnoreCertErrors,
  [switch]$LogHeaders
)
 
# TLS 1.2 erzwingen
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
 
# Optional: Zertifikatsfehler ignorieren (nur Tests)
if ($IgnoreCertErrors) {
  [System.Net.ServicePointManager]::ServerCertificateValidationCallback = { $true }
}
 
function New-BasicAuthValue {
  param([string]$User, [string]$Pass)
  $pair = "{0}:{1}" -f $User, $Pass
  $b64  = [Convert]::ToBase64String([Text.Encoding]::ASCII.GetBytes($pair))
  return "Basic $b64"
}
 
$auth = New-BasicAuthValue -User $Username -Pass $Password
 
Write-Host ("Target: {0}" -f $Url)
Write-Host ("User:   {0}" -f $Username)
Write-Host ("Count:  {0}  Delay: {1}ms  Timeout: {2}s" -f $Count, $DelayMs, $TimeoutSec)
Write-Host ""
 
for ($i=1; $i -le $Count; $i++) {
  $sw = [Diagnostics.Stopwatch]::StartNew()
  $code = -1
  $err  = $null
  $h = @{}
 
  try {
    $req = [System.Net.HttpWebRequest]::Create($Url)
    $req.Method = "GET"
    $req.AllowAutoRedirect = $false
    $req.Timeout = $TimeoutSec * 1000
    $req.ReadWriteTimeout = $TimeoutSec * 1000
    $req.UserAgent = "EAS-Test/PS5.1"
    $req.Headers.Add("Authorization", $auth)
    $req.Headers.Add("MS-ASProtocolVersion", "14.1")
 
    $resp = $req.GetResponse()
    $code = [int]$resp.StatusCode
    if ($LogHeaders) {
      foreach ($k in $resp.Headers.AllKeys) { $h[$k] = $resp.Headers[$k] }
    }
    $resp.Close()
  }
  catch [System.Net.WebException] {
    if ($_.Exception.Response) {
      $resp = $_.Exception.Response
      $code = [int]$resp.StatusCode
      if ($LogHeaders) {
        foreach ($k in $resp.Headers.AllKeys) { $h[$k] = $resp.Headers[$k] }
      }
      $resp.Close()
    } else {
      $err = $_.Exception.Message
    }
  }
  catch {
    $err = $_.Exception.Message
  }
 
  $sw.Stop()
  $ts = (Get-Date).ToString("HH:mm:ss.fff")
 
  if ($code -eq -1) {
    Write-Host ("[{0}] #{1,4} -> HTTP -1 ({2} ms) ERROR={3}" -f $ts, $i, $sw.ElapsedMilliseconds, $err)
  } else {
    if ($LogHeaders) {
      $xFail = $h["X-EAS-FAIL"]
      $xBlk  = $h["X-Blocked-By"]
      $extra = @()
      if ($xFail) { $extra += ("X-EAS-FAIL={0}" -f $xFail) }
      if ($xBlk)  { $extra += ("X-Blocked-By={0}" -f $xBlk) }
      $suffix = ""
      if ($extra.Count -gt 0) { $suffix = "  " + ($extra -join "  ") }
      Write-Host ("[{0}] #{1,4} -> HTTP {2} ({3} ms){4}" -f $ts, $i, $code, $sw.ElapsedMilliseconds, $suffix)
    } else {
      Write-Host ("[{0}] #{1,4} -> HTTP {2} ({3} ms)" -f $ts, $i, $code, $sw.ElapsedMilliseconds)
    }
  }
 
  # WICHTIG: NICHT abbrechen bei 429 – weiter senden
  Start-Sleep -Milliseconds $DelayMs
}
start.txt · Zuletzt geändert: 2026/02/19 22:31 von jango