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
4chef2 : Show backlinks
5saslauthd2 : Show backlinks
6xml2 : Show backlinks
7netzwerkkarte2 : Show backlinks
8sips1 : Show backlinks
9iscsitarget1 : Show backlinks
10tshark1 : Show backlinks
11srtp1 : Show backlinks
12ice1 : Show backlinks
13networkd1 : Show backlinks
143des1 : Show backlinks
15soundkarte1 : Show backlinks
16ssd1 : Show backlinks
17hub1 : Show backlinks
18nvme1 : Show backlinks
19wpa31 : Show backlinks
20ddos1 : Show backlinks
21pcie1 : Show backlinks
22cuda1 : Show backlinks
23sata1 : Show backlinks
24rpc1 : Show backlinks
25webrtc1 : Show backlinks
26unix1 : Show backlinks
27base641 : Show backlinks
28creddump71 : Show backlinks
29courier1 : Show backlinks
30sctp1 : Show backlinks
31mailx1 : Show backlinks
32vnc1 : Show backlinks
33vmfs1 : Show backlinks
34pjsip1 : Show backlinks
35realmd1 : Show backlinks
36dnscat21 : Show backlinks
37dnsrecon1 : Show backlinks
38oakley1 : Show backlinks
39playground:playground1 : Show backlinks
40sendmail1 : Show backlinks
41fierce1 : Show backlinks
42iax21 : 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