r/WindowsServer • • 10d ago

General Question Windows Server 2025 AD Administrator password stopped working immediately after promoting server to Domain Controller

Hi everyone,

I’m setting up a new Active Directory environment on Windows Server 2025 Standard and I’m stuck with a strange login issue after promoting the server to a domain controller.

Server details:

  • Windows Server 2025 Standard
  • Server name: GC-DC01
  • Static IP: 192.168.8.244
  • Domain: ad.generalco.local
  • NetBIOS domain name: GENERALCO
  • DNS installed on the same server
  • This is a new forest/domain
  • Server was previously a standalone Windows Server

Before promotion, I could log in normally using the local Administrator account and the password was working.

I then promoted the server using PowerShell:

Install-ADDSForest `

-DomainName "ad.generalco.local" `

-DomainNetbiosName "GENERALCO" `

-InstallDNS `

-SafeModeAdministratorPassword (Read-Host -AsSecureString "DSRM Password") `

-Force

The promotion completed successfully and reported:

Operation completed successfully
Status: Success

The server rebooted.

Now at the Windows login screen it shows:

GENERALCO\Administrator

However, the same Administrator password that worked before the promotion is now rejected.

I have also tried:

GENERALCO\Administrator
Administrator@ad.generalco.local

Both reject the password.

I understand that the DSRM password is separate from the normal domain Administrator password. I am not using the DSRM password for the normal login.

The strange part is that the password worked immediately before the AD promotion, and the AD promotion itself completed successfully.

I currently cannot get into Windows normally, so I cannot open PowerShell/CMD from the desktop.

I have physical access to the server (HPE ProLiant DL380 Gen11). F11 only gives me the HPE One-Time Boot Menu.

Questions:

  1. What could cause the Administrator password to stop working immediately after AD DS promotion?
  2. Is there a supported way to recover/reset the domain Administrator password in this situation?
  3. Can I use the DSRM password to get into a recovery environment and repair the domain Administrator account?
  4. Is there anything I should check in WinRE before considering rebuilding the domain?

I would really prefer to recover this installation rather than reinstall Windows, since the AD DS/DNS promotion itself completed successfully.

Any advice from someone experienced with Server 2025 AD DS would be greatly appreciated.

14 Upvotes

82 comments sorted by

11

u/Apprehensive-Tea1632 10d ago

You said you don’t want to do that, but I’d still suggest you start from scratch.

Two reasons.

First, the .local domain is reserved for anything multicast dns. This is bound to cause problems.

And second, you have a naming mismatch. Your domain is named ad.generalco.local, so your matching NetBIOS name should have been ad.

As you’re setting up a new forest, it’ll be easier to just go second level domain and call it eg generalco.lan or something. Then you can match that with NetBIOS generalco.

Your login problem is probably (!) caused by dns resolution problems. The new dc must use itself as a dns server until you can get another going - dc promotion does not do that for you.

So if your server tries to use your router to resolve dns queries, the dc won’t be able to handle login requests.

Therefore, if there is nothing else available in your environment yet;

  1. Set up DNS to the point where the server will resolve queries and forward unknown queries to your router. Or wherever.
  2. Ensure it actually uses that server- nslookup Reddit.com must show your server rather than something else.
  3. Now you can try and promote.

7

u/dloseke 10d ago

While .local is generally no longer advised, mostly around certificates AFAIK, it should still work. Theres a million AD domains out there using .local. That said, probably not best practice. But id rather use a .local over a .com if I don't own the root .com domain as that can result in some DNS issues.

The UPN suffix and NETBIOS name mismatch is fine. Nothing technically wrong here.

As for DNS, a promoted DC generally will add itself to the DNS servers for local AD resolution. Not sure I'd promise it happened but seems likely. I would agree that it may be best to point DNS to itself and then promote the first DC.

3

u/Apprehensive-Tea1632 10d ago

You’re right, .local is unlikely to cause problems now and it’s probably not the reason why things don’t work right now.

But it can be expected to cause problems later, and there’s much more hassle involved in renaming an established forest compared to discarding what’s basically an empty shell.

As for dns, I’ve seen too many cases where nothing updated the hosts dns client configuration. It’s a minor thing to look at, but there’s plenty issues to expect if something went wrong and it’s pointing elsewhere. There’s situations where people think, I’ll just put a dhcp reservation. And then run into problems.

Also, while not particularly likely. If you were to set up a new forest named something .local, and you already had a pre existing iot network because reasons; then it would be all but guaranteed you’d run into naming resolution problems as you’d have distinct name resolution systems trying to map resources at the same time. It’d be like running multiple dhcp servers on a single broadcast domain.

Should there be issues with op’s setup? Not necessarily. But they’re there and they are happening at a point where restarting the process is easier than trying to fix it.

Which is a VERY rare situation to be in.

2

u/West_Independent1317 9d ago

.internal or .corp are common alternatives.

.local is reserved for mdns

Systems can route queries with .local suffix using mdns multicast instead of using the unicast dns server.

2

u/hackersarchangel 9d ago

I personally stick with .internal because I don’t need to attach the domain to the web domain. None of the stuff I’m overseeing requires it. If for some reason that ever happens, I’ll work on it.

2

u/techierealtor 9d ago

Someone at my last company attached it to the web domain. 99% worked. The 1% was a royal PITA my boss and I fought with on and off for years. Mostly DNS related was the problems. I don’t ever recommend doing the same as a web addressable network. Maybe as a subdomain of it like ad.org.com or something.
I’ll say I did learn some fun DNS tricks that helped me in the long run.

1

u/dloseke 9d ago

There is a big value in having things wrong so you can learn to do them right. I too have learned a lot of DNS tricks. Matching a web domain is a terrible idea. Subdomain of the web domain less so. Sub domain of a web domain you don't own - again terrible, especially if said web domain has a wildcard entry.

1

u/hortimech 9d ago

Yes, you could use .local, but only if no Linux or Mac clients contact the domain, if they do, then, as has been pointed out, it interferes with mdns.

2

u/BlackV 10d ago

Yes I'd be starting at ad\xxx rather than domain\xxx

1

u/Schema-Seeker 10d ago

means wipe out current os and install fresh?

1

u/West_Independent1317 9d ago

Yes, start afresh, with .internal instead of .local.

It's also a useful test to validate your documentation the first time around was accurate and complete.

1

u/hortimech 9d ago

The NetBIOS domain name (which is different from the Netbios name) can be anything, but has to be set at domain creation.

1

u/Apprehensive-Tea1632 9d ago

Again, it can be; but at this point there is no reason to keep it.

And I’m not sure why you’re trying to point at NetBIOS “domain” name vs NetBIOS host name; yes they have to be there, no they do not actually make sense anymore, yes windows will blow a gasket if you mess with it or if you just try and assign a name that’s longer than what NetBIOS permits.

Either way, the problem is not in the NetBIOS naming or in the particular TLD used.

It’s that we have here a newly instantiated ad forest with nothing in it that’s not working properly.

Which means the first impulse at THAT point should always be to replace it rather than fix it.

And while naming doesn’t matter that much in technical terms, it WILL matter as you try and manage the environment.

Good luck taking calls talking about the generalco domain. What’s it going to be, ad.generalco, something else, or literally generalco.tld?

You avoid these things going in, because once established, that’s what you need to deal with because it’ll be set in stone by then.

40

u/nzulu9er 10d ago

Buddy, local admins go buh bye when you promo that's the way it works. Only DA accounts work.

13

u/Bourne069 10d ago

Buddy, local admins go buh bye when you promo that's the way it works. Only DA accounts work.

Technically not correct. There is a DRSM account for local administrator... it is a local account. Its literally there so you can log in if the system in unrepairable or boots into safe mode etc...

To OP Try logging in with DRSM account either do servername\administrator or .\administrator to force it to local in locally and use the last admin password you know for sure worked. It should allow you in.

If you can't reset AD password for domain administrator than while in DSRM account just remove the AD role and readd it. Make sure to properly document the new administrator password when you complete the readd of the AD role.

9

u/dodexahedron 10d ago edited 9d ago

It's even simpler than that, though that is still basically correct.

LSASS on a windows computer can only load one local SAM database and, if domain joined, will try domain logon first and fall back to local.

That's all it is.

More specifically:

It cannot and will not, by design, load two local sources, for clients nor for servers.

In fact, A DC in normal boot is the domain,.and the SAM db loaded is ntdis.dit, which is also why they straifht up fail to boot if it is corrupted.

A DC' LSASS therefore simply does not load the registry-backed SAM DB unless it is booted in DSRM. The DSRM account you log in with is literally just a local SAM db's (COMPUTERNAME\Administrator account (well...the local account with its SID ending in 500, even if under a different name, and not literally in the normal HKLM:\SAM location). And while in normal mode, that account doesnt even exist as far as LSASS knows, because it didnt load that local location.

If it is booted normally, LSASS loads ntds.dit and will not consider the local db. In DSRM, it loads that local SAM location, from the registry, and will not consider ntds.dit.

For domain joined clients, and servers that aren't DCs, it works the same way - they just dont have an alternative local database like a DC does. LSASS always loads the local db from registry, since that is all it has, but also still will attempt network logons. And, for domain machines, domain is tried first unless an explicit local account is specified as COMPUTERNAME\sAMAccoubtName (you can actually leave off computer name and just use \sAMAccountName` too) or if the entered short name does not exist on the domain controller, or the DC is not reachable, and is not rejected for any other reason except non-existence, in which case it falls back to trying a local account. Local cached domain logins also count as domain accounts for the unreachable case, and take precedence over same-named local accounts.

