在CygWin中使用(自动化)SUDO的实用(接近经典Linux的)方式
能够sudo在CygWin中使用命令是有用的,并且比打开提升的Shell 更快: Luis@Kenobi /cygdrive/c/Users/Luis $ net user /add TestUser System error 5. Access denied. Luis@Kenobi /cygdrive/c/Users/Luis $ sudo net user /add TestUser Command completed successfully. 如上所示,您也可以像Linux一样运行Windows命令/脚本。对我来说是整洁的;在远程(SSH)控制台上工作,并允许组合Windows / Linux命令。因此,能够执行管理任务几乎是必须的。 但是SUDO for CygWin项目的行为可能很危险:它用作服务器/客户端体系结构,实际上,客户端(sudo)在内部(而不是在外部监听)向服务器(sudoserver.py)发送命令请求。本地计算机)端口7070TCP,无需进行用户或权限检查,因此登录到计算机上的任何人(甚至是非特权用户)都可以执行admin(CygWin或Windows)外壳命令或脚本(CygWin或Windows)。如果保留建议的作者方法,则 问题会变得更糟:将“ sudoserver.py”注册为服务,因此它将永久运行。 因此,为了使事情更安全(并非完全),我这样做: 1.-在管理外壳上执行“ sudoserver.py”。 2.-在另一个CygWin shell上执行我的“ sudo”命令。 3.-关闭(Ctrl + C)“ sudoserver.py”和admin shell。 有点讨厌。我正在使用.cmd带有分配的热键的文件来解决该问题,该文件运行“ sudoserver.py”,在我完成管理工作后将其关闭(手动),但仍远未达到 Linux上经典的“ sudo”可用性。 伟大而实用的方法是: **自动打开“ …