На главную

Библиотека Интернет Индустрии I2R.ru

Rambler's Top100

Малобюджетные сайты...

Продвижение веб-сайта...

Контент и авторское право...

Забобрить эту страницу! Забобрить! Блог Библиотека Сайтостроительства на toodoo
  Поиск:   
Рассылки для занятых...»
I2R » Хакеры и безопасность » Защита данных
Разделы в "Защита данных":
Криптография

Безопасная удаленная консоль — своими руками

Услышав выражение “работать с консоли”, вы, вероятно, сразу представите себе человека, находящегося в помещении вычислительного центра неподалеку от серверной стойки, и вы уверены, что он расположился на достаточно близком расстоянии от машины, пребывающей в данный момент в его полном распоряжении (признайтесь, что примерно так вы и думали).

Что и говорить, режим консольного доступа — вещь хорошая. На консоли вы можете выполнять недоступные в обычном режиме удаленного управления действия. Например, в режиме удаленного управления, как правило, нельзя увидеть статусную информацию, выдаваемую программой начальной загрузки системы, так что, если во время перезагрузки сервера в дисководе окажется забытая дискета, операционная система компьютера может и не загрузиться. Изредка случается, что сетевой адаптер выходит из строя или технический персонал временно отключает от сети сервер. И какой бы хорошей ни была ОС, время от времени у вас будет возникать необходимость в доступе к консоли. Но режим консольного доступа применим не только к серверам. Такого доступа могут потребовать и модернизация ПО, управление маршрутизаторами, коммутаторами, устройствами VPN и другим сетевым оборудованием. Если ваша сеть перестанет функционировать в два часа ночи, то вряд ли у вас возникнет желание мчаться в офис и устранять неполадки в работе маршрутизатора. К счастью, существует метод, который позволяет осуществлять удаленное безопасное физическое соединение с управляемым устройством.

Многие сетевые устройства оснащаются последовательными портами RS-232 для поддержки консольных соединений. В частности, конфигурирование некоторых межсетевых экранов выполняется исключительно через последовательный интерфейс. С этой целью их обычно подсоединяют к последовательным портам настольных или портативных компьютеров и используют программу HyperTerminal. Большинство последовательных кабелей имеют длину около двух метров, но, даже если вы купите самый длинный кабель, это едва ли можно будет назвать гибким решением. Доступ к консольному порту гораздо удобнее осуществлять удаленно. Такой режим позволяет сконфигурировать маршрутизатор, не заходя в машинный зал.

Обеспечьте физическую защиту

Прежде чем приступать к организации безопасного удаленного доступа к консоли, убедитесь в том, что сама консоль хорошо защищена. Отчасти ее безопасность зависит от используемой операционной системы. ОС должна предоставлять окно регистрации, предотвращать случаи отгадывания пароля и не допускать перезагрузки системы с клавиатуры, т. е. с помощью комбинации клавиш Ctrl-Alt-Del. Убедитесь в том, что доступ к консоли надежно защищен паролем — как это ни удивительно, но на многих маршрутизаторах пароли не установлены. Не используйте никаких паролей по умолчанию. Старайтесь выбирать те из них, которые практически невозможно отгадать. Все это — минимальный стандартный набор мер безопасности.

Важно также помнить, что любой человек, имеющий физический доступ к системе, может парализовать ее работу простым нажатием кнопки сброса питания. В некоторых компьютерных системах предусмотрен специальный режим, позволяющий блокировать кнопку сброса питания, клавиатуру и мышь. Таким образом, вы можете “запереть” свой компьютер почти точно так же, как вы запираете свои автомобиль или дом. Кроме этого, практически любая программа BIOS позволяет изменять порядок обращения к дисководам при начальной загрузке системы. Обычно при изготовлении оборудования реализуют следующий порядок обращения по умолчанию: дискета — CD-ROM — жесткий диск. Возможно, для своего сервера вы захотите изменить этот порядок, поставив на первое место жесткий диск (для выполнения начальной загрузки с дискеты или с компакт-диска только при неполадках в работе ОС). Чтобы кто-нибудь еще, кроме вас, не попытался изменить установленный вами порядок обращения к дискам при начальной загрузке, защитите паролем доступ к BIOS.

