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