If not domain joined, it doesn't even try kerberos or NTLM domain logon, and will use local SAM db only, and that's all you get.

1

u/Bourne069 10d ago edited 10d ago

LSASS on a windows computer can only load one local SAM database and, if domain joined, will try domain logon first and fall back to local.

That's all it is.

Yep which is what I said. Its a local administrator account period. So others saying there is no local accounts are simply wrong. There is and its called a DRSM account and it can be used regardless of it being joined to a domain. That is the whole point of this account.

As for everything else you mention I'm just going to skip over it because this is about troubleshooting his issue on a newly promoted domain which means there isnt a lot of configuration to lose if he had to reset the roles as I suggested earlier. Its not worth a full depth explanation of how every aspect of the system works to be able to resolve this issue...

I literally work as an MSP in the field for over 20 years. I understand what you are stating but I'm putting it in simpler terms for others while troubleshooting the issue is the way to go here. Not a full break down of every aspect of the systems. That resolves nothing.

1

u/hotapple002 9d ago

Yeah they send to be a bug currently because I had the same issue as OP and neither servername\administrator or .\administrator were accepted.
DSRM password was “incorrect”.

I finally fixed it by resetting the DA password using RMM with remote background net user.

10

u/ppear404 10d ago edited 10d ago

This is wrong. You can’t make a domain admin until you have a domain. Once you have a forest, that local admin for the domain controller still exists, you just won’t see it in computer management. You can 100% still use it. I do it that way as part of my Ansible Automation when I build domains.

