欢迎各位兄弟 发布技术文章

这里的技术是共享的

You are here

runas /user:CONTOSO\adminuser 来打开 hosts 文件,,,,,,runas /user 以本地管理员 打开 hosts 文件 AG chatgpt 有大用 有大大用 有大大大用

runas /user:CONTOSO\adminuser  来打开 hosts 文件

如何使用 runas 以域管理员身份编辑 hosts 文件?

由于 hosts 文件(位于 C:\Windows\System32\drivers\etc\hosts)是受保护的系统文件,普通用户无法直接修改。我们可以通过 runas 命令 以域管理员身份启动编辑器(如 notepad.exe)来修改它。


方法 1:直接使用 runas

步骤 1:打开 CMD(普通用户即可)

cmd
runas /user:CONTOSO\adminuser "notepad C:\Windows\System32\drivers\etc\hosts"
  • 替换 CONTOSO\adminuser 为你的 域管理员账号

  • 执行后,会提示输入密码:

    输入 CONTOSO\adminuser 的密码:
    

步骤 2:输入密码

  • 输入正确的密码后,会以管理员身份打开 notepad 并加载 hosts 文件。


方法 2:提升 UAC 权限(若无法 runas

如果 runas 报错(如 拒绝访问),可以尝试:

选项 1:以管理员身份运行 CMD

  1. 在 CMD 窗口右键 -> 以管理员身份运行

  2. 再运行:

    cmd
    runas /user:CONTOSO\adminuser "notepad C:\Windows\System32\drivers\etc\hosts"

**选项 2:使用 **powershell Start-Process

powershell
Start-Process -FilePath "notepad" -ArgumentList "C:\Windows\System32\drivers\etc\hosts" -Verb RunAs -Credential "CONTOSO\adminuser"
  • 输入密码后,会提升权限打开。


常见问题及解决方案

1. runas 提示 "拒绝访问" 或 "密码错误"

✅ 检查

  • 域名是否正确CONTOSO\adminuser 替换成真实域名)。

  • 账户是否有管理员权限(可以使用 net user adminuser /domain 查询)。

  • 密码是否正确(注意大小写)。

2. notepad 打开空白

✅ 原因

  • UAC 限制 (UAC 就是用户帐户控制),使用 方法 2(提升权限)

  • hosts 文件权限问题(可用 icacls 调整权限)。

3. 加速操作(避免每次输入密码)

保存密码(仅限安全环境使用!)

cmd
runas /user:CONTOSO\adminuser /savecred "notepad C:\Windows\System32\drivers\etc\hosts"
  • 第一次输入密码后,后续无需重复输入(慎用,有安全风险!)。


终极命令(推荐)

cmd
powershell -Command "Start-Process notepad -ArgumentList 'C:\Windows\System32\drivers\etc\hosts' -Verb RunAs -Credential (Get-Credential)"
  • 输入账号密码后,会以管理员方式打开 hosts


总结

方法命令适用场景
runas 直接运行runas /user:域名\管理员 notepad hosts路径需要手动输密码
runas /savecredrunas /user:域名\管理员 /savecred notepad hosts路径免重复输密码(不安全)
PowerShell 提权Start-Process notepad -ArgumentList hosts路径 -Verb RunAs最稳定方式

✅ 推荐使用 Start-Process -Verb RunAs(最稳定)
确保 adminuser 是域管理员,否则可能无权限!


其他提示

  • 如果 无法修改 hosts,请检查 文件是否被锁定 或 权限问题

    cmd
    icacls C:\Windows\System32\drivers\etc\hosts
  • 需要给当前用户 (F) 完全控制权限(谨慎操作):

    cmd
    icacls C:\Windows\System32\drivers\etc\hosts /grant 用户名:F

现在你可以顺利编辑 hosts 文件了!

runas /user 以本地管理员 打开 hosts 文件

以本地管理员身份 (Local Administrator) 修改 hosts 文件

