четверг, 26 марта 2009 г.

Полчаса на смену браузера по умолчанию

Опишу ситуацию, с которой я на днях столкнулся на работе и которая достаточно хорошо показывает те свойства, которые мне не нравятся в Windows и во многих продуктах Microsoft.

Есть центральный офис и есть удалённые точки. В центральном офисе находится VPN-сервер, к которому подключаются через Интернет агентства. Практически все точки подключены к одному оператору, а оператор не тарифицирует трафик, не выходящий за пределы его сети.

В центральном офисе есть корпоративный информационный портал Share Point, работающий поверх веб-сервера IIS. Share Point завязан на особенности IE (видимо ActiveX) и поэтому бОльшую часть функций проявляет именно в IE, а максимум - в IE7.

В центральном офисе периодически обновляют документацию на портале, а в удалённые точки отправляют по почте сообщение со ссылкой на обновлённый документ.

Есть самодельная веб-программа, работающая на Apache, PHP и MySQL. Программист, писавший программу, естественно, ориентировался на общепринятые Web-стандарты. IE, в смысле соответствия стандартам, браузер особый - по большей части на стандарты он кладёт с большим прибором. Учитывая это обстоятельство программист затачивал свою программу на Firefox, а отлаживал с помощью Firefox и плагина Web Developer.

Соответственно в удалённых точках есть два браузера. IE - браузер по умолчанию, а Firefox - браузер для работы только с самописной системой.

Случилось неожиданное: в удалённую точку прислали письмо со ссылкой, но браузером по умолчанию оказался не IE, а Firefox. Соответственно при щелчке по ссылке запускался Firefox, который не мог задействовать весь функционал портала и работать с порталом становилось эээ... тяжеловато.

Мне позвонили из удалённой точки и попросили поменять браузер по умолчанию. Я попросил их подключить VPN и подключился сам к их компьютеру через RAdmin.

Думаю: нужно в одном браузере убрать галочку "быть браузером по умолчанию", а в другом браузере её отметить и дело шито-крыто. Оказалось не так: в обоих браузерах есть пункт "проверять, что я являюсь браузером по умолчанию", но пункта "быть браузером по умолчанию" нет. Ладно, снимаю у Firefox галку, в IE её отмечаю. Закрываю Firefox, закрываю IE. Запускаю IE в расчёте на то, что он сейчас обнаружит, что не является браузером по умолчанию и предложит мне себя в качестве такового. Вижу: IE просто запустился безо всяких вопросов. Пытаюсь ткнуть по ссылке в письме - запускается Firefox.

Что делать? Захожу в "Пуск - Настройка - Установка и удаление программ - Выбор программ по умолчанию", вижу надпись в духе "у вас недостаточно прав, чтобы изменять настройки в этом разделе". Ха! Обычный пользователь не может изменить СВОИ настройки, чтобы изменить СВОИ настройки нужны права администратора!

Думаю. Если зайти под администратором и выбрать браузер по умолчанию, то изменятся браузер по умолчанию только для самого администратора, а нужно изменить браузер по умолчанию для пользователя. Какой выход? Дать временно пользователю права администратора, чтобы он мог поменять свои настройки.

Что делать? Прибиваю explorer командой "taskkill /f /im:explorer.exe", через диспетчер задач пытаюсь набрать строку "runas /profile /user:adm explorer", набирается белиберда на русском, на латинскую раскладку клавиатура переключаться не желает ни в какую. Набираю команду на своём компьютере в блокноте, копирую через буфер обмена на удалённый компьютер, затем то же самое делаю с паролем. Запускается explorer с админскими правами. Добавляю пользователя в группу "Администраторы". Набираю у себя в блокноте команду "taskkill /f /im:explorer.exe", копирую на удалённый компьютер (переключалка-то всё ещё не работает), прибиваю админский explorer. Через диспетчер задач запускаю explorer с правами пользователя (на этот раз найдя его через кнопку "обзор", набирать и копировать было лень). Пробую зайти в "Пуск - Настройка - Установка и удаление программ - Выбор программ по умолчанию", вижу ту же фразу - нет прав.

