Archive for the ‘PowerShell’ Category

Listarea utilizatorilor din AD in functie de data crearii lor

Daca aveti nevoie sa listati utilizatorii din AD in functie de data crearii lor (de la primul user creat pana in prezent, sau puteti sa ii filtrati si numai pentru o anumita perioada data), folosit scriptul urmator:


$Start = Get-Date -Day 01 -Month 01 -Year 2014 -Hour 00
$End = Get-Date -Day 09 -Month 11 -Year 2015 -Hour 23 -Minute 59
Get-ADUser -Filter * -Properties whenCreated | ? { ($_.whenCreated -gt $Start) -and ($_.whenCreated -le $End) } | Format-Table Name,WhenCreated,DistinguishedName -Autosize –Wrap > C:/User.csv

Partea cu > C:/User.csv este ca sa va exporte lista pe C:/ intr-un fisier .csv. Daca nu doriti asta ci vreti sa vedeti lista in consola, omiteti aceasta parte.

Enjoy

Exchange 2010 – cmdlets uzuale

Exchange 2010 – cmdlets uzuale

Moving Mailboxes
New-MoveRequest This link is external to TechNet Wiki. It will open in a new window. -Identity -TargetDatabase „DB01″

Get-MoveRequestStatistics This link is external to TechNet Wiki. It will open in a new window. -Identity | ft

View Move Request TechNet Page This link is external to TechNet Wiki. It will open in a new window.

User Objects
get-user | sort-object name
get-user | sort-object name -descending
get-user „name” | format-list
get-user | where-object {$_.distinguishedname -ilike ‘*ou=sales,dc=domain,dc=com’} | Enable-mailbox -database ‘servername\databasename’
get-user -filter {(recipienttype – eq ‘user’) – and (city -eq ‘cityname’)}

Recipients
enable-mailuser -identity name -externalemailaddress name@domain.com
enable-mailbox „displayname” -database „storagegroup\database”
set-mailbox name -hiddenfromaddresslistsenabled $true/$false -prohibitsendquota unlimited -primarysmtpaddress „name@domain.com”
new-mailbox -userprincipalname „name@domain.com” -alias name -database „name” -name name -organizationalunit name -Firstname name -lastname name -displayname „first last”
get-mailbox -database „database”
move-mailbox name -targetdatabase „server\database”
add-mailboxpermission name -user name -accessrights fullaccess
new-distributiongroup -name „name” -organizationalunit „name” -samacccountname „name” -type „security”
set-distributiongroup name -hiddenfromaddresslist $true
new-mailcontact -name „display name” -externalsmtpaddress „name@domain.com” -organizationalunit contractors
set-contact „name” -company „name”
enable-mailcontact „name” -externalemailaddress „name@domain.com”
get-mailboxstatistics „username” | format-list
get-mailboxstatistics -server „name” | format-list
get-mailboxstatistics -server „name” | sort-object -property totalitemsize

Meeting Resources
new-mailbox -userprincipalname „name@domain.com” -alias name -database „name” -name name -organizationalunit name -displayname „name” -room/-equipment
set-mailboxcalendarsettings name -automateProcessings autoaccept
set-mailboxcalendarsettings name -resourcedelegate name

Mail Store
get-mailboxdatabase -server name | set-mailboxdatabase -issuewarningquota 100mb -prohibitsendquota 100mb
mount-database databasename
dismount-database databasename
new-storagegroup name -server name
new-mailboxdatabase name -storagegroup name

Public Folders
new-publicfolder name -server name
set-publicfolder \name -replicas „server\database”,”server2\database2″
get-publicfolder \name
set-publicfolderdatabase „server\database” -usecustomreferralserverlist $true/$false -publicfolderreferralserverlist $null
get-publicfolderstatistics
enable-mailpublicfolder -i „\foldername”

Transport
new-accepteddomain -name „name” -domainname name.domain.com -domaintype authoritative
new-emailaddresspolicy -name „name” -includedrecipients allrecipients -conditionaldepartment „departmentname” -enabledemailaddresstemplate: „SMTP:%g.%s@mkt.adatum.com”,”%g.%s@adatum.com”
set-emailaddresspolicy „name” -Priority #
get-emailaddresspolicy
update-emailaddresspolicy „policyname”
get-queue
freeze-queue
unfreeze-queue
get-transportserver | get-messagetrackinglog -messagesubject „subject” -Sender „sender address” -Recipients „Recipients”

Edge Transport
new-edgesubscription -filename „filelocation”
start-edgesynchronization

