Portada

martes, 22 de junio de 2010

Migrar Usuarios a de Windows 2000 Server a 2003 Server.

No fue simple, me diran usa active directory, pero en este caso no hay.
y tengo varios usuarios y muchas claves, claves que desconosco. complejo, pero se puede.
tratere de explicarlo lo que mas pueda.

son 3 Etapas :



1 .- Bajar un programa que se llama "Copypwd", desde  http://www.systemtools.com/free.htm

cuando esta abajo ejecutarlo de esta manera entrar a una venta de D.O.S. y el el mismo directorio donde estan los archivos de Copypwd ejecutar ta cual como aparece:

 CopyPwd DUMP >copypwd.txt

es importate el copypwd.txt por que sera el que pasaremos y que contendra todos los hash de las contraseñas de los users (no le cambien el nombre).


2 .- Necesito generar un listado de todos los usuarios, ya que arriba lo que obtuvimos fueron las contraseñas solamente, esto lo hacemos con vbscript



usamos el siguinete script user.vbs



--------------------------------------------------------------

Sub ListUsers( strDomain )

Set objComputer = GetObject("WinNT://" & strDomain )

objComputer.Filter = Array( "User" )

For Each objUser In objComputer

WScript.Echo "net user /add /expires:never /passwordchg:no " & objUser.Name& " " & "abcd1234"

Next

End Sub



Dim strDomain



ListUsers( "localhost" )



--------------------------------------------------------------

Nota:  donde dice: ListUsers("localhost"), seguro no les va a funcionar el secreto esta en cambiarlo por la ip del server en que estan ejecutando el comando.
de esta manera ahora ejecutan el script en una ventana de D.O.S;


cscript /nologo user.vbs >listado.txt


ya tenemos un listado de todos los usuarios pero con una password por default que en este caso es "abcd1234"

3 .- Esta parte es la mas simple, copiar todos los archivos y los generados en especial "copypwd.txt" y "listado.txt"  al nuevo server .


como se procede esto:

cambiamos la extension de listado.txt a listado.bat

OJO ..saquen los usuarios que no deben pasarse ejemplo administrador o algo asi...


ejecutamos el bat y nos creara todos los usuarios con password por defecto y con algunas condiciones de configuracion.



despues de esto hay que restaurar los usuarios con sus password



como hacemos esto de la siguiente forma



CopyPwd SET


Nota: Esto no se puede hacer a traves de escritorio remoto ya que aunque estes con la cuenta de administrador, no consigues privilegios a nivel de maquina asi que debes hacerlo a sobre el equipo, esto lo sabes cuando salga el mensaje "CreateRemoteThread failed: 8"
ojo ... esto tomara el archivo copypwd.txt que trajimos como parametro de creacion...



despues de un listado de usuarios se crearan ...



y listo ...



usuarios migrados...





ALERTA de premio ... esto tiene un pequeño detalle



los usuarios al crearse aveces no desabilitan que la password expire ...problema ... pero eso tiene solucion



veanlo en mi Arreglar usuarios de expire password
****************************************************************************

este script soluciona el problema pero necesitas solo un listado de los usuarios






On Error Resume Next



'para asignar el valor de desactivado

Const ADS_UF_DONT_EXPIRE_PASSWD = &h10000



'listado de usuarios a los que le aplicate la correcion

fspec="listado.txt"



'el server

strDomainOrWorkgroup = "WORKGROUP"

strComputer = "thor"





set fso=createobject("scripting.filesystemobject")



set ots=fso.opentextfile(fspec)

Do while not ots.atendofstream

'lee el usuario

strUser=ots.readline

'lo cargo para poder modificarlo



Set objUser = GetObject("WinNT://" & strDomainOrWorkgroup & "/" & strComputer & "/" & strUser & ",User")



objUserFlags = objUser.Get("UserFlags")

objPasswordExpirationFlag = objUserFlags OR ADS_UF_DONT_EXPIRE_PASSWD

objUser.Put "userFlags", objPasswordExpirationFlag

objUser.SetInfo

objGroup.Add(objUser.ADsPath)

WScript.Echo "Procesando :" & strUser

Loop

ots.close



set ots=nothing

set fso=nothing



No hay comentarios:

Publicar un comentario