Ребята подскажите плиз. Нужна почта со следующим:

  • синхронизация контактов
  • синхронизация календаря
  • собственно почта очень хочется с Push
  • свой домен
  • поддержка iOS

Раньше был сервис у Apple. После реструктуризации — нельзя прицепить свой домен, да и почта ходит с неприятной задержкой. Пользовался exchange хостингом но жаба душит за месяц и один ящик с 1гб платить 400р. Перевел почту на Google Apps. Все перенеслось на ура, правда бывают периодические сбои в общении с сервером, что нельзя удалить например элементы из ящика.

Где бы лучше все это организовать? Может кто пользуется exchange хостингом (идеально подходит)? И может быть забугорские цены более приветливые для домашнего использования?

Балансировщик нагрузки для сайтов на IIS 7

Недавно встал вопрос о том как осуществить отказоустойчивость сайта на IIS 7.

Первое, что пришло в голову: настроить NLB, чтобы снизить нагрузку на IIS и чтобы веб-узел всегда был доступен. Но тут возник вопрос: «Что делать в той ситуации, когда пользователь долго и нудно вбивает данные в форму, а балансировщик по причине перегруженности сервера, или ещё неважно по какой, перебрасывает на другой сервер? Вводить всё заново…?» — а так и произошло, когда тестили NLB… Пользователь заполнил форму, затем отключили сервер, куда направил балансировщик пользователя, и после «Сабмита» сервер перебросил запрос на другой сервер, но уже с пустыми контролами в форме и пришлось вводить записи заново.

Получилось найти 2 рабочих решения, которыми хочу поделиться…

1. Application Request Routing - Это модуль для IIS 7, который берёт на себя функции балансировщика нагрузки, хранителя сессий, перенаправителя URL-ов. Как он устанавливается и настраивается подробно можно прочитать на оф. сайте по ссылке выше.
Минус этого решения — сервер ARR должен быть отдельным сервером, т.е. если на ARR сервере есть узел с тем же портом, что и ферма, то на него зайти невозможно, так как всегда попадаешь на ферму, которая перебрасывает на другой сервер в «кластере».

2. Отдельный балансировщик (либо программный NLB, либо аппаратный Cisco, либо другой) и Session State Server.

Реализация следующая…

    -    На всех веб-серверах в настройках пула приложений в котором находится нужный узел указываем «Idle Time-Out (minutes)» — 0 и «»Service Unavailable» Response Type» — TcpLevel.

    -    В файле web.config данного узла прописываем

<System.Web>

<pages enableSessionState=»true» enableViewState=»true» enableViewStateMac=»false» enableEventValidation=»false» validateRequest=»false»  viewStateEncryptionMode=»Never» />

<sessionState allowCustomSqlDatabase=»true» mode=»SQLServer» sqlConnectionString=»Server=sql-server;Database=db-name;User ID=User;Password=pwd» stateConnectionString=»Server=sql-server;Database=db-name;User ID=User;Password=pwd» />

</System.Web>

Адрес БД, соответственно, во всех веб-узлах должен быть прописан одинаковый, чтобы при перебрасывании балансировщиком на другой сервер данные сессии сохранялись и переносились.

Минус этого решения в том, что он у меня стабильно не поработал, но, я думаю, если поковыряться в настройках балансировщика и конфига узла, то стабильную работу можно будет получить. Так же этот вариант балансировщика менее функционален, например, нельзя настроить правила URL-переброса, замены, запрета и т.п., которые можно настраивать в модуле «URL Rewrite» ARR сервера.

Win8 в лAppах

Интерфейс Win8 мне понравился не сразу. Первые полдня к нему надо привыкать, но к концу дня уже уверенно владеешь возможностями управления.

Самый приятный позитив для меня — это масштаб отображения информации:

Согласитесь, воспринимать информацию в таком виде нагляднее и приятнее.

Копая Арр-ы, обнаружил интересный функционал, до которого раньше можно было добраться по F8.

Первый из них необходим для того, чтобы сохранить Ваши файлы и настройки, вернув основные файлы ОС в исходное состояние. Программы, загруженные из Windows Store, будут восстановлены автоматически  после восстановления ОС.

Второй вариант предусматривает абсолютно полное восстановление ОС с удалением Ваших файлов.

Отмечу Мессенджер, который предусматривает интеграцию во все популярные, на мой взгляд, социальные сети.

