Date post: | 01-May-2015 |
Category: |
Documents |
Upload: | pina-d-agostino |
View: | 253 times |
Download: | 4 times |
Gestire Active Directory da Gestire Active Directory da linea di comandolinea di comando
PierGiorgio MalusardiPierGiorgio MalusardiIT Professional Evangelist – IT Professional Evangelist – MicrosoftMicrosoft
Strategia dei Tool di GestioneStrategia dei Tool di Gestione
Metodi di Gestione
Out of band Remote Console Remote GUI Automated/preset
• EMS (Remote Serial) •Cmd Line / Simple scripting•WMIC
•Para-programming/ Complex scripting
• Terminal Server• MMC• Web Admin
• Policy • RIS• Automated setup
Attenzione su gli Amministratori•Pre-built .exe•Pre-built .vbs•Batch files•Redirection / Piping •WMIC aggiunge estensibilità
• Programmatori o Amministrtori sofisticati• Costruzione di propri tool con script
• Win32 APIs• COM Objects • Interfaccie di scripting WMI e ADSI
Command Line Tools ProgramCommand Line Tools Program
I tool DS*I tool DS* Tool pensati per eseguire operazioni anche Tool pensati per eseguire operazioni anche
complesse su AD da command line o da batchcomplesse su AD da command line o da batch Dsadd.exeDsadd.exe Aggiunge oggetti alla directory Aggiunge oggetti alla directory Dsget.exeDsget.exe Mostra le proprietà di oggetti nella Mostra le proprietà di oggetti nella
directorydirectory Dsmod.exeDsmod.exe Modifica gli attributi selezionati di un Modifica gli attributi selezionati di un
oggetto presente nella directoryoggetto presente nella directory Dsmove.exeDsmove.exe Muove un ogetto dal suo container Muove un ogetto dal suo container
attuale in un nuova posizione nella directoryattuale in un nuova posizione nella directory Dsrm.exeDsrm.exe Rimuove un ogetto o una completa Rimuove un ogetto o una completa
struttura dalla directorystruttura dalla directory Dsquery.exeDsquery.exe Interroga Active Directory alla ricerca Interroga Active Directory alla ricerca
di oggetti che corrispondono a specifici criteri di di oggetti che corrispondono a specifici criteri di ricercaricerca
DSAdd – La sintassiDSAdd – La sintassiDSaddDSadd TypeType DNDN [DN][DN] [Attributi [Attributi valorevalore] ] [{-s [{-s Server Server |-d |-d
DomainDomain}] [-u }] [-u UserNameUserName][-p {][-p {Password Password |*}]|*}] TypeType: definisce il tipo di oggetto che si vuole : definisce il tipo di oggetto che si vuole
crearecreare UserUser OUOU ComputerComputer ……
Attributi: definiscono le diverse proprietà Attributi: definiscono le diverse proprietà dell’oggetto creatodell’oggetto creato
Differiscono a seconda dell’oggetto che si vuole Differiscono a seconda dell’oggetto che si vuole crearecreare
DSadd User “CN=Giorgio Malusardi, OU=Milano, DC=contoso, DC=com” –SAMID piergim -UPN [email protected] -memberof “CN=Sales, OU=Milano, DC=Contoso, DC=com” –disabled Yes
DSadd – La sintassi per UserDSadd – La sintassi per User -samid -samid SAMNameSAMName -upn -upn UPNUPN -fn -fn NomeNome -mi -mi InizialeIniziale -ln -ln CognomeCognome -display -display DisplayNameDisplayName -empid -empid Codice DipendenteCodice Dipendente -pwd {-pwd {Password Password | *}, * | *}, *
chiederà la passwordchiederà la password -desc -desc DescrizioneDescrizione -memberof -memberof DN di GruppoDN di Gruppo -office -office UfficioUfficio -tel -tel TelefonoTelefono -email -email EmailEmail -hometel -hometel Telefono di CasaTelefono di Casa -pager -pager Numero di PagerNumero di Pager -mobile Numero di -mobile Numero di CellulareCellulare -fax -fax Numero di FaxNumero di Fax
-iptel -iptel Numero Telefono IPNumero Telefono IP -webpg -webpg Pagina WEBPagina WEB -title -title TitoloTitolo -dept -dept DipartimentoDipartimento -company -company SocietàSocietà -mgr -mgr DN del ManagerDN del Manager -hmdir -hmdir HomeDirectoryHomeDirectory -hmdrv Lettera -hmdrv Lettera Disco HomeDisco Home -profile -profile Percorso del ProfiloPercorso del Profilo -loscr -loscr Percorso degli ScriptPercorso degli Script -mustchpwd {yes | no}-mustchpwd {yes | no} -canchpwd {yes | no}-canchpwd {yes | no} -reversiblepwd {yes | no}-reversiblepwd {yes | no} -pwdneverexpires {yes | no}-pwdneverexpires {yes | no} -acctexpires -acctexpires Giorni alla Giorni alla
ScadenzaScadenza -disabled {yes | no}-disabled {yes | no}
DSget – La sintassiDSget – La sintassi
DSgetDSget TypeType DNDN [Attributi] [Attributi] [{-s [{-s Server Server |-d |-d DomainDomain}] [-u }] [-u UserNameUserName][-p {][-p {Password Password |*}]|*}]
Usa la stessa sintassi di DSaddUsa la stessa sintassi di DSadd Attributi Attributi
non devono essere indicati dei valori non devono essere indicati dei valori Rappresentano i parametri che si vogliono Rappresentano i parametri che si vogliono
avere in rispostaavere in risposta
DSget User “CN=Giorgio Malusardi, OU=Milano, DC=contoso, DC=com” –SAMID -UPN -memberof
DSmod – La sintassiDSmod – La sintassi
dsmoddsmod TypeType DNDN [DN][DN] [Attributi [Attributi valorevalore] ] [{-s [{-s Server Server |-d |-d DomainDomain}] [-u }] [-u UserNameUserName][-p {][-p {Password Password |*}] -c|*}] -c
Accetta la stessa sintassi di DSaddAccetta la stessa sintassi di DSadd -c-c (Continus mode) indica di proseguire (Continus mode) indica di proseguire
l’esecuzione del comando anche a fronte di erroril’esecuzione del comando anche a fronte di errori Modifica i parametri indicatiModifica i parametri indicati Per USER non sono modificabiliPer USER non sono modificabili
-SAMID-SAMID -MemberOF -MemberOF
(è modificabile con il comando dsmod GROUP)(è modificabile con il comando dsmod GROUP)
DSmod – La sintassi per GROUPDSmod – La sintassi per GROUP
DSmod group DSmod group “CN=Marketing,OU=Milano,DC=Contoso,DC=Com” -secgrp “CN=Marketing,OU=Milano,DC=Contoso,DC=Com” -secgrp nono
DSmod group DSmod group “CN=Marketing,OU=Milano,DC=Contoso,DC=Com” -addmbr “CN=Marketing,OU=Milano,DC=Contoso,DC=Com” -addmbr “CN=giorgio malusardi,CN=Users,DC=Contoso,DC=Com”“CN=giorgio malusardi,CN=Users,DC=Contoso,DC=Com”
DSmove – La sintassiDSmove – La sintassi
dsmovedsmove DNDN [-newname [-newname nuovonomenuovonome] [-] [-newparent nuovonewparent nuovoDNDN]] [{-s [{-s Server Server |-d |-d DomainDomain}] [-u }] [-u UserNameUserName][-p {][-p {Password Password |*}]|*}]
Sposta o rinomina un oggettoSposta o rinomina un oggetto
DSmove "CN=Sales, OU=Milano, DC=Contoso, DC=com" -newname "CN=Vendite, OU=Milano, DC=Contoso, DC=com“
DSmove "CN=Vendite, OU=Milano, DC=Contoso, DC=com" -newparent "CN=Sales, CN=Users, DC=Contoso, DC=com"
DSrm – La sintassiDSrm – La sintassi
dsrmdsrm DN [DN]DN [DN] [-subtree [-exclude]] [-[-subtree [-exclude]] [-noprompt] [-c] noprompt] [-c] [{-s [{-s Server Server |-d |-d DomainDomain}] [-u }] [-u UserNameUserName][-p {][-p {Password Password |*}] -c|*}] -c
-subtree-subtree indica di spostare anche i child indica di spostare anche i child se l’oggetto è un containerse l’oggetto è un container
L’aggiunta di L’aggiunta di –exclude–exclude a a –subtree–subtree determina lo spostamento dei soli oggetti determina lo spostamento dei soli oggetti child e non dell’oggetto stessochild e non dell’oggetto stesso
DSQuery – La sintassiDSQuery – La sintassidsquerydsquery object_type object_type [{[{StartNode StartNode | forestroot | | forestroot | domainroot}] [-scope {subtree | onelevel | domainroot}] [-scope {subtree | onelevel | base}]base}] [-o {dn | rdn | samid}][-o {dn | rdn | samid}] [-name [-name NameName][-][-desc desc DescriptionDescription] [-upn ] [-upn UPNUPN] [-samid ] [-samid SAMNameSAMName] [-inactive ] [-inactive NumberOfWeeksNumberOfWeeks][-][-stalepwd stalepwd NumberOfDaysNumberOfDays] [-disabled]] [-disabled] [{-s [{-s Server Server |-d |-d DomainDomain}] [-u }] [-u UserNameUserName][-p ][-p {{Password Password |*}]|*}]
dsquery user “CN=Users, DC=Contoso,DC=Com” -stalepwd 7
LDIFDELDIFDE
Consente di aggiungere/modificare Consente di aggiungere/modificare oggetti in Active Directory e di esportare oggetti in Active Directory e di esportare intere gerarchie di oggettiintere gerarchie di oggetti
Gli oggetti da aggiungere o modificare Gli oggetti da aggiungere o modificare sono passati al tool usando un file di sono passati al tool usando un file di testo testo i diversi attributi di un oggetto sono indicati i diversi attributi di un oggetto sono indicati
su righe diverse con copie Attributo: Valoresu righe diverse con copie Attributo: Valore i diversi oggetti sono indicati con blocchi di i diversi oggetti sono indicati con blocchi di
attributi separati da linee biancheattributi separati da linee bianche
LDIFDE – La sintassiLDIFDE – La sintassi Parametri Generali Parametri Generali
-i import mode (il default è Export.)-i import mode (il default è Export.) -f -f filename filename file di input o output.file di input o output. -s -s servername servername server a cui collegarsiserver a cui collegarsi -v modalità verbosa-v modalità verbosa -j -j path path locazione del file di loglocazione del file di log -t -t port port Numero di porta per la connessione (default = 389).Numero di porta per la connessione (default = 389). -? Help-? Help
Parametri specifici per l’ExportParametri specifici per l’Export -d -d RootDN RootDN La radice della ricerca LDAP search (defaults = Naming La radice della ricerca LDAP search (defaults = Naming
Context)Context) -r -r Filter Filter filtro di ricerca LDAP (defaults = “(objectClass=*)”)filtro di ricerca LDAP (defaults = “(objectClass=*)”) -p -p SearchScope SearchScope Scope della ricerca (Base/OneLevel/Subtree)Scope della ricerca (Base/OneLevel/Subtree) -l -l list list Lista di attributi desiderati (separati da virgola) nell’outputLista di attributi desiderati (separati da virgola) nell’output -n Non attributi binari-n Non attributi binari
Parametri specifici per l’ImportParametri specifici per l’Import -k ignora gli errori “Constraint Violation” e “Object Already Exists”-k ignora gli errori “Constraint Violation” e “Object Already Exists”
Credentials parametersCredentials parameters -a -a UserDNUserDN credenziali in formato DN usate per eseguire il comando. credenziali in formato DN usate per eseguire il comando.
es: “cn=administrator,dc=contoso,dc=com es: “cn=administrator,dc=contoso,dc=com passwordpassword.” .” -b -b UserName Domain UserName Domain Credenziali usate per eseguirce il comando. Credenziali usate per eseguirce il comando.
Il defualt sono le credenziali dell’utente loggato Il defualt sono le credenziali dell’utente loggato
LDIFDE – file di importLDIFDE – file di importDN: CN=ITsupp,CN=Users,DC=Contoso,DC=ComDN: CN=ITsupp,CN=Users,DC=Contoso,DC=ComchangeType: addchangeType: addCN: ITsuppCN: ITsuppdescription: Gruppo di supporto ITdescription: Gruppo di supporto ITUsersobjectClass: groupUsersobjectClass: groupsAMAccountName: ITsuppsAMAccountName: ITsupp
DN: CN=Finance,CN=Users,DC=Contoso,DC=ComDN: CN=Finance,CN=Users,DC=Contoso,DC=ComchangeType: addchangeType: addCN: FinanceCN: Financedescription: Finance description: Finance UsersobjectClass: groupUsersobjectClass: groupsAMAccountName: FinancesAMAccountName: Finance
CSVDECSVDE Tool da linea di comando che consente Tool da linea di comando che consente
l’import e l’export di oggetti da Active l’import e l’export di oggetti da Active DirectoryDirectory
Usa file delimitati da virgoleUsa file delimitati da virgole Una riga per ogni oggetto da importareUna riga per ogni oggetto da importare La prima riga costituisce l’intestazione e La prima riga costituisce l’intestazione e
indica quali sono gli attributi presenti nelle indica quali sono gli attributi presenti nelle righe successiverighe successive
Non consente la modifica di oggetti già Non consente la modifica di oggetti già presenti in Active Directorypresenti in Active Directory
csvde [-i] [-f file csv] [-k]
CSVDE – i parametriCSVDE – i parametri
-i: Imposta la modalità di import (export è il -i: Imposta la modalità di import (export è il default). default).
-f -f FileNameFileName: indica il file da usare per : indica il file da usare per l’inputl’input
-k: Ignora gli errori, inclusi “object already -k: Ignora gli errori, inclusi “object already exists,” “constraint violation,” e “attribute or exists,” “constraint violation,” e “attribute or value already exists” durante value already exists” durante l’importazionel’importazione
CSVDE – file di importCSVDE – file di import
DN,objectClass,sAMAccountName,sn,givenName,usDN,objectClass,sAMAccountName,sn,givenName,userPrincipalNameerPrincipalName
"CN=Scott "CN=Scott Bishop,OU=Employees,DC=contoso,DC=com", Bishop,OU=Employees,DC=contoso,DC=com", user,sbishop,Bishop,Scott,[email protected],sbishop,Bishop,Scott,[email protected]
NTDSUTILNTDSUTIL Tool principe per la gestione di Active Tool principe per la gestione di Active
DirectoryDirectory Consente di eseguire operazioni difficilmente Consente di eseguire operazioni difficilmente
effettuabili da interfaccia grafica:effettuabili da interfaccia grafica: Creazione di Application PartitionCreazione di Application Partition Gestione delle partizioniGestione delle partizioni Precreazione di Domini e DC per effettuare la Precreazione di Domini e DC per effettuare la
delega di creazione dei dominidelega di creazione dei domini Spostamento di ruoli FSMOSpostamento di ruoli FSMO Restore del DB di Active DirectoryRestore del DB di Active Directory Spostamento, verifica, compressione del DB di Spostamento, verifica, compressione del DB di
Active Directory (NTDS.DIT) e dei relativi LogActive Directory (NTDS.DIT) e dei relativi Log
NTDSUTIL – ripristino autoritativoNTDSUTIL – ripristino autoritativo
Avviare il DC in modalità Active Directory Restore ModeAvviare il DC in modalità Active Directory Restore Mode Effettuare un normale restore, ma non riavviare il server a termine Effettuare un normale restore, ma non riavviare il server a termine
operazioneoperazione Avviare un Command Prompt e lanciare Avviare un Command Prompt e lanciare ntdsutilntdsutil Al prompt di ntdsutil, digitare Al prompt di ntdsutil, digitare authoritative restoreauthoritative restore e ENTER e ENTER Per ripristinare l’intero DB digitare Per ripristinare l’intero DB digitare restore database restore database e ENTER e ENTER Per ripristinare una porzione dell’albero della directory, per esempio Per ripristinare una porzione dell’albero della directory, per esempio
una OU, digitare una OU, digitare restore subtree restore subtree subtreeDN subtreeDN e ENTER. e ENTER. Es. per ripristinare la OU Marketing nel dominio contoso.com: Es. per ripristinare la OU Marketing nel dominio contoso.com:
Ntdsutil Ntdsutil authoritative restore authoritative restore restore subtree OU=Marketing,DC=Contoso,DC=Comrestore subtree OU=Marketing,DC=Contoso,DC=Com
Es. per ripristinare uno user account nello user container: Es. per ripristinare uno user account nello user container: NtdsutilNtdsutilauthoritative restoreauthoritative restorerestore subtree CN=Mark,CN=Users,DC=Contoso,DC=Comrestore subtree CN=Mark,CN=Users,DC=Contoso,DC=Com
Per Ulteriori InformazioniPer Ulteriori Informazioni
Help OnlineHelp Online A-Z cmd reference - ntcmds.chmA-Z cmd reference - ntcmds.chm Support tool help - suptools.chm Support tool help - suptools.chm Usare c:\>HH “helpfilename.chm” per Usare c:\>HH “helpfilename.chm” per
avviare da cmd avviare da cmd WSH, VBScript & JScript -WSH, VBScript & JScript -
http://msdn.microsoft.com/scriptinghttp://msdn.microsoft.com/scripting Windows Resource KitWindows Resource Kit
http://www.reskit.comhttp://www.reskit.com Management InfrastructureManagement Infrastructure
httphttp://www.microsoft.com/://www.microsoft.com/managementmanagement