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