Симпатичное приложение Weather App, со своими проблемами: Домашним оно считает только Seattle (может исправят в RTM-е), температура в Фаренгейтах и поменять это пока нельзя.

Уже этот пост я писал без особого раздражения, потому как натыкал опыта.

Без «Пуска» быстрее! Кажется…

WCP — особо ожидаемое событие начала марта 2012. Конечно, не смог я пройти мимо.

Установка прошла довольно быстро, мало чем отличается от семерки. «Рыбку» жалко — ее обрезали по всем краям. Первое, что непривычно — отсутствие кнопки «Пуск» — мне сразу понравилось.

Лично мне она уже порядком поднадоела, приходиться регулярно ее искать у Льва.

Второе, с чем столкнулся: добавление языка — на скрине выше видно, как это происходит. Забавно. В стиле квадратных иконок.

Третий момент, заслуживающий более длительного изучения — интерфейс Эксплорера:

Кстати, четвертое изменение, бросившееся в глаза, при смене приложения язык системы остается тот, который вы выбрали! Наконец-то, реализована Mac функция.

Пятое, на мой взгляд, самое значительное визуальное изменение - Диспетчер задач.

Для «меломанов» добавили многозначительный Таб App history

Из внутренностей, шестая обнаруженная особенность — сервис геопозиционирования (которую на семерке я так и не завел:

С ней надо разбираться дополнительно.

Седьмое — язык теперь на своем законном месте

Восьмое - выделен функционал Windows 7 file recovery и File history

Девятое — боковая менюшка доступа к Handheld-овому виду. Вообще каждый угол теперь за что-то отвечает, понаводите на углы, там и Андроид всплывет)

И десятое — она мне нравится!

P.S.: Забавная особенность, можно схватить главный экран мышью за верхнюю грань и спозиционировать по бокам. Зачем нужно — для позиционирования App-ов)

А еще забавнее использование IE в качестве App-а и стандартного приложения одновременно.

Неудобство: когда используется App IE, и нужно авторизоваться на Proxy, нет нигде отображения языка ввода.

КБ или 2х КБ, вот в чем вопрос

Объявляется конкурс на лучшее предложение организации рабочего места сотрудника Казначейства, который работает с несколькими клиент-банками.

В специализированных компаниях, равно как и в компаниях достигших определенных размеров, рано или поздно проявляется проблема множества клиент-банков. Они тянут за собой и множество технологий, которые могут быть не совместимы, а хуже всего — нарушать работу друг друга.

Начальные условия просты: есть сотрудник и есть ПК, посредством которого сотрудник должен исполнять свои рабочие обязанности взаимодействия с банками.

Вопрос: как?

Radius + Ironport

Бывает так, что начинаешь делать то, что кажется тебе простейшим делом и, затем, впадаешь в ступор от того, что у тебя ничего не получается. Так случилось у меня при попытке привязать авторизацию ironport через NPS Windows 2008 R2. Столкнувшись с проблемой, я полез искать в интернете какие-либо статьи, связанные с настройкой RADIUS на ironporte и к величайшему удивлению не нашел никаких конкретных статей кроме той, что написана на сайте cisco.com и в Help на самом ironport. Посему здесь я напишу краткую инструкцию по настройке RADIUS на ironoprt с указанием тех граблей, на которые я наступил.

Итак. Процедура настройки оказалась довольно-таки простой. На сервере Windows NPS создаем клиента Radius:

Затем создаем NetworkPolicy :

где последний параметр Class со строковым параметром <radius-support> нам нужен для выдачи самим ironport роли для залогинившегося пользователя(если групп пользователей, которые мы хотим привязать из LDAP несколько, то создаем несколько политик. К примеру, есть 2 группы — первая — администраторы, вторая — группа поддержки для Message tracking. Для группы администраторов создали правило Switching&routing, для суппортов — iron1(в этой группе мы указали непосредственно адрес RADIUS-клиента — 192.168.0.111. Если устройств 2, то создаем под него такое же правило, только с другим адресом RADIUS-клиента — 192.168.0.112).

Теперь перейдем к настройкам RADIUS на ironport. Заходим во вкладку System Administration—>Users, далее в External Authentication и настраиваем там IP RADIUS сервера, порт авторизации и т.д.:

Зеленым овалом обведена строчка, в которой как раз-таки используется Class с RADIUS-сервера для выдачи ролей.

Красным овалом обведены грабли, на которые я наступил. Первоначально в SharedSecret я использовал строку с большими, маленькими латинскими буквами и разных регистров и цифрами длиной в 55 символов. При попытке авторизоваться на ironport NPS писал в логах - Authentication failed due to a user credentials mismatch. Either the user name provided does not map to an existing user account or the password was incorrect. Содержимое логов самого ironport оказалось более содержательным - Tue Feb 28 13:03:21 2012 Warning: Service RADIUS communication error (No valid responses from server (Incorrect shared secret)). При сокращении длины shared secret до 26 символов  RADIUS заработал без сбоев. Информации по максимальной длине PreshredKey мне тоже нигде найти не удалось.

Удаляем письмо из всех ящиков Exchange 2010

Бывает ситуация, когда не смотришь кому и что отправляешь. Но ненужно пугаться, ситуация такая поправима, главное в этом деле не медлить ;)