Address List
new-addresslist -name „listname” -conditionaldepartment „departmentname” -includedrecipients mailboxusers -container „containername”
update-addresslist „listname”

Testing
test-mailflow
test-owaconnectivity
test-mapiconnectivity
test-servicehealth
test-systemhealth

Autodiscover
new-outlookprovider
get-outlookprovider
set-outlookprovider exch -server „servername”
remove-outlookprovider
new-autodiscovervirtualdirectory
get-autodiscovervirtualdirectory
set-autodiscovervirtualdirectory -externalurl URL -internalurl URL -path „location”

Out of Office
set-mailbox name -externaloofoptions internalonly/external

Introducere in PowerShell

Introducere in PowerShell

Am decis ca ar fi util sa scriu o serie de articole legate de PowerShell: ce este, cum il folosim si mai ales de ce.

Un prim articol il puteti gasi aici

Daca aveti sugestii, completari, intrebari sau chiar critici, imi puteti scrie pe adresa:

info@helpdeskcloud.ro

Pe data viitoare!

Exportul utilizatorilor Office 365 intr-un fisier CSV

Exportul utilizatorilor Office 365 intr-un fisier CSV (Export Office 365 Users to a CSV File)

Organizatiile cu foarte multi utilizatori Office 365 ar putea avea nevoie uneori, din diverse motive sa poate exporta toti acesti utilizatori intr-un fisier de tip CSV.
Acest lucru este posibil daca ne conectam la contul „Admin” Office 365 si folosim o comanda PowerShell.

Inainte insa de a putea executa comenzi PowerShell este bine sa va asigurati ca aveti deja instalat pe calculator PowerShell cmdlets pentru Windows Azure Active Directory, precum si ultima versiune a Microsoft Online Services Sign-in Assistant. Pentru mai multe informatii, puteti accesa linkul http://technet.microsoft.com/ro-ro/library/jj151815.aspx

Exportul „Office 365 User Information”

Mai intai avem nevoie sa ne conectam la Office 365 utilizand un cont „admin”.
Ne logam in Windows 8
Scrieti in bara de cautare Powershell, asigurandu-ne ca modulul Azure Active Directory pentru Powershell este selectat in „search results” si apasati CTRL+SHIFT+ENTER pentru a deschide consola cu drepturi de administrator. Daca vise cere userul si parola completati aceste informatii.
In consola PowerShell, scrieti connect-msolservice si apasati Enter.
In fereastra pop-up care va aparea introduceti credentialele contului admin Office 365 si dati click pe ok.

Acum sunteti conectat la Office 365 si puteti rula urmatoarea comanda pentru a obtine lista userilor licentiati:

Get-MsolUser | Where-Object { $_.isLicensed -eq „TRUE” }

cmdlet

Acum, putem trece la exportare propriu-zisa a userilor Office 365 intr-un fisier CSV:

Get-MsolUser | Where-Object { $_.isLicensed -eq „TRUE” } | Select-Object UserPrincipalName, DisplayName, Country, Department | Export-Csv c:\LicensedUsers.csv

Daca nu doriti sa generati fisierul CSV ci doar sa folosi pe loc datele obtinute, rulati comanda:

Get-MsolUser | Where-Object { $_.isLicensed -eq „TRUE” } | Select-Object UserPrincipalName, DisplayName, Country, Department | Out-Gridview

Configurarea permisiunii SendAs

Permisiunea SendAs (in engleza SendAs permission) oferă unui utilizator permisiunea de a folosi adresa de e-mail unui alt utilizator si de a trimite in numele lui mesaje. De exemplu, atunci când voi da utilizatorului Dan  permisiunea SendAs (TrimitereCa) la casuta poștală a unui utilizator pe nume George , Dan va putea trimite mesaje e-mail care par să fie trimise de către George, fara a exista vreo notificare cum ca mesajul este doar in numele lui George dar scris de altcineva (exista si situatia in care ati vrea ca secretara, de exemplu, sa trimita un mail in numele managerului, dar sa apara ca mailul a fost rtimis de ea. Aceasta modalitate se numeste send on behalf si exista si pentru ea o comanda PowerShell)  . De asemenea, în cazul în care organizația dvs. utilizează un grup de distribuție Help Desk, puteti da pemisiuni membrilor groupui sa „trimita ca” Help Desk. În acest fel, răspunsurile la mesajele trimise de membrii grupului Help Desk par să vină de la grup si nu de la vreun tehnician Help Desk.

Pentru a da unui utilizator permisiuni SendAs, utilizați Windows PowerShell.

