| John 的个人资料Старый нудила日志列表SkyDrive | 帮助 |
|
11月2日 У русских свой счёт.Скоропостижно скончалась домашняя клвиатура. Достал с полки стаааарую HP клаву (ещё без Win клавиш) и поехал купить себе новую. Я не превередлив и купил себе простенький комплект от Logitech ( Cordless Desktop® MX™ 3200 Laser ). Дёрнуло меня что-то почитать инструкцию. Русские, как всегда, идут своим путем : Под пунктом 5 нарисованы батарейки. Ничего удивительного. НО! По английски - “Six AA bateries”. Всё понятно. По польски - “Sześć baterii AAA” тоже смахивает на русское “шесть”. Но у русских свой счёт (или они НДС вычитают?) “Четыре батарейки типа АА”. Ну бывает, ошиблись. Слова перепутали. Но нет. Они продолжают упорствовать : Уже цифрами “чёрным по английскому” - “Insert 2 AA batteries in the mouse and 4 AA batteries in the keyboard”. По русски : “Вставьте по 2 батарейки типа АА в мышь и клавиатуру”. Во так. “В России синус может достигать 5 (пяти)” ;-)))) 10月23日 ЧуднЫе дела с SQL DMOЕсть у меня несколько скриптиков на SQL DMO (знаю что древнятина, но переписывать лень). Занимался этот скриптик забавной штукой - выставлял правильный fileGrothType после "рукоприкладства" разных backup-ов и админов. Выглядел примерно так :
DBName = "MyBase"
Set oSQLServer = CreateObject("SQLDMO.SQLServer")
oSQLServer.LoginTimeout = 30 oSQLServer.LoginSecure = True oSQLServer.Connect "localhost" oSQLServer.Databases(DBName).TransactionLog.LogFiles(1).FileGrowthType = 0 И всё. Вообщем ничего сложного. Но заметл я , что перестал он этот "FileGrowthType" выставлять. Т.е. буквально за ним читаешь его-же, а он там не 0.
Чесал я репу. И уже стал пугаться, что что-то изменили в 2008-м сервере с совместимостью с DMO (сколько можно??!!! тащить за собой это старьё, наверное они подумали). Но всё остальное-то нормально делается. А вот именно FileGrowthType в этом скрипте не выставляется. Полдня бился. Не выставляется и именно в этом скрипте. Решене - пипец :
Вместо
oSQLServer.Databases(DBName).TransactionLog.LogFiles(1).FileGrowthType = 0
Надо
oSQLServer.Databases(DBName).TransactionLog.LogFiles(1).FileGrowthType = 0
oSQLServer.Databases(DBName).TransactionLog.LogFiles(1).FileGrowth = 10 Т.е. любое ещё действие с настройками базы и всё применяется замечательно. Казалось бы "при чём тут Microsoft"? ;-)))))) Но "ненатуральненько так выглядит ;-)))))
Кто такой Генерал Фелуре ...Выдержка попыток залезть на один из ftp серверов :
#Software: Microsoft Internet Information Services 7.0
#Version: 1.0 #Date: 2009-08-26 09:47:32 #Fields: date time c-ip s-port cs-method cs-uri-stem sc-status sc-win32-status sc-substatus x-session x-fullpath 2009-08-26 13:24:02 210.56.192.51 21 USER admin 331 0 0 5903e89e-51a6-43b3-a1cc-faa8c36cca0c -
2009-08-26 13:24:24 210.56.192.51 21 USER ftp 331 0 0 5903e89e-51a6-43b3-a1cc-faa8c36cca0c - 2009-08-26 13:24:46 210.56.192.51 21 USER oracle 331 0 0 5903e89e-51a6-43b3-a1cc-faa8c36cca0c - 2009-08-26 13:25:07 210.56.192.51 21 USER mysql 331 0 0 5903e89e-51a6-43b3-a1cc-faa8c36cca0c - 2009-08-26 13:25:29 210.56.192.51 21 USER nagios 331 0 0 5903e89e-51a6-43b3-a1cc-faa8c36cca0c - 2009-08-26 13:25:53 210.56.192.51 21 USER helen 331 0 0 5903e89e-51a6-43b3-a1cc-faa8c36cca0c - 2009-08-26 13:26:37 210.56.192.51 21 USER web 331 0 0 5903e89e-51a6-43b3-a1cc-faa8c36cca0c - 2009-08-26 13:27:01 210.56.192.51 21 USER webserver 331 0 0 5903e89e-51a6-43b3-a1cc-faa8c36cca0c - 2009-08-26 13:27:24 210.56.192.51 21 USER red 331 0 0 5903e89e-51a6-43b3-a1cc-faa8c36cca0c - 2009-08-26 13:27:45 210.56.192.51 21 USER java 331 0 0 5903e89e-51a6-43b3-a1cc-faa8c36cca0c - 2009-08-26 13:28:06 210.56.192.51 21 USER streaming 331 0 0 5903e89e-51a6-43b3-a1cc-faa8c36cca0c - Всё понимаю, но кто такая "helen" и почему именно она, а не "john" какой нибудь? И почему только красный ("red")? Откуда любовь именно к этому цвету? "Шаррррада" (с) "Малыш" А.Б.С. 10月16日 Block IP addressПонадобилось мне блочить плохих пользователей через firewall. Написался забавный скрипт.
Что делает?
Парсит список лог фалов задаваемый маской. Выявляет упоминание IP адресов в этих файлах и формирует firewall-е правила по их блокировке. Расчитано на сутки (т.е. через 23 часа происходит реабилитация IP адреса.
Чуть подробне :
Скрипт стОит запускать раз в час. Файлы по маске смотрятся в текущем каталоге (для тех кто будет делать "запланированную задачу")
Сначала disable-иться правило "следующего часа" (как раз для "реабилитации IP". если за час не нагадит в лог файл, то в список и не попадёт).
Потом формируется список IP упоминавшихся в LOG файлах с течении последних 60 минут (параметр /TimeOld). чтобы не просматривать все файлы, смотрится дата модификации файла и если она раньше TimeOld, то файл даже не просматривается. Т.к. ввиду разных причин командная строка ограничена (я поставил 6000 символов в начале скрипта - iCmdLen = 6000 ), то не все отмеченные в логе N раз (/Count = 2000) могут попасть в правило, но скорее всего попадут в следующем часу. По умолчанию файл считается W3C логом с time stamp в GMT, т.е. читается комментарий #Fields: и определяются позиции параметров "date", "time" и "c-ip". Но можно задать позиции "руками" (встроенный help подскажет как"). Список запихивается в правило с именем XX (час запуска скрипта). Если правило отсутствует - оно создаётся.
Вот такой весёлый скрипт. Нам помог утихомирить небольшой напавший на нас BotNet. Идея мне понравилась тем, что как-то легко "самореализовалась" система реабилитации IP.
P.S. не всё оптимально (лишний раз формирование словаря и отсутствие некоторых проверок), зато наглядно :-)
P.P.S. возникнет желание - можно докастомизировать (указание каталогов, маски названий правил и произвольная реабилитация, например 3 дня) ...
9月15日 А нам всё равно (письма наших писателей)
Support сегодня “отжёг” : " ... дифференциальный инкремент к файлу ... " Вот так рождаются новые технологии и понятия :-) 9月11日 Mail clientДостал меня OutLook окончательно. Почту показывает через раз. Показывать количество непрочинанных писам в IMAP папаках отказался напроч. Раньше как-то работало, а сейчас нет :-( Ввиду убогости почтового сервера (данного мне в “ощущение”) раскладку по папкам я делаю на клиенте. POP – ненавижу и пользуюсь только IMAP. Идеальным клиентом для меня был, как не странно, OutLook Express. НО! Правила “раскладывания почты” у него на IMAP не работают (???). Приходилось пользоваться OutLook. Но вот и OutLook меня достал и пришлось искать альтернативу. OutLook Express-а теперь нет, а есть Windows Live Mail в котором “правила раскладывания почты” отсутствуют напрочь. “В топку её” (С) Ф.Ф. Преображенский. Есть ещё масса притензий к Live Mail, но “в топку”, так “в топку”. Ктому же за обоми этими клиентами (не за OE) замечено дуратское свойство : Кнопка "принять-отправить" вызывает некое бурление у них в животе и они "уходят в себя". Т.е. принимаю и отправляют, но я хочу видеть "прогресс", а он у этих клиентов сильно фоновый (за отсутсвие этой "радости" я и любил OE). Вдумчиво попробовал Буревестника. ТАК ЭТОЖЕ OutLook Express и даже лучше. Чуть чуть plugin-ов ( так для красоты, типа Quote Colors) и мою любимую “раскраску” phoenity и можно опять радоваться жизни. Нет. Минусы есть, конечно, но преодолимые. Самы большой минус – неуменее раскладывать входящую почту по “телу письма”, остальное по мелочи. P.S. Это всё от бедности. Я знаю, что “раскладкой писем по папкам” должен заниматься сервер. P.P.S. Пересылать на Google mail или HotMail – не предлагать. Нелюблю многоходовый бред. 7月7日 Письма наших писателей.Письмо клиента :
> имеется простое ASP.NET приложение, которое использует штатные контролы DetailsView,
> LoginView и проч. Текстовые метки компонентов там зависят от установленного значения из
> web.config system.web : globalication : culture/uiculture. Локально на компьютере разработчика все
> работае и переключается согласно документации MSDN.
Сразу вспомнился "Начальник чукотки" и эпизод, когда американец продаёт трубы от патефона (для родившихся в эпоху развитого капитализма - американец давал послушать патефон, потом отрывал трубу и продавал чукче, как "музыкальная шайтан труба").
Вот так и программисты : показывают на своей машине "Всё работает". Клиент несёт на хостинг - не работает. Кто виноват? Программист? ЩА! Хостер конечно. А клиент, естественно, прав. Раз программист написал в Web.Config :
<globalization
enableClientBasedCulture="true" fileEncoding="utf-8" requestEncoding="utf-8" responseEncoding="utf-8" culture="auto" uiCulture="auto" /> И у него по русски, то значит всё правильно. А хостер систему настраивать не умеет. Как в анекдоте : "Я хочу что-бы машина была цвета бордо". Делают. "Не понял. Пацаны - бордо это, разве, не зелёный?" auto - это, разве, не русский?
Это реклама "марсианской логики" и патефоннных труб. 6月10日 Вот что с серверами Service Pack делает.Вот один из наших серверов :
Не ясно, насколько нужно Web Edition роль WSUS, но Application Server нужна "по любому".
Официально объявляется Service Pack 2. УРА !!! Или нет???
Вот поставленый сервер с SP2 :
Опа. Заметили что число ролей "уполовинилось". Ну ладно FSRM (File Services) вроде и не обещали, но вот Application - то за что?
Сел думать, нужен мне SP2 или подождать (только чего?)?
Update.
Хммм .... всё оказалось несколько проще :-))) Роли "уехали" в "фичи". Т.е. Application, подразумевающая WCF HTTP Activation, стала одной из возможностей .NET Framework, а File Server просто стал возможностью FSRM (что и показано на рисунке):
Продолжаем издеваться над дистрибутивами :-) Том както умудрился поставить сервер с одной ролью :-))))
5月18日 Тщательнее надо, господа из MS.Есть такой web site - winqual.microsoft.com. Это тот, который информацию о драйверах, update-ах и тому подобных вещах выдаёт. Тыркнулся я в него с приходом нового драйвера. И "не попал" ... Т.е. нет такого, сказал мой браузер. Разобиделся я и решил проверить данную информацию :
> nslookup winqual.microsoft.com
Non-authoritative answer:
Name: winqual.partners.extranet.microsoft.com Address: 213.199.138.104 Aliases: winqual.microsoft.com Да нет. вроде существут. Т.к. доверие к браузеру уже подорвано, лезем руками :
HTTP/1.1 200 OK
Content-Length: 1433 Content-Type: text/html Content-Location: http://winqual.microsoft.com/iisstart.htm Last-Modified: Thu, 24 Mar 2005 17:19:08 GMT Accept-Ranges: bytes ETag: "0ce4f969530c51:9526a" Server: Microsoft-IIS/6.0 X-Powered-By: ASP.NET Date: Mon, 18 May 2009 14:45:02 GMT Connection: close Вам тоже нравится выделенная строчка? ;-))))) О как. iisstart.htm, почти без присмотра? ;-))))
Дальше притвряемся совсем глупымии и делаем telnet на 80-й порт с фразой GET /<cr-lf> :
HTTP/1.1 302 Found
Date: Mon, 18 May 2009 14:48:28 GMT Server: Microsoft-IIS/6.0 X-Powered-By: ASP.NET X-AspNet-Version: 2.0.50727 Location: https://10.253.212.78/default.aspx Cache-Control: private Content-Type: text/html; charset=utf-8 Content-Length: 151 <html><head><title>Object moved</title></head><body>
<h2>Object moved to <a href="https://10.253.212.78/default.aspx">here</a>.</h2> </body></html> Connection to host lost. Расписные красавцы :-) Т.е. если ещё радом стоящий DNS-ик найти, то можно и про MS-овский intranet узнать. Хотя, судя по имени winqual.partners.extranet.microsoft.com, это не совсем MS и не совсем intranet. Но я-бы, всё одно, не подставлялся бы так.
4月15日 Ложечки-то нашлись ...Тут меня спросили, и я решил ответить :
К посту про IIS.CertObj - "ложечки нашлись". Т.е. IIS.CertObj в IIS7 эмулируется (что не может не радовать. Уж больно удобен). НО! Он устанавливается в случае выбора не "IIS 6 Metabase Compatibility" и не с "IIS 6 Scripting Tools", а с "IIS 6 Management Console" (которая мне там нафиг не нужна).
"Где логика, где разум?" (С) Анекдот
О пользе документирования (MS - ненатуралы)Нужно выполнить доооооолгий запрос на SQL-ле (ну ещё чутка обработать данные перед этим). "Нет ничего проще" подумал я и наваял на VBScript-е небольшой код :
Set oSQLBase = CreateObject("ADODB.Connection")
oSQLBase.ConnectionTimeout = 86400
oSQLBase.CommandTimeout = 86400 oSQLBase.Open
Set oRet = oSQLBase.Execute( "EXEC LoooongQuery" )
oSQLBase.Close Т.к. знаю, что выполняться должно доооолго, то смело ставлю суточный (86400 сек.) timeout (потом оказалось что там всё ещё дольше :-) ).
Выполняем. И получаем - Query Timeout ... И подозрительно быстро. Начинаю искать и гуглить. Даже попробовал заводить отдельный объект ADODB.Command и выставлять у него timeout. Всё одно рубит через 15 сек ... Бился полдня. ПЛЮНУЛ. Решил сделать через sqlcmd. Запускаю и получаю по морде :
>sqlcmd -t 86400
Sqlcmd: '-t 86400': Timeout has to be a number between 0 and 65535. Во как! И что главное, ни в одном (суки!!!) руководстве, как от MS, так и от сторонних источников пределы этого параметра не обозначены. Мало того, скрипт это "глотает" МОЛЧА и ничего не делает (т.е. timeout остается равным default, т.е. 15 сек.), так ещё и в самом параметре находится число которое указал я, а не "действующее".
"Программисты обладают альтернативным мышлением" (с) Мой.
Тихо шифером шурша ....Читаю сегодня про уязвимость :
Повышение привилегий в функции SearchPath() в Microsoft Windows
Описание:
... Уязвимость позволяет удаленному пользователю скомпрометировать целевую систему.
Уязвимость существует из-за ошибки в функции SearchPath() при обнаружении и открытии файлов на системе. Злоумышленник может обманом заставить пользователя загрузить на систему специально сформированный файл и заставить пользователя запустить приложение, способное при определенных обстоятельствах загрузить файл.
...
"Таааак ... У меня что-то с головой" (С) френен Бок
Т.е. играем в "армянский комсомол" (сами себе создаём трудности и сами их, с успехом, преодолеваем). Завтавить загрузить файл, заставить запустить программу, чтобы загрузить файл. "что-то новенькое в любовном лексиконе нашего двора" (с) "Стакан воды"
Вспоминается анекдот про программиста "Намылить, смыть, повторить ..."
P.S. Объяснять зачем и что, мне не надо. Просто фраза построена - ВИЗГ!
4月11日 Ping from alias IP или MS - ненатуралы.Зашел ко мне парень из DC (Data Center) с некой проблемой:
Очень часто устанавливая пользователям сервера, нужно инициировать сетевую деятельность с alias IP, т.е. дополнительного IP на интерфейсе (некая защита по arp cache). "Да легко" - сказал я - "Ping-ани default gateway". Услышал законный вопрос - "Как?". "Ну ... " - сказад я - "Ping -S, например ...". На что услашал "САМ ПОПИНГУЙ!!!".
И так. Хммм ... Сказал я ... Ну и попингую ... (У меня Win2003) :
> ping -S 10.10.10.10 10.10.10.1
10.10.10.10 is not a valid address. Во как! Курим help :
>ping -?
Usage: ping [-t] [-a] [-n count] [-l size] [-f] [-i TTL] [-v TOS]
[-r count] [-s count] [[-j host-list] | [-k host-list]] [-w timeout] [-R] [-S srcaddr] [-4] [-6] target_name Options:
........... -S srcaddr Source address to use (IPv6-only). ........... Во как! IPv6 и баста! Нужно срочно искать замену. .... Прошло немного времени ... Эврика! PathPing нас спасёт :
> pathping -?
Usage: pathping [-g host-list] [-h maximum_hops] [-i address] [-n]
[-p period] [-q num_queries] [-w timeout] [-4] [-6] target_name Options:
......... -i address Use the specified source address. ......... Уф ... Проверил - работает. Можно расслабиться? Ну на всякий случай проверим на Win2008 :
Help на pathping не отличется, значит всё хорошо? :
> pathping -i 10.10.10.10 10.10.10.1
Tracing route to 10.10.10.1 over a maximum of 30 hops
The option -i is only supported for IPv6. Вот те ХРЕН!!! И что делать? Прошло немного времени ... А как там у нас поживает ping?:
> ping -?
Usage: ping [-t] [-a] [-n count] [-l size] [-f] [-i TTL] [-v TOS]
[-r count] [-s count] [[-j host-list] | [-k host-list]] [-w timeout] [-R] [-S srcaddr] [-4] [-6] target_name Options:
........ -S srcaddr Source address to use. ........ Я один заметил отсутствие упоминания IPv6? Проверка показала правильность моей догадки.
НУ И КТО ТУТ НАТУРАЛ???? :-)))))))))))
4月10日 А вы спрашиваете откуда беруться "красноглазики"При поиске в сети нарвался на шедевральную фразу :
" .. ping сетевой эквивалент звукового устройства ..."
Ну какой "администратор" из такого, простите, вырастет ... Русская языка не родной :-)))Ну я понимаю, что у Google русский язык "не родной", но смотрится забавно :
(Это интерефейс настройки GMail)
Так и хочется добавить пункт - "Иногда не использовать http" :-))))) Прям для блондинок.
P.S. BTW только у меня сегодня Google IMAP не коннектится с "идиотским квестом" - "Web login requeried" ? 3月24日 Linux womanВот тут запостили переводную новость про "человекоподобного Linux робота". Ну новость, как новость. Только порадовал комментарий :
"Ммммммм ... Linux с сиськами - мечта админа".
Я бы перефразировал - "Linux с сиськами - мечта красноглазика".
Теперь фраза "Всю ночь с Линуксом трахался" приобретает РЕАЛЬНЫЙ смысл.
Хацкеры в FAR ManagerСмотрю форум по FAR Manager и натыкаюсь на plugin, не много не мало, как на "Просмотр статистики почты Нац. Банка Украины".
Эх. Вот такой бы, для просмотра почты швейцарских банков... :-))))) А украинские - мелковато :-))))) Письма ... Кхм. _НАШИХ_ писателей.Идёт переписка с клиентом, у которого не совсем корректно работают скрипты. Не сказать что очень долгая, но идёт. И ТУТ ВДРУГ сотрудник поддержки выдаёт ответ клиенту:
> Итак, главный вопрос: кто должен выправлять ситуацию, и какие
> перспективы/рекомендации по ее исправлению? > Обращае Ваще внимание на то,что, подобная ошибка служитъ н фопйсувх с разрешения дежурного по столовой. Резервную копию Вы найдете на <там-то>. Всего доброго. Что он курил при этом, выяснить не удалось (было лень). НО! Спасибо адекватному клиенту. Ответ клиента порадовал :
Здравствуйте, ***** !
Вначале - небольшое лирическое вступление: Ах, дежурный по столовой, Вот и ты с своей обновой, С фопйсувх - ом на подносе И с ответом на вопросе! А если серьезно, то описанная в моем письме проблема была успешно разрешена программистом сайта ......... Во как !!! Вот таких-бы адекватных клиентов, да с пол мульёна :-)))))
P.S. Но что он курил НАДО УЗНАТЬ :-))))
Наш ответ Чемберлену.Случайно наткнулся на "новость" 3-х годичной давности. Очень порадовало отсутствие в "новости" ссылок, но это меня не остановило. Я, таки, нашёл этот, пресловутый,
Винде капец? ;-)))) |
|
|