Если мы знаем тему письма и она достаточно уникальна, то выполним в Exchange Management Shell:

Get-Mailbox -resultsize unlimited | Search-Mailbox -SearchQuery ‘Subject:»Тема»’ -DeleteContent -confirm:$false — во всех ящиках будут удалены все письма с темой «Тема»

Но тема письма может оказаться настолько простой и легкой, что такой запрос захватит лишку =)

Get-Mailbox -resultsize unlimited | Search-Mailbox -SearchQuery ‘Subject:»Тема» from:pupkin@domain.com sent:today’ -DeleteContent -confirm:$false – результатом такой команды станет удаление во всех ящиках (кстати говоря, когда скрипт начинает выполняться, то можно часть ящиков исключить) всех писем, отправленных сегодня от pupkin@domain.com с темой «Тема»

Для вывода результата в текстовый файлик можно в конце строки добавить: >c:results.txt

PS. В запросе можно использовать следующие параметры: http://technet.microsoft.com/en-us/library/bb232132.aspx#AQS

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

 

Custom Reports in DPM 2010

Стандартные отчеты в DPM 2010 настолько скучны, что у меня возникло желание немного покопать в направлении их «кастомизации».

Для работы нам понадобится:

  1. Обновить Microsoft .Net Framework до 3.5 или выше.
  2. Обновить Report Builder до версии 2.0 (для SQL 2008, до 3.0 – для SQL 2008r2 соответственно). Скачать можно тут: http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=24085.
  3. После установки Report Builder 2.0 в настройках веб-узла на сайте Report Manager (URL можно посмотреть в Report Service Configuration Manager в соответствующем разделе) на вкладе «Общие» необходимо прописать в поле «Пользовательский URL-адрес для запуска построителя отчетов»: /ReportBuilder/ReportBuilder_2_0_0_0.application.

Все вышеупомянутые пункты можно упустить и попробовать пройти курс молодого бойца самостоятельно =)

Итак.

Зайдем в «Диспетчер отчетов» (Report Manager) по ссылке  http://dpmservername/Reports_MSDPM2010/, создадим персональную папку для кастомизированных отчетов «My Reports» (кнопка «Создать папку») и запустим «Построитель Отчетов» (Report Builder). Мы будем пользоваться уже настроенным источником данных, а можно создать свой. Для этого необходимо нажать соответствующую кнопку «Создать источник данных» и заполнить таким образом:

Имя: MyResourceDPM
Включить этот источник данных «Microsoft SQL Server»
Строка соединения: data source=»dpmservernameMSDPM2010″;initial catalog=DPMDB
Встроенная безопасность Windows

А как только отобразится стартовая страница Report Builder, и Вам захочется перекроить вся и все, хочу предупредить – выжать из того что предлагает DPM человеку, не особо владеющему «приемами» в SQL (а я как раз из таких), будет крайне сложно, но что-то можно сделать, и я покажу как..=)

На рис. 1 обратите внимание на строку состояния внизу окна, сообщающую о том, что вы подключены к серверу отчетов «Current report server URL-ReportServer»:

Рис. 1 Start Report Builder

 

А теперь о том, что предлагает DPM для создания кастомизированных
отчетов. Обратимся по ссылке: http://technet.microsoft.com/en-us/library/ff399120.aspx – здесь перечислены имена таблиц, с которым можно работать в Report Builder, значения полей и других кодов.

Попробуем построить отчет на основе таблицы Vw_DPM_Alerts (List of all alerts from the last 30 days). Для этого воспользуемся мастером построения таблиц «Table or Matrix» (ту же команду можно выполнить из меню программы на вкладке «Insert»), в списке источников данных выберем наш:

Рис. 2 Data Source

И нажмем далее..

В списке Views выберем таблицу Vm_DPM_Alerts, в окне «Selected fileds» отобразятся все поля, присутствующие в выбранной таблице:

Рис. 3 Design a Query

В следующем окне перетащим доступные поля (Available fileds) в «Row groups»: Severity, далее Type, далее Resolution, что позволит сгруппировать данные по серьезности алерта, затем по типу, затем по статусу. А в поле «Values» перенесем поле Type (которое будем считать (функцию Count() выбрать нажав на стрелочку «вниз»), сколько алертов определенного типа):

Рис. 3 Arrange Fields

В следующем окне настройки группировки можно пока пропустить, в результате получим наш первый отчет:

В левой части окна программы «Report Data» мы увидим источник
данных и DataSet1 с полями выбранной таблицы. Для запуска нашего отчета необходимо перейти на закладку Home и нажать кнопку «Run»:

Рис. 6 Run Report

Результатом запуска нашего отчета получится вот такая таблица:

Рис. 7 Report View

Теперь можно обратиться к значениям полей таблицы и понять картинку
(http://technet.microsoft.com/en-us/library/ff399120.aspx), а можем воспользоваться встроенными функциями и немного поколдовать над полями.

Вернемся в настройки нашего отчета кнопкой Design:

Рис. 8 Design

Кликнем правой кнопкой в поле Severity, а в открывшемся списке выберем «Expression»:

Рис. 9 Expression

И изменим значение поля такой конструкцией:

=Iif(Fields!Severity.Value= 0, «Error», IIF(Fields!Severity.Value= 1, «Warning», «Information»)):

 

Рис. 9 Set Expression

Нажмем Ок и снова запустим отчет:

 

Рис. 10 Report View

То же самое проделаем с полями Resolution, добавим название отчету, перенесем
поля дат в таблицу, напишем легенду кодов ошибок и получим:

 

Рис. 11 Report View

Далее выберем команду «Сохранить» и указываем ранее созданный каталог «My Reports». Если я верно понимаю, в консоль DPM Administration Managament добавить созданный отчет не удастся, но его можно запускать на странице Менеджера Отчетов (Report Manager).

Создадим еще один простой отчет, отображающий количество точек восстановления (их даты) защищаемых данных на диске и кассетах. Здесь сделаю отступление. Для того чтобы понять, как таблица хранит те или иные данные, при ее выборе в окне Design a Query нужно выполнить команду «Run Query»:

Рис. 12 Run Query

Это знание поможет сориентироваться в выборе правильных полей при создании отчета.

Для нашего отчета нам понадобятся данные из двух таблиц: Vw_DPM_RecoveryPointDisk, Vw_DPM_RecoveryPointTape
(вторая не нужна, если у вас нет ленточной библиотеки).

Расположим две таблицы рядом в одном отчете. На вкладке Insert можно
выбрать в ручном режиме объекты, которые будут размещены в отчете.
Воспользуемся Мастером создания таблиц. В поле «Row groups»
добавляем те поля таблиц, какие хотим группировать в порядке начиная с верхнего
(первое добавленное). Если какие-то поля не должны группироваться, то их
добавляем позднее, путем перетаскивания в уже готовую таблицу отчета:

Рис. 13 Row Groups

Поле Status изменим на:

=Iif(Fields!Status.Value = 0, «Progress», IIF(Fields!Status.Value = 2, «Succeeded»,
«Failure»))

Позднее перетащим в таблицу поле CreationTime (переименуем в
«Точка»), назовем отчет и переименуем другие поля:

Рис. 14 Report View

 

Да, это всего лишь маленькое начало, но затягивает…  =)) спасибо за внимание.

 

IronPort по по-русски

Отличная новость для любителей русскоязычного GUI. В версии v7.5.0-612 AsyncOS для IronPort Cisco ESA появилась возможность указать Русский язык интерфейса. На первый взгляд перевод сделан качественно, наблюдаем за отдельными ошибками. Более подробно о выпуске v7.5.0-612 AsyncOS можно прочитать на сайте производителя: http://www.cisco.com/en/US/docs/security/esa/esa7.5/ESA_7.5_Release_Notes.pdf