Независимо от того, используете ли вы сервер или другое сетевое устройство, держите их в запираемой на ключ комнате или в охраняемом помещении, доступ в которое разрешен только доверенным лицам. Если у вас в резерве есть деньги, установите сигнализацию. Введите систему фиксации времени прихода и ухода сотрудников. Это поможет вам при нештатных ситуациях с вашим оборудованием. Ограничьте доступ посторонних лиц в машинный зал (или к аппаратному шкафу), заранее уведомив охрану обо всех сотрудниках, которым он разрешен (это особенно удобно, когда вам придется брать ключ у охранников, если вы нечаянно забудете свой дома). Неплохой мерой предосторожности является и вывешивание на двери машинного зала списка людей, допущенных к работе в нем. И еще, никому, кроме себя самого, дверь не открывайте.

Конечно, есть люди, которые сумеют беспрепятственно миновать пост охраны. Мне как-то попалось на глаза просроченное на целый год временное служебное удостоверение. Его использовали для того, чтобы пройти в помещение, в то время как отдел охраны осуществлял лишь беглый визуальный контроль пропусков. А в одной из организаций, где я раньше работал, я однажды случайно показал охраннику вместо своего пропуска карточку спортклуба и беспрепятственно попал в одно из зданий, в которое заходил лишь изредка.

Организуйте удаленное соединение

Удаленный консольный сервер можно либо купить, либо смастерить самому. Такой сервер должен иметь несколько портов RS-232, к которым подключается различное сетевое оборудование. Доступ к консольному серверу осуществляется через шифрованное соединение SSH (Secure Shell). Он и выглядит, и работает как переключатель KVM (Keyboard, Video, Mouse), но только в удаленном режиме: вы подключаете его к сети и осуществляете доступ к нему по протоколу IP.

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

Соберите свой собственный сервер

Сконструировать свой собственный консольный сервер совсем нетрудно. Все, что вам потребуется, это старый персональный компьютер и несколько дополнительных интерфейсных карт (ведь большинство ПК оснащаются только двумя последовательными портами). В продаже имеются различные многопортовые карты. Фирма Digi International, например, выпускает многопортовые карты, поддерживаемые ОС Linux. Максимальная длина соединений RS-232 составляет всего около 8 м — не забудьте об этом.

В связи с тем, что реализация консольного доступа не требует больших накладных расходов и пропускной способности, для этого вполне подойдут даже устаревшие модели компьютеров с процессорами 386-й и 486-й серий. На базе ОС Linux можно построить прекрасный недорогой консольный сервер. Вы просто устанавливаете с ним соединение SSH и получаете доступ к его последовательным портам. Особенно полезны такие серверы при организации коммутируемых соединений через модем. Но совсем не обязательно устанавливать на консольных серверах ОС Linux — здесь, в статье, мы использовали ее только в качестве примера. Серверы с успехом будут работать и под управлением других операционных систем из семейства Unix, например таких, как OpenBSD. Только имейте в виду, что соглашения об именовании последовательных портов, принятые в различных версиях Unix, могут слегка варьироваться.

Итак, сначала установите ОС Linux. Добейтесь, чтобы она распознала все последовательные порты вашего консольного сервера. В зависимости от набора микросхем последовательного порта (а также в том случае, если устанавливались дополнительные интерфейсные платы), возможно, вам потребуется инсталлировать специализированные драйверы. Подробное руководство по конфигурированию и инсталляции последовательных портов можно найти в сети Интернет по адресу: http://www.linuxdoc.org/HOWTO/Serial-HOWTO.html. Правильно установленные последовательные порты должны появиться в файловой системе под соответствующими именами драйверов устройств — это /dev/ttyS0, /dev/ttyS1 и т. д.