Înainte de a începe, ne conectam la server cu ajutorul PowerShell:

• Definiti politica de executare a scripturilor (vi se va cere o confirmare) :

Set-ExecutionPolicy RemoteSigned

• Connectati PowerShell la serviciul Exchange Online si activati modulul Microsoft Online Services cu ajutorul comenzilor urmatoare (o fereastra de identificare la Office 365 se  va deschide):

$cred = Get-Credential “AdresaTaAdminl@DomeniulTau.com”

Import-Module MSOnline

Connect-MsolService -Credential $cred

$msoExchangeURL = “https://ps.outlook.com/powershell/

$session= New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri $msoExchangeURL -Credential $cred -Authentication Basic -AllowRedirection

Import-PSSession $session

->Enter

-si gata! Putem incepe!

Pentru acordarea permisiunii SendAs executati comanda PowerShell:

Add-RecipientPermission -Identity „user1@domeniul.com” -Trustee „user2@domeniul.com” -AccessRights SendAs

Puteti verifica permisiunile unui user ruland comanda:

Get-RecipientPermission -Identity „user@domeniu.com”

Permisiuni

Adaugare, anulare, verificare permisiuni pe un mailbox:

Acordare permisiuni („user1″ acorda permisiuni complete asupra mailboxului utilizatorului „user2″)

Add-MailboxPermission -Identity user1@domain.com -user user2@domain.com –AccessRights FullAccess

Anulare permisiuni („user1″anuleaza permisiunile complete asupra mailboxului sau, utilizatorului „user2″)

Remove-MailboxPermission -Identity user1@domain.com -user user2@domain.com –AccessRights FullAccess

Verificare permisiuni:

Get-MailboxPermission -Identity „user@domain.com”

 

Parola nu expira niciodata (password never expires)

Parola nu expira niciodata (Password never expire)

Ca administrator Office 365 al companiei tale, poate vei dori sa configurezi „parola nu expira niciodata”, din diverse motive. Ei bine, e foarte simplu sa faci acest lucru.
Pasul 1: Conecteaza PowerShell la Exchange Online ca in postarea de mai sus.
Pasul 2: Odata conectat, ruleaza comanda urmatoare:

Get-MSOLUser | Set-MsolUser -PasswordNeverExpires $true

Aceasta comanda va seta parolele tuturor userilor sa nu expire niciodata.

Daca vrei ca aceasta setare sa se aplice doar unui user specific, ruleaza comanda de mai jos.

Set-MsolUser -UserPrincipalName <ID_user> -PasswordNeverExpires $true

Si gata! Ati rezolvat! Parola nu expira niciodata!
Dsepre aceasta setare puteti citi mai multe aici

Va invit (din nou) sa va inscrieti pe forumul acestui site. Stiu, e cam „saracut” deocamdata, insa pe masura ce vom vi mai multi, cu mai multe subiecte, intrebari, sfaturi, forumul va „creste” si el.
Pentru a va inscrie, dati click

Conectarea PowerShell la serverul Exchange online:


Pentru MODUL -> Windows 7  e obligatoriu [Parte administrativa (useri etc)]

• Sub Windows XP si Windows Vista, va trebui sa mergeti la adresa de mai jos, pentru a instala utlima versiune de PowerShell

http://help.outlook.com/fr-fr/140/cc952756.aspx

• Veti putea atunci sa downloadati modulul Microsoft Online Services pentru Windows PowerShell:

http://onlinehelp.microsoft.com/fr-fr/office365-enterprises/hh124998.aspx

• Porniti PowerShell  ca Administrator (menu Start-> All Programs-> Accessoires -> Windows PowerShell -> clic dreapta pe „Windows PowerShell”, „Run as Administrator”)

• Definiti politica de executare a scripturilor (vi se va cere o confirmare) :

Set-ExecutionPolicy RemoteSigned

• Connectati PowerShell la serviciul Exchange Online si activati modulul Microsoft Online Services cu ajutorul comenzilor urmatoare (o fereastra de identificare la Office 365 se  va deschide):

$cred = Get-Credential „AdresaTaAdminl@DomeniulTau.com”

Import-Module MSOnline

Connect-MsolService -Credential $cred

$msoExchangeURL = “https://ps.outlook.com/powershell/

$session= New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri $msoExchangeURL -Credential $cred -Authentication Basic -AllowRedirection

Import-PSSession $session

->Enter

-si gata! Esti conectat. Din acest moment poti rula orice cmdlet, comanda care se va executa direct pe serverul Exchange Online