由于 hosts 文件 (C:\Windows\System32\drivers\etc\hosts) 受 系统保护,普通用户无法直接修改。
我们可以通过 runas 命令 提权至 本地管理员 来编辑该文件。


方法 1:直接用 runas

cmd
runas /user:Administrator "notepad C:\Windows\System32\drivers\etc\hosts"
  • Administrator 是 本地管理员账号名称(可能被改成其他名字)。

  • 输入密码后,记事本将以管理员身份运行并打开 hosts 文件。

如果 Administrator 账户不存在?

  1. 检查本地管理员组

    cmd
    net localgroup Administrators
  2. 换成你的管理员账号(如 PC-NAME\AdminUser):

    cmd
    runas /user:PC-NAME\AdminUser "notepad C:\Windows\System32\drivers\etc\hosts"

方法 2:以管理员身份运行 CMD(不用输密码)

如果本地管理员账户密码未知,可以直接 右键 CMD -> 以管理员身份运行,然后:

cmd
notepad C:\Windows\System32\drivers\etc\hosts
  • 适用于 当前账户已有管理员权限但仍提示"拒绝访问" 的情况。


方法 3:使用 psexec 提权

如果 runas 失败(如 UAC 拦截),可以用 psexec(需下载 Sysinternals Suite):

cmd
psexec -i -s notepad C:\Windows\System32\drivers\etc\hosts
  • -i -s = 以 SYSTEM 权限运行(比管理员权限更高)。

  • psexec 需管理员权限运行。


方法 4:修改 hosts 文件权限(永久)

如果不想每次都提权,可直接修改 hosts 文件的权限:

cmd
icacls C:\Windows\System32\drivers\etc\hosts /grant Users:M
  • /grant Users:M = 给普通用户 Users 组 写权限 (M = Modify)。

  • 慎用!这会降低系统安全性。


常见问题及解决方案

错误原因解决方案
拒绝访问权限不足runas /user:Administrator 或 右键 CMD -> 以管理员身份运行
找不到文件路径错误确保路径是 C:\Windows\System32\drivers\etc\hosts
密码错误账号或密码错误检查 net user 或改用管理员权限运行 CMD
记事本打开后空白UAC 限制方法 3 (psexec) 或 方法 4 (改权限)

最终推荐命令

✅ 最稳定做法(手动输密码)

cmd
runas /user:Administrator "notepad C:\Windows\System32\drivers\etc\hosts"

✅ 不想输密码(管理员模式)

  1. Win + X → Windows Terminal (管理员)

  2. 运行:

    cmd
    notepad C:\Windows\System32\drivers\etc\hosts

现在可以使用管理员身份编辑 hosts 文件了!


savecred 是什么简写

在 Windows 命令 runas /savecred 中:

savecred 是 "Save Credentials"(保存凭据)的简写


详细解释

1. 功能

  • 允许系统缓存用户输入的密码(存储在 Windows 凭据管理器)

  • 下次使用 runas 时无需重复输入密码

2. 使用场景

cmd
runas /user:Administrator /savecred "notepad C:\Windows\System32\drivers\etc\hosts"
  • 首次运行需输入密码

  • 后续执行相同命令时自动调用缓存的密码

3. 存储位置

  • 密码保存在:
    控制面板 → 凭据管理器 → Windows 凭据
    (条目名称为 WindowsLive:target=runas/user:username


安全警告

优点风险
避免重复输密码密码以明文存储(可被恶意程序读取)
方便自动化脚本任何用户都能调用缓存的凭据

❗ 建议仅用于测试环境,生产环境中应禁用此功能。


如何删除已保存的凭据?

  1. 打开 control.exe /name Microsoft.CredentialManager

  2. 在 Windows 凭据 选项卡中删除相关条目

或通过命令强制清除:

cmd
cmdkey /delete:runas/user:username

附:微软官方文档说明

/savecred 参数会降低安全性,应谨慎使用
—— Microsoft Docs: runas 命令



普通分类: