我正在 Windows 2008 服务器 (R2) 上设置 FTP 服务器。
一切似乎都安装正确,但我在使用 FTP 客户端登录到我的 FTP 服务器时遇到问题。
我可以远程桌面到服务器,通过 DOS 命令我可以很容易地登录。
但是,如果我发出“DIR”之类的命令,它会挂起: 150 Opening ASCII mode data connection。
我研究和阅读的所有内容都指向防火墙端口和/或被动/主动模式设置。
这就是困扰我的地方...如果我使用 DOS FTP 命令,只有当我使用“localhost”作为我的地址时,我才能登录并使用“DIR”命令。
如果我指定了完整的 FTP URL,则会出现挂起错误。
如果我指定“localhost”URL,则不会收到错误消息。
这让我相信它是防火墙问题(甚至是 IIS7 问题?)但我不确定我需要打开哪些端口?
我在 Windows 防火墙上打开了端口 20、21。我还在我的 AWS (Amazon) 防火墙上打开了这些端口。
我相信我的 FTP 客户端正在使用一些可能被我的两个防火墙之一阻止的远程端口号。我使用网络监控工具尝试查看它调用的端口,但我无法弄清楚。
任何想法,提示,技巧,帮助?
我编写了一个 .cmd 文件,它调用了十个不同的 .exe 文件。我可以在我的服务器上本地运行这个 .cmd 文件,它运行良好。
当我将 [gpedit.msc](组策略编辑器)用于“计算机配置,Windows 设置”并将我的 .cmd 文件设置为启动脚本时,似乎没问题。
当我重新启动服务器时,从不调用启动脚本。我不明白为什么。我的目标是每次启动服务器时都执行此脚本。(不是登录)。
我正在测试的这台服务器不是域控制器。我不确定这是否与问题有关?帮助?
ps 这些是 EC2 Amazon 云服务器。我身边一阵疼痛。
scripting windows-server-2008 startup group-policy amazon-ec2
我目前有一个组策略启动脚本(CMD 文件)。它按预期在启动期间运行,但脚本调用的程序没有 UI。
例如,假设我将此命令作为我的启动脚本:
rundll32 shell32.dll,ShellExec_RunDLL "C:\Windows\System32\notepad.exe"
echo foo > C:\foo.txt
Run Code Online (Sandbox Code Playgroud)
^ 这会调用“记事本”来运行,并将输出写入文本文件 (foo.txt)。很简单。当组策略运行此脚本时,将生成文本文件并运行记事本。问题是记事本没有用户界面。我可以告诉它正在运行的唯一方法是通过任务管理器/进程。我已经验证它可以工作,但我需要记事本在运行时显示在我的任务栏中。
...根据此处的 TechNet/Microsoft:与 Microsoft 分配计算机启动脚本
启动脚本作为本地系统运行,并且它们具有与能够作为本地系统运行相关联的全部权限。
我的问题是我真的需要记事本程序 UI 来显示,并且在“本地系统”下运行时似乎无法做到这一点。
我想指出的是,我也在控制面板/管理工具下的“计划任务”中尝试过这个。我有相同的结果和相同的情况,我的脚本成功运行但从未显示记事本 UI。我也愿意接受使用 Task Scheduler 或不同方法的建议。谢谢!
windows-server-2008 iis-7 user-management scheduled-task group-policy