Думаю: ага, надо перезайти, чтобы новые права применились. Завершаю сеанс, расчитывая тут же зайти вновь. Вместе с сеансом пользователя обрывается VPN!

Звоню в удалённую точку, прошу войти и подключить VPN. Подключаюсь через RAdmin, захожу в "Пуск - Настройка - Установка и удаление программ - Выбор программ по умолчанию", выбираю браузер по умолчанию - IE. Открываю письмо, щёлкаю по ссылке - запускается IE. Ура, бОльшая часть работы сделана!

Теперь нужно убрать пользователя из группы "Администраторы". Прибиваю explorer командой "taskkill /f /im:explorer.exe", наученный горьким опытом, копирую из локального блокнота на удалённый компьютер в диспетчер задач строку "runas /profile /user:adm explorer", затем копирую пароль. Убираю пользователя из группы "Администраторы". Снова копирую из локального блокнота строку "taskkill /f /im:explorer.exe", прибиваю админский explorer. Через диспетчер задач запускаю explorer с правами пользователя (опять найдя его через кнопку "обзор").

Теперь нужно опять перезайти под пользователем. Завершаю сеанс. Пока сеанс завершается, набираю телефон точки. К моменту ответа по телефону сеанс завершается, VPN обрывается. Прошу войти и проверить открываемость ссылок. Получив положительный ответ от пользователя, стираю пот со лба и кладу трубку.

Полчаса на смену браузера по умолчанию, включая поиск "интуитивно понятных меню" и контрольные попытки делать одно и то же: в Windows если что-то не срабатывает в первый раз, то может сработать в другой, в Linux/BSD если не сработало сразу, не сработает и все последующие разы, поэтому в Linux нужно разбираться в причинах. Возможно будь я опытным Windows-админом, прошедшим специальные курсы, я бы потратил на это 5 минут, но большинство Windows-админов, которых я видел, работают с Windows примерно так же, как и я.

8 комментариев:

libc6 комментирует...

>>бОльшую функций
Вероятно, бОльшую часть функций

morbo комментирует...

>Вероятно, бОльшую часть функций

Или возможностей. Поправил.

Анонимный комментирует...

Панель управления - свойства обозревателя - программы
тут можно выбрать браузер по умолчанию
начиная вроде с 2000

morbo комментирует...

>Панель управления - свойства обозревателя - программы
>тут можно выбрать браузер по умолчанию
>начиная вроде с 2000

С правами пользователя - нельзя. Недавно проверял на XP.

Анонимный комментирует...

В русской версии есть такая вещь как "Запуск от имени ...". В английской "Run as ...". Обычно появляется при зажатой Shit-клавише и правом клике мышки.
Так можно запустить как программу с правами администратора так и все apps в "Панели управления".

morbo комментирует...

>В русской версии есть такая вещь как "Запуск от имени ...". В английской "Run as ...". Обычно появляется при зажатой Shit-клавише и правом клике мышки.

Да ты что!?

>Так можно запустить как программу с правами администратора так и все apps в "Панели управления".

Ну и ну!

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

То, что вы знаете пункты меню и умеете щёлкать мышью - это хорошо, но это не делает вас сисадминами, потому что в голове должен быть порядок и своё представление о том, как правильно настраивать систему. Я не рабочий конвейера, который не успел закрутить болт в одной машине, как к нему подъезжает по конвейеру следующая - мне не нужно торопиться и забивать болт кувалдой, мне нужно закрутить болт тарировочным ключом с нужным усилием в соответствии с техпроцессом.

Владислав комментирует...

полностью солидарен, управление своими настройками в виндовсе через одно место. в линуксе очень приятгно набрать "sudo что надо" и все. а в виндовсе есть еще аналогичный гемор с принтерами...

morbo комментирует...

Тут дело не в sudo. В Windows тоже можно запустить что-то от имени другого пользователя, если знаешь его пароль. Дело в том, что пользователь не может настроить использование по умолчанию той программы, которую он и так может запустить вручную.

Вот только что посмотрел - в XFCE есть "Предпочитаемые приложения", где можно выбрать браузер, почтовый клиент, файловый менеджер и эмулятор терминала.

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