Наверное, самый часто используемый скрипт в жизни системного администратора — скрипт, подключающий сетевые диски пользователям. На просторах Интернета их великое множество, но периодически они не подходят под требования. У меня как раз возник такой случай и пришлось написать свой.
Скрипт был необходим для одной специализированной программы, которая использует как общие диски для всех пользователей, так и персональные для каждого, причем персональные диски называются по собственному алгоритму программы и как-то объединить их вроде \\server\%username% — нельзя.
Подключать диски через Group Policy Preferences тоже нельзя, т.к. добавлять/удалять/изменять набор сетевых дисков (например при появлении нового сотрудника) должен низкоквалифицированный персонал, которому делать это в оснастке gpmc.msc будет сложновато.
В итоге я решил сделать текстовый файл с конфигурацией сетевых дисков, дать на него права на редактирование нужным сотрудникам и обрабатывать его скриптом.
Еще немаловажным минусом во всех скриптах является отсутствие логов. В моем скрипте все пишется в лог подробно-преподробно. Читать далее…
Если Вы используете для доступа в Интернет ISA-сервер и Вам необходимо зайти на сайт про ssl на нестандартный порт (например https://microsoft.com:9999), то у Вас выскочит ошибка:
Error Code: 502 Proxy Error. The specified Secure Sockets Layer (SSL) port is not allowed. ISA Server is not configured to allow SSL requests from this port. Most Web browsers use port 443 for SSL requests. (12204)
Происходит это потому, что в ISA-сервере по-умолчанию сконфигурирован только один SSL порт — 443. Для добавления других портов требуется скрипт.
В Интернете есть куча готовых, но как говорится свой лучше :)
Вот собственно и он:
newPort = 9999
set isa=CreateObject("FPC.Root")
set tprange=isa.GetContainingArray.ArrayPolicy.WebProxy.TunnelPortRanges
set tmp=tprange.AddRange("SSL " & newPort, newPort, newPort)
tprange.Save
wscript.echo "Done"
count = tprange.count
wscript.echo "Rule's count = " & count
For iCounter = 1 to count
set curItem = tprange.item(iCounter)
WScript.Echo "Rule " & iCounter & " = " & curItem.Name & " [" & curItem.TunnelLowPort & "-" & curItem.TunnelHighPort & "]"
Next
На выходе получаем список уже заведенных портов:
C:\Documents and Settings\adminyb\Desktop>cscript New_SSL_Port.vbs
Microsoft (R) Windows Script Host Version 5.6
Copyright (C) Microsoft Corporation 1996-2001. All rights reserved.
Done
Rule's count = 10
Rule 1 = NNTP [563-563]
Rule 2 = SSL [443-443]
Rule 3 = SSL 10000 [10000-10000]
Rule 4 = SSL 15100 [15100-15100]
Rule 5 = SSL 453 [453-453]
Rule 6 = SSL 463 [463-463]
Rule 7 = SSL 473 [473-473]
Rule 8 = SSL 8080 [8080-8080]
Rule 9 = SSL 9443 [9443-9443]
Rule 10 = SSLCustom [446-446]
C:\Documents and Settings\adminyb\Desktop>
После выполнения скрипта необходимо перезапустить сервис Microsoft Firewall
Ну и для тех кому интересно вот полный список всех объектов для написания скриптов для ISA Server 2004/2006 - http://msdn.microsoft.com/en-us/library/aa503251.aspx