Useful Exchange PowerShell Commans…
Exchange powershell komutları başlı başına bir dünya. Ve aslında bildiğiniz üzere arayüzde yaptığınız herşeyi arka planda powershell komutları ile yapıyor. Şimdi bu komutların en çok işe yarayanları aşağıda sizlerle paylaşmak istiyorum.
Tüm mailbox’lara hak verme veya geri alma,
Get-Mailbox -ResultSize unlimited | Add-MailboxPermission -User ”kullanıcı Adı” -AccessRights “FullAccess” -InheritanceType all
Geri almak için,
Get-Mailbox -ResultSize unlimited | Remove-MailboxPermission -User “Kullanıcı Adı” -AccessRights “FullAccess” -InheritanceType all
Buradaki “FullAccess” çeşitli komninasyonlarla değiştirilebilir. Mesela “Send As” yada “Receive As” gibi yetkilerle değiştirilebilir.
Options disable etmek için, (Pop, Imap, ActiveSync, Owaap)
get-Mailbox -ResultSize:unlimited | set-CASMailbox -OWAEnabled $False -ErrorAction SilentlyContinue -WarningAction SilentlyContinue
get-Mailbox -ResultSize:unlimited | set-CASMailbox -ActiveSyncEnabled $False -ErrorAction SilentlyContinue -WarningAction SilentlyContinue
get-Mailbox -ResultSize:unlimited | set-CASMailbox -PopEnabled $False -ErrorAction SilentlyContinue -WarningAction SilentlyContinue
get-Mailbox -ResultSize:unlimited | set-CASMailbox -ImapEnabled $False -ErrorAction SilentlyContinue -WarningAction SilentlyContinue
Tekrar Enable etmek için,
get-Mailbox -ResultSize:unlimited | set-CASMailbox -OWAEnabled $True -ErrorAction SilentlyContinue -WarningAction SilentlyContinue
get-Mailbox -ResultSize:unlimited | set-CASMailbox -ActiveSyncEnabled $True -ErrorAction SilentlyContinue -WarningAction SilentlyContinue
get-Mailbox -ResultSize:unlimited | set-CASMailbox -PopEnabled $True -ErrorAction SilentlyContinue -WarningAction SilentlyContinue
get-Mailbox -ResultSize:unlimited | set-CASMailbox -ImapEnabled $True -ErrorAction SilentlyContinue -WarningAction SilentlyContinue
Mapi Disable etmek için, (Tüm kullanıcılar)
Get-Mailbox | Set-CASMailbox -MAPIBlockOutlookRpcHttp $false
Mapi Enable etmek için, (Tüm Kullanıcılar)
Get-Mailbox | Set-CASMailbox -MAPIBlockOutlookRpcHttp $true
Kullanici bazinda disable
Set-CASMailbox ali -MAPIBlockOutlookRpcHttp $false
Kullanici bazinda enable
Set-CASMailbox ali -MAPIBlockOutlookRpcHttp $true
Kullanici açik kapali durumu listeleme
Get-Mailbox | Get-CASMailbox |fl kullanıcıadı*,MAPIblockoutlookrpchttp
Tüm Kullanicilarin durumu listeleme
Get-Mailbox | Get-CASMailbox |fl kullanıcıadı*,MAPIblockoutlookrpchttp
Autodiscover server durumu listeleme,
Get-ClientAccessServer | fl name,autodiscoverserviceinternaluri
Circular loggining,
Durum görüntüleme,
Get-MailboxDatabase | select name, circularloggingenabled | sort circularloggingenabled -desc | ft -AutoSize
Circular loggining enable etmek için,
Get-MailboxDatabase | Set-MailboxDatabase -CircularLoggingEnabled $True
circular loggining disable etmek için,
Get-MailboxDatabase | Set-MailboxDatabase -CircularLoggingEnabled $False
Exchange organization’u görmek için,
Get-OrganizationConfig | fl Identity
Arbitration mailboxları görme,
get-mailbox -arbitration | fl name, identity, database
Silmek için,
Get-Mailbox -Arbitration -Database system | Remove-Mailbox -Arbitration -RemoveLastArbitrationMailboxAllowed
Disable etmek için,
Get-Mailbox -Arbitration | Disable-Mailbox -Arbitration -RemoveLastArbitrationMailboxAllowed
Tekrar oluşturmak için,
Setup.com /prepareAD
Public Folder durumu görmek için,
Get-PublicFolderStatistics -Server “SERVER NAME” | fl
Public Folder silmek için,
Önce Default Address Book’u siliyoruz,
Get-OfflineAddressBook | remove-OfflineAddressBook
Public Folder’i siliyoruz,
Remove-PublicFolderDatabase -identity “public folder name”
Hemen yeni bir OAB yapılandırıyruz,
New-OfflineAddressBook -Name “Offline Address Book” -AddressLists “\Default Global Address List” -Server ”sunucuismi” -VirtualDirectories “Sunucuismi\OAB (Default Web Site)”
Ve bunu Set as default hale getiriyoruz,
Set-OfflineAddressBook -Identity “Offline Address Book” -IsDefault $true
Exchange versiyonunu göreyim, (Detaylı)
Get-ExchangeServer | Format-Table Name,
Get-ExchangeServer | Format-Table Name, *Version* (sadece versiyon)
Exchange Key girişi
Set-ExchangeServer -Identity sunucuismi -ProductKey ABC12-DEF34-GHI56-JKL78-MNO90
RPC Encryption durumu
Get-RPCClientAccess | fl name, encryptionrequired
Get-RPCClientAccess | Set-RPCClientAccess –EncryptionRequired $true / $false
DAG’ta databaseleri Activation preference ağırlığına göre dağıtmak ve sonucunu görmek için,
.\RedistributeActiveDatabases.ps1 -DagName dagismi -BalanceDbsByActivationPreference -ShowFinalDatabaseDistribution -Confirm:$false
Dag ismini görmek için,
Get-DatabaseAvailabilityGroup
Shared mailbox’ları görmek için,
Get-Mailbox -RecipientTypeDetails SharedMailbox yada,
get-mailbox -filter {IsShared -eq $true}
Disconnected veya Deleted mailbox’ları görmek için,
Get-MailboxDatabase | Get-MailboxStatistics | where {$_.DisconnectReason -ne $null} | ft displayname,database,disconnectreason -auto
Disconnected mailbox’a connect için,
Connect-Mailbox -Identity “kullanıcı adı” -Database ”datastore” -User “login name”
Arada sırada ilavelerle bu makaleye devam edeceğim…