Затем установите программу, способную взаимодействовать с последовательными портами. Можно загрузить бесплатную программу C-Kermit (http://www.columbia.edu/kermit). Как правило, доступ к последовательным портам разрешается только привилегированным пользователям. Информацию о том, как разрешить другим категориям пользователей запускать Kermit, можно найти по адресу ftp://kermit.columbia.edu/kermit/f/ckuins.txt.

Убедившись, что все работает нормально, переходите к запуску программы Kermit. Чтобы организовать взаимодействие с подключенным к первому последовательному порту устройством, введите команду set line/dev/ttyS0, потом — connect — и соединение будет установлено. Если устройство не выдает сигнал обнаружения несущей, то команду connect должна предварить команда set carrier-watch off. Программа Kermit сама известит вас об этом. Разорвать соединение вы сможете, напечатав Ctrl-\ C.

Использование символьных ссылок позволяет сделать имена устройств более “дружественными”. Наберите, например, команду ln -s /dev/ttyS1 /dev/HP_Switch. Это обойдется вам гораздо дешевле, чем покупка специального оборудования для поддержки удаленной консоли. Однако, если у вас имеется много устройств (в частности, требуется поддержка 20—30 консолей), специализированное оборудование может работать более надежно. Одна из проблем, возникающих при использовании данного варианта инсталляции консольного сервера, состоит в том, что в случае отказа сети вы не сможете получить доступ к устройствам. Особенно проблематичным в такой ситуации окажется управление маршрутизатором Интернет.

Запасной выход через телефон

Когда вы были ребенком, ваши родители когда-нибудь прятали запасной ключ под ковриком на тот случай, если вы забудете свой дома? А если бы вор ненароком сдвинул коврик ногой и увидел ключ? Тогда бы он мог легко ограбить ваш дом, не так ли? Аналогичная ситуация имеет место и при установке запасного коммутируемого соединения. Преимущество такого соединения заключается в том, что, если случится отказ в работе вашей сети, вы по-прежнему сможете соединиться с нужным вам устройством. Недостатком же его является то, что оно выполняется в обход межсетевого экрана и при этом может быть обнаружено посторонними лицами. У компьютерных взломщиков есть специальные программы (они называются “боевые номеронабиратели” — war dialer, которые обзванивают все телефонные номера и УАТС, имеющиеся в организации, и определяют наличие модемов. Такие программы обычно запускаются по ночам, когда в офисе никого нет, и настолько просты в применении, что любой мало-мальски сведущий в написании сценариев человек сумеет воспользоваться ими.

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

Некоторые производители выпускают устройства, поддерживающие исключительно коммутируемые соединения. Возможно, вам приходилось иметь с ними дело. Убедитесь в том, что ваше устройство коммутируемого доступа обеспечивает аутентификацию пользователей по паролю. Имейте в виду, что ваша внутрикорпоративная сеть может оказаться неисправной или недоступной именно в то время, когда вам понадобится выполнить процедуру аутентификации. По этой причине при работе в некоторых сетевых средах не следует использовать адаптер для коммутируемых линий, процедура аутентификации которого осуществляется, например, через домен Microsoft Windows NT или сервер RADIUS. Разве это будет не ужасно, если ваш маршрутизатор вдруг откажет, а устройство коммутируемого доступа будет лишено возможности “общаться” с первичным контроллером домена (Primary Domain Controller — PDC), из-за чего вы, в свою очередь, не сможете соединиться с маршрутизатором?!

Чтобы повысить степень информационной безопасности консольного устройства, доступ к которому вы пытаетесь получить, установите на него пароль. При этом любому человеку, желающему установить консольное соединение, потребуется знание двух паролей, что, естественно, удваивает степень защищенности. Осуществив все эти шаги, вы получите дешевый консольный сервер с доступом по коммутируемой линии на базе ОС Linux. А поскольку вы добавите к нему модем, то он сможет работать и как сервер PPP.

В продаже имеются специальные модемы с поддержкой функции шифрования (encryption modems). Общеизвестно, что телефонные линии с легкостью прослушиваются. Легче всего это делать, “врезавшись” в линию снаружи здания. Некоторые производители для предотвращения прослушивания коммутируемых линий используют ПО Randata SecurPac и SecureTel Sentry Modem. Эти продукты позволяют на самом низком уровне шифровать каждый байт передаваемых данных, не открывая постороннему взгляду никакой информации, касающейся удаленной системы, — ни IP-адресов, ни TCP-сигнатур.

Еще один положительный момент использования указанных продуктов состоит в том, что они требуют применения шифрующих модемов на обоих концах коммутируемого соединения, тогда как взломщик не всегда располагает и одним-то шифрующим модемом. Это резко ограничивает его возможности для несанкционированного вторжения в удаленную сеть через “запасной выход”. Модемы с шифрованием можно использовать также для отправки факсов, не прибегая к услугам сетей VPN или факс-серверов. Поддерживающие стандартный набор AT-команд модемы вполне могут выполнять обмен ключами шифрования. При этом дополнительное ПО вам не потребуется, равно как и обучение пользователей.

В этих продуктах используются разные алгоритмы шифрования данных, такие, как DES (Data Encryption Standard), AES (Advanced Encryption Standard), 3DES, Skipjack, и фирменные методы шифрования. На рынке имеются модемы с шифрованием для обычных телефонных линий и линий ISDN, Frame Relay и других последовательных соединений.

Если позволяет инфраструктура телефонной сети, можно подключить к линии определитель телефонных номеров звонящих абонентов. Он устанавливается между устройством коммутируемого доступа и телефонной розеткой и регистрирует телефонные номера тех, кто пытается дозвониться в вашу сеть, а также фиксирует время и дату поступления каждого звонка (а в ряде случаев и фамилию звонящего или наименование организации, из которой поступил звонок). Использование определителей номеров — эффективный способ отслеживания всех звонящих абонентов и выявления попыток вторжения во внутрикорпоративную сеть, особенно тогда, когда само устройство коммутируемого доступа не поддерживает данную функцию.

Передача информации о звонящем абоненте осуществляется в период между первым и вторым гудком. Ваше устройство коммутируемого доступа должно быть настроено таким образом, чтобы оно не “снимало трубку” перед вторым гудком — не все устройства поддерживают такую возможность. У его производителя вам нужно выяснить, после какого по счету гудка оно отвечает на вызов.

Еще одной хорошей идеей при использовании определителей телефонных номеров является блокировка анонимных звонков. Она позволит снизить число звонков, поступающих с частных телефонных аппаратов, хотя исключить их полностью вам, скорее всего, не удастся. Дело в том, что практически с любым телефонным аппаратом можно выполнить следующий трюк: набрав перед телефонным номером некую специальную комбинацию клавиш (например, *82), вы блокируете работу определителя телефонных номеров.

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

К настройке удаленного коммутируемого доступа следует относиться даже с большей осторожностью, чем вы обычно относитесь к конфигурированию самой сети. Не все консоли защищены паролями, а некоторые из них (консолей) позволяют лишь просматривать различные конфигурационные параметры и настройки, но не изменять их. Запасное коммутируемое соединение не защищено межсетевым экраном и не попадает в поле зрения системы обнаружения вторжений. Вполне возможно, что дыры, возникающие в результате плохой реализации этих соединений, выявляются труднее, чем какие бы то ни было другие дыры в системе сетевой защиты. Тем не менее соответствующие меры безопасности, тщательное планирование и своевременное решение организационных вопросов позволят вам благополучно организовать удаленный консольный доступ.

Майкл Дж. Димариа
Сети и Системы Связи

Рассылки Subscribe.Ru
Все о защите данных на Идваре
Другие разделы
Криптография
Прочие опасности
Вирусы
Хакеры
Киберпреступность
Уязвимость ПО
Новое в разделе
Защита данных
I2R-Журналы
I2R Business
I2R Web Creation
I2R Computer
рассылки библиотеки +
И2Р Программы
Всё о Windows
Программирование
Софт
Мир Linux
Галерея Попова
Каталог I2R
Партнеры
Amicus Studio
NunDesign
Горящие путевки, идеи путешествийMegaTIS.Ru

2000-2008 г.   
Все авторские права соблюдены.
Rambler's Top100