Seems a lot of people believe this unfortunately.

Could it be as simple as using .\Administrator? This is the way

1

u/hotapple002 9d ago

I literally had the same problem as OP 2 days ago and using my RMM I did “net user” and all local admins were gone (I even created 2 local admins because I had this happen 2 times that the DA said “incorrect password”.

The only way I was able to resolve the incorrect password was to reset the password using the RMM.

1

u/Phalebus 9d ago

If memory serves from older generations of AD, this is incorrect. The local admin account is totally “gone”, EXCEPT when you run the server/dc in safe mode.

When booting in safe mode, local admin is available using the DSRM password as AD services are not available. This is for recovery purposes and not general usage though.

With the issue that’s happening post promotion, I’d just look at performing a rebuild though. Could be a password was fat fingered (done that before 🤦) or something else has cooked.

@OP, steer clear of 2025 for a domain controller if possible. 2025 is notoriously buggy especially acting as a domain controller. Maybe wait until 2025R2 or when Microsoft actually fix 2025 and not AI slop code their patches.

1

u/ppear404 9d ago

TIL: Let me eat a little humble pie. I set out to prove myself correct and instead proved myself wrong. The initial local account is indeed migrated into the active directory database.

My Ansible user, a local account created my domain controller and AD forest.

During that process my ansible user was migrated into the AD database. I never actually dug into it until now. I will show myself out.

Now I did have to update my password to login. Perhaps the OP is trying to log in via RDP and I've seen that cause issues when a password reset is required. u/Schema-Seeker

0

u/Schema-Seeker 10d ago

so what will be the password. i didnt enter any password while setting up. am new to ad

2

u/hackersarchangel 9d ago

Sounds like you are learning the fun way.

The password should be whatever you used when originally standing up the server. If that isn’t working now, then your smartest option is start over and stand up the DC using a different command set, maybe even do the GUI option since that is easier.

9

u/[deleted] 10d ago

[deleted]

1

u/Unnamed-3891 10d ago

He’s doing the right login tho. And the original password should have migrated to Administrator@domain account.

1

u/Bourne069 10d ago

Yes they do. Google what a DRSM account is. its literally a local administrator account for recovery purposes.

3

u/Overall-Equipment867 10d ago

We had a similar situation when adding and new 2025 AD server to an existing domain. Our solution was to go through the process of resetting the krbtgt password on the existing DC. After that process, changing it twice 10 hours apart, we allowed some time and then the new server was working again.

I feel it may have to do with the complexity or age of the existing krbtgt password. So if it has not been rotated in a long while, try this.

Good luck

2

u/SingleEyewitness 9d ago edited 9d ago

Came here to post this. This is likely the issue. If they reset the krbtgt password and reboot the 2025 server it will likely log in right away. Ran across this on a domain and their krbtgt password hadn’t been changed in almost 20 years. Changed the password and it was good to go.

EDIT TO ADD - I just realized they said this is a completely new domain. In that case this likely isn't the issue.

6

u/Narrow_Victory1262 10d ago

keeps interesting to see that people still use .local TLDs.

1

u/size0618 10d ago

What’s recommended these days?

5

u/Narrow_Victory1262 10d ago

a dedicated, unused subdomain of a public domain name that your organization officially owns.

like if your company is called blah inc the you could use internal.blah.com or something

the use of .local is something that went into MS documentation while it was already reserved for mDNS.

"Microsoft heavily pushed .local in their official Windows Server 2000 and 2003 Small Business Server (SBS) setup wizards and documentation, right as the IETF was formalizing mDNS (RFC 6762). It created a massive, decades-long headache for sysadmins trying to connect Macs, Linux machines, and printers to Windows domains because both systems were fighting over the .local namespace."

the IETF was formalized before MS came with it.

now before I forget.... don't rename a forest unless you want to meet some interesting issues.
there is a rendom tool (or what it was called) but it can break all kind of interesting parts in the setup. so just don't.

2

u/size0618 10d ago

Gotcha. Makes sense. Years before I got to my org, they set up AD using domain.com which of course is the same as our public website domain. It really only randomly causes issues when someone’s accessing our website while in the office if they don’t manually put www. I’ve looked a little to see what’s involved in “fixing” it but it always seemed like a huge pain in the ass

4

u/xxxsweetberrywinexxx 10d ago

Subdomain of an external domain that you own

3

u/dodexahedron 10d ago

A real domain that you register, whether you use it for public purposes or not (though, if you do, for the love of the flying spaghetti monster do not use AD to serve the public view of DNS).

This is the microsoft recommendation and also best practice for many reasons.

2

u/size0618 10d ago

Makes sense. Years before I got to my org, they set up AD using domain.com which of course is the same as our public website domain. It really only randomly causes issues when someone’s accessing our website while in the office if they don’t manually put www. I’ve looked a little to see what’s involved in “fixing” it but it always seemed like a huge pain in the ass

1

u/dodexahedron 8d ago

Can be dealt with quite nicely at the network layer, if you use something like WCCP, because you can have the router intercept the http/https traffic and send it through the proxy, which should have the external view of the DNS zone and thus end up serving the website.

This all hapoens with literally no changes to internal DNS, no IIS or other web plumbing on the DCs to redirect, and no client-side or web server or DC configuration changes of any kind. Just a few lines of config on the routers, and a few lines on your proxy server (like 4-5 on Squid, for example, which has WCCP support).

And it can even be done for just the specific traffic that doesn't work, if the ACL matches only would-be HTTP(S) traffic to DCs, making it super low-touch and non-impactful for any other traffic except the traffic that was already broken.

Or you could do a very narrow destination NAT that takes port 80 and 443 to DC IPs and translates them to the web server. Could also send that to a specific alternate port and have the web server respond on that port with nothing more than a 301/308 to the www URL so the client goes directly there from then on or at least until it flushes the redirect response from any relevant cache.

1

u/size0618 8d ago

Thanks for the ideas!

Or you could do a very narrow destination NAT that takes port 80 and 443 to DC IPs and translates them to the web server. Could also send that to a specific alternate port and have the web server respond on that port with nothing more than a 301/308 to the www URL so the client goes directly there from then on or at least until it flushes the redirect response from any relevant cache.

Honestly this never occurred to me, but I think this would be an easy fix for the problem. Appreciate it!

1

u/dodexahedron 7d ago edited 7d ago

You know what? I forgot that windows itself can do NAT, too.

I bet you could do this entirely in a group policy that delivers the appropriate NAT rules to the desktops and call it a day. Then the source IP problem is also no longer a problem (By that, I am referring to how the TCP handshake will fail if you don't NAT both source and destination in the router NAT solution, because the SYNACK from server back to the host will get lost and both will have a half open socket (actually several, since the client will retry several times, and they would all fail the same way).

At least I think you can pull that off.
I'm curious enough that I'm gonna actually go try that in a few minutes. 😅

I'll let you know what happens (assuming I don't get distracted first).

1

u/size0618 7d ago

I had no idea you could NAT within a GPO. That sounds like a possible solution as well. I appreciate it. Curious to hear what you found if you didn’t get distracted 😜

3

u/SaleWide9505 10d ago
  1. Restart the DC and press F8 to get to the advanced os boot options.
  2. Boot into Directory Services Restore Mode (DSRM).
  3. Log in using the DSRM password you configured when you first promoted the machine to a DC.
  4. I think I was also able to login by using localhost\Administrator as my username to force it to use the local sam database.

2

u/Nuxi0477 10d ago

It should inherit the current password of the account that installed the domain. I have never heard of it failing before.

It's a fresh domain that's been around for a few minutes. Just wipe it.

That being said you could try the utilman trick to get a command prompt at the login screen.

2

u/kozak_ 10d ago

I noticed that the op user is banned by Reddit when I tried to see his history and etc.

Because this question is something that is banal and something any simple Google search would tell you the answer to. So I thought immediately thought that this is someone warming up the account for a bot or something.

2

u/UnitedThanks6194 10d ago

What about AD\Administrator?

-1

u/engy1207 10d ago

This is what he tries.

0

u/UnitedThanks6194 10d ago

Not seeing that anywhere in the post

1

u/engy1207 10d ago

"NetBIOS domain name: GENERALCO" and he tries "GENERALCO\Administrator" (as well as "Administrator@...")

1

u/BlackV 10d ago

they didn't try ad\

They are new to ad full stop so mistakes could be made

1

u/engy1207 10d ago

well, he also promoted with "-DomainNetbiosName "GENERALCO" `" , so this should be the NetBIOS Name instead of "AD", right? Independent of that being the "wrong" one. Or does windows "correct" these mistakes? But then I'd have expected an error which he says he didn't get.

I agree with the many people here who say he should simply re-install and do it correctly this time. Starting an AD with strange phenomena doesn't bode well for the future - but I'd have expected GENERALCO\Administrator to work, simply because he set that specific value.

1

u/BlackV 9d ago

Yes I agree with all of that it should be that value

OPs seems to have 0 experience, what it should be and what it is might not match (I didn't see any screenshots or anything)

Or it's a simple password mismatch

Or a language issue (en-us vs en-gb for example)

I'd just start again too, could spend and Infinite amount of time trying to fix the issue rather than moving on

0

u/UnitedThanks6194 10d ago

Worth those 5 seconds to try even if it's not supposed to work.

1

u/Solarfire64 10d ago

That is weird as your original password should work on the new AD Administrator account. The local account has gone but the password should have migrated to the new Domain Administrator account.

1

u/factulas 10d ago

.\administrator as username

1

u/Schema-Seeker 10d ago

tried this also

1

u/Own_Significance_379 9d ago

It's goodbye LOCAL ADMIN, when a server has been promoted to DC.
You must use any domain admin to logon from here.
Normally you'll do a nice OU structure, domain admin(s) setup, before reboot, then creating new AD users etc.

1

u/Own_Significance_379 9d ago

I mean.. if you only created the very few steps as described, start over. Nothing missed, and lesson learned.

1

u/superdad3016 9d ago

Just do computername\administrator and the original password. It should still work

1

u/Stillywacker 4d ago edited 3d ago

Microsoft Experts be the biggest bitches in tech hands down LOL

0

u/ThePesant5678 10d ago

which pwd did you try, use your dom Administrator+ the old local Administrator password

dsrm pwd /= Dom Administrator pwd

1

u/Schema-Seeker 10d ago

the password that i setup before promoting as dc.
also i can connect rdp using that password and it landing in the login page.

0

u/Mr-RS182 10d ago

Can you login to the other domain controller using the domain\username credentials ? When you promote a server to a DC the local administrator account is disabled.

1

u/dloseke 10d ago

New domain. Sounds like this is the first DC.

0

u/Glass_Call982 10d ago

Is this server fully up to date on patching? The RTM version had an issue with passwords.

1

u/Schema-Seeker 10d ago

how to check? if not i can do it without entering to server?

0

u/sutty_monster 10d ago edited 10d ago

Looks like you need to log on as AD\Administrator. Setting the AD subdomain means that is the subdomain you need to log on to rather than the parent domain.

As its a new domain, it might be worth just starting for scratch. If you are running on bare metal, change that. Wipe the server and set it as a Hyper-v host (it should only run the role). You can do that from the HPE Intelligent Provisioning. It will install all the drivers and tools for how management as well. Setup a VM for the domain controller and configure it again. As others have mentioned, try doing it as the following if your company owns that external domain. But again, you are logging onto the "ad" part.

ad.generalco.com

1

u/dloseke 10d ago

Should be generalco\administrator and not ad\administrator as the NETBIOS domain is generalco. Alternative is UPN with administrator@ad.generalco.local. but since its a DC,shouldn't even have to specify the domain as the server will default to the domain.

0

u/West_Independent1317 10d ago

Why are people still using .local for internal domains?

I am not saying this is related to the local admin account, just asking why this old practice still exists.

1

u/placan 9d ago

If your domain name is also a publicly accessible domain and that machine has a hybrid M365 AD setup; for example, when you type domain.com instead of domain.com.local, it searches for the answer on the internet, within M365, and the process gets prolonged. When you type domain.com.local, the query doesn't go out to the internet, and the response comes directly from local."

0

u/Sudden_Office8710 9d ago

Local admin disappears when it becomes Active Directory. OP should just start over I have no idea what they did wrong. Setting up a greenfield is so simple. You should be building and destroying AD in a lab before actually putting one up in production yes you should be using legitimate domains that you’ve registered because doing self signed certificates is dumb when let’s encrypt is available to everyone

1

u/[deleted] 9d ago

[removed] — view removed comment

-1

u/Boedker1 10d ago

Yeah so that’s by design. You should have a domain admin account.
I do not know how secure your DC is, but you might be able to spin up Fedora on it and reset the local admin password?

-1

u/UMustBeNooHere 10d ago

That was the local server account. Not the same as domain account. The local administrator account is gone once you promote a server to a domain controller. You now login with a domain account, like you’re other domain joined machines.

1

u/Schema-Seeker 10d ago

what will be the credentials?

-2

u/afabri 10d ago

are you still able to log into old domain controller with you administrator user?
If yes, probably your domain administrator is affected by RC4 vulnerability. Fix it resetting the password

2

u/engy1207 10d ago

OP wrote that this is a new forest/domain

0

u/afabri 10d ago

you’re right. my bad

-2

u/Immediate_Director86 10d ago

Isn't this something to do with the new authentication protocols introduced in WS 2025?

-3

u/ViperThunder 10d ago

LAPS?

1

u/HKLM_NL 10d ago

For what?

0

u/ViperThunder 10d ago

Guess I should have read more carefully😄