aboutsummaryrefslogtreecommitdiff
path: root/ru_RU.KOI8-R
diff options
context:
space:
mode:
authorEitan Adler <eadler@FreeBSD.org>2015-04-05 15:45:33 +0000
committerEitan Adler <eadler@FreeBSD.org>2015-04-05 15:45:33 +0000
commit2e5158166a88b2db02f9dc3a1f57c6f4323b6ea2 (patch)
tree7b08b56ad74bec09397d8808d48c180befa7c16b /ru_RU.KOI8-R
parent75bd538a19978cdcd8b7723e991ef3b1493bbafe (diff)
downloaddoc-2e5158166a88b2db02f9dc3a1f57c6f4323b6ea2.tar.gz
doc-2e5158166a88b2db02f9dc3a1f57c6f4323b6ea2.zip
articles/console-server: remove it
- references mostly outdated hardware - doesn't use modern technologies (IPMI, nmdm, bhyve) - the SUN hardware peculiarities are not useful anymore - there are other better references on crimping custom serial cables - MAKEDEV is no a thing anymore there might be room for a modern version of this article in the handbook but there is little that is salvageable from this article. Discussed with: bcr, xmj, sbruno, cem
Notes
Notes: svn path=/head/; revision=46473
Diffstat (limited to 'ru_RU.KOI8-R')
-rw-r--r--ru_RU.KOI8-R/articles/Makefile1
-rw-r--r--ru_RU.KOI8-R/articles/console-server/Makefile26
-rw-r--r--ru_RU.KOI8-R/articles/console-server/article.xml1529
3 files changed, 0 insertions, 1556 deletions
diff --git a/ru_RU.KOI8-R/articles/Makefile b/ru_RU.KOI8-R/articles/Makefile
index d1e3a5940e..27823bfa08 100644
--- a/ru_RU.KOI8-R/articles/Makefile
+++ b/ru_RU.KOI8-R/articles/Makefile
@@ -9,7 +9,6 @@
SUBDIR =
SUBDIR+= committers-guide
-SUBDIR+= console-server
SUBDIR+= contributing
#SUBDIR+= contributors
SUBDIR+= cups
diff --git a/ru_RU.KOI8-R/articles/console-server/Makefile b/ru_RU.KOI8-R/articles/console-server/Makefile
deleted file mode 100644
index e8a458caf4..0000000000
--- a/ru_RU.KOI8-R/articles/console-server/Makefile
+++ /dev/null
@@ -1,26 +0,0 @@
-#
-# The FreeBSD Russian Documentation Project
-#
-# $FreeBSD$
-# $FreeBSDru: frdp/doc/ru_RU.KOI8-R/articles/console-server/Makefile,v 1.3 2004/09/06 07:19:39 marck Exp $
-#
-# Original revision: r39631
-#
-# Article: Console Server
-#
-
-DOC?= article
-
-FORMATS?= html
-WITH_ARTICLE_TOC?= YES
-
-INSTALL_COMPRESSED?= gz
-INSTALL_ONLY_COMPRESSED?=
-
-SRCS= article.xml
-IMAGES_EN= tk0231-9-1.png
-
-URL_RELPREFIX?= ../../../..
-DOC_PREFIX?= ${.CURDIR}/../../..
-
-.include "${DOC_PREFIX}/share/mk/doc.project.mk"
diff --git a/ru_RU.KOI8-R/articles/console-server/article.xml b/ru_RU.KOI8-R/articles/console-server/article.xml
deleted file mode 100644
index c7de9f1551..0000000000
--- a/ru_RU.KOI8-R/articles/console-server/article.xml
+++ /dev/null
@@ -1,1529 +0,0 @@
-<?xml version="1.0" encoding="koi8-r"?>
-<!DOCTYPE article PUBLIC "-//FreeBSD//DTD DocBook XML V5.0-Based Extension//EN"
- "http://www.FreeBSD.org/XML/share/xml/freebsd50.dtd">
-<!--
- The FreeBSD Russian Documentation Project
-
- $FreeBSDru: frdp/doc/ru_RU.KOI8-R/articles/console-server/article.xml,v 1.13 2007/01/06 18:28:16 gad Exp $
-
- Original revision: r43184
--->
-<article xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" version="5.0" xml:lang="ru">
- <info><title>Консольный сервер</title>
-
-
- <authorgroup>
- <author><personname><firstname>Gregory</firstname><surname>Bond</surname></personname><affiliation>
- <address><email>gnb@itga.com.au</email></address>
- </affiliation></author>
- <author><personname><firstname>Андрей</firstname><surname>Захватов</surname></personname><contrib>Перевод на русский язык: </contrib></author>
- <author><personname><firstname>Дмитрий</firstname><surname>Морозовский</surname></personname><contrib>Перевод на русский язык: </contrib></author>
- </authorgroup>
-
- <legalnotice xml:id="trademarks" role="trademarks">
- &tm-attrib.freebsd;
- &tm-attrib.cisco;
- &tm-attrib.intel;
- &tm-attrib.lantronix;
- &tm-attrib.microsoft;
- &tm-attrib.opengroup;
- &tm-attrib.sun;
- &tm-attrib.general;
- </legalnotice>
-
- <pubdate>$FreeBSD$</pubdate>
-
- <releaseinfo>$FreeBSD$</releaseinfo>
-
- <abstract>
- <para>В этом документе описывается, как можно использовать &os;,
- аппаратное и программное обеспечение, работающее с &os;, для построения
- <quote>консольного сервера</quote>.
- Консольным сервером обычно называют машину, которую можно использовать
- для отслеживания консолей многих других машин вместо использования
- многих последовательных терминалов.</para>
- </abstract>
- </info>
-
- <indexterm>
- <primary>консольный сервер</primary>
- </indexterm>
-
- <sect1 xml:id="problem">
- <title>Проблема</title>
-
- <para>У вас есть компьютерный зал с множеством &unix;-серверов и
- коммуникационным оборудованием. Каждой этой машине необходима
- последовательная консоль. Однако последовательные терминалы трудно найти
- и они достаточно дороги (особенно по сравнению с ПК, обладающими гораздо
- большими возможностями). И всё это в компьютерном зале занимает много
- места.</para>
-
- <para>Вам необходим доступ к консоли, потому что когда что-то не работает,
- сообщения об ошибках направляются туда. И некоторые работы выполняются с
- консоли (к примеру, при возникновении проблем с загрузкой или при
- установке или обновлении ОС). Некоторые &unix;-системы позволяют
- переходить с консоли в режим монитора ПЗУ, который иногда является
- единственным способом заставить функционировать неработающую машину.
- Часто это осуществляется посылкой <literal>LINE BREAK</literal> на
- последовательный порт консоли.</para>
-
- <para>Если мы собираемся поработать с консолями, то было бы великолепно
- осуществить ещё несколько вещей:</para>
-
- <itemizedlist>
- <listitem>
- <para>Удалённый доступ. Даже в одном помещении было бы неплохо иметь
- доступ ко всем консолям с вашего рабочего места без необходимости
- передвигаться по компьютерному залу. А иногда машины расположены
- где-то далеко, может быть, даже в другой стране.</para>
- </listitem>
-
- <listitem>
- <para>Протоколирование. Если что-то идёт не так, вам не помешает
- возможность посмотреть предыдущую выдачу на консоль, чтобы понять
- происходящее. Обычные консольные экраны дают вам последние 25 строк.
- Чем таких строк будет больше, тем лучше.</para>
- </listitem>
-
- <listitem>
- <para>Независимость от сети. Решение должно функционировать даже при
- неработающей сети. В конце концов, больше всего консоли вам нужны
- именно при отключении сети! Ещё лучше добиться независимости от
- сети с возможностью удалённого доступа.</para>
- </listitem>
-
- <listitem>
- <para>Отсутствие одной точки, критичной для работы. Консольная
- система, которая приводит к неработоспособности всех машин при сбое,
- не нужна. Это особенно важно при использовании с &unix;-хостами
- Sun, так как они будут воспринимать выключение терминала как
- <literal>BREAK</literal> и будут переходить в режим
- ROM-монитора.</para>
- </listitem>
-
- <listitem>
- <para>Интерфейс с пейджинговым или другим подобным устройством подачи
- предупреждающих сообщений.</para>
- </listitem>
-
- <listitem>
- <para>Возможность удалённого выключения и повторного включения
- машин.</para>
- </listitem>
-
- <listitem>
- <para>Не <emphasis>слишком</emphasis> высокая стоимость. Ещё лучше,
- если система будет бесплатной!</para>
- </listitem>
- </itemizedlist>
- </sect1>
-
- <sect1 xml:id="possible-solutions">
- <title>Возможные решения</title>
-
- <para>Если для ваших серверов вы используете ПК-оборудование, то одним из
- возможных решений является
- <quote><acronym>KVM</acronym>-переключатель</quote>. Такой
- <acronym>KVM</acronym>-переключатель позволяет использовать одну
- клавиатуру, видеомонитор и мышь с несколькими системными блоками. Это
- снижает остроту проблемы с физическим пространством, однако работает
- только с ПК-оборудованием (а не с любыми типами имеющихся
- коммуникационных устройств), и не обеспечивает доступ вне компьютерного
- зала. При этом даже отсутствует прокрутка истории или протоколирование,
- и вам нужно организовывать оповещение каким-то другим способом. Большим
- минусом является то, что это не работает с устройствами только с
- последовательным интерфейсом, таким, как коммуникационное оборудование.
- Это означает, что даже в зале, заполненном ПК-серверами, вам может
- оказаться нужным доступ к последовательной консоли.</para>
-
- <note>
- <para>На самом деле, Doug Schache указал, что вы
- <emphasis>можете</emphasis> найти <acronym>KVM</acronym>-переключатели
- с поддержкой последовательных консолей или совместимые как с Sun, так
- и с ПК, но они дороги. Посмотрите, например, на сайте <link xlink:href="http://www.avocent.com/">Avocent</link>.)</para>
- </note>
-
- <para>Вы можете попытаться обойтись без консольного терминала, однако когда
- творятся странные вещи, вам <emphasis>действительно</emphasis> нужно
- видеть происходящее на консоли. И вам нужно использовать консоль для
- загрузки и выполнения таких действий, как установка или обновление
- ОС.</para>
-
- <para>Вы можете попытаться выделить один консольный терминал и
- переключаться при необходимости между серверами, либо при помощи
- последовательного переключателя, либо просто подключая его к нужной
- машине. Последовательные переключатели также трудно найти и они не
- дёшевы, к тому же могут иметь проблемы с посылкой сигнала
- <literal>BREAK</literal> при переключении. И (если ваш компьютерный
- зал похож на наш) у вас никогда не будет совпадать комбинация кабелей
- для подключения к нужной машине, и даже если все кабели на месте,
- вы никогда с точностью не будете знать, какая именно комбинация окончаний
- <literal>DTE/DCE</literal> ведёт к конкретному оборудованию. Так что
- первые 10 минут вы потратите на возню с исходящими и входящими
- окончаниями, тогда как сервер не работает, а пользователи уже кричат.
- Конечно, это не удовлетворяет требованиям удалённого подключения к
- системе и протоколирования. И неизбежно консоль окажется не подключенной
- к нужной машине, так что вы потеряете все консольные сообщения, могущие
- рассказать вам о происходящем.</para>
-
- <para>Одним из распространённых решений является использование аппаратного
- терминального сервера. Обычно последовательные порты подключены к
- консолям различных машин, и настроены на <quote>обратный
- telnet-доступ</quote>. Это значит, что пользователь может подключиться
- по протоколу telnet к определённому IP/порту и оказаться подключенным к
- соответствующей консоли. Это может быть очень эффективным с точки зрения
- стоимости, так как подходящие старые терминальные серверы можно найти
- по достаточно низкой цене (полагаем, что пары таких у вас ещё нет). И,
- конечно, они доступны по сети, что подходит для организации управления
- из сети. Однако у них есть один большой недостаток: если сеть не
- работает, то вы <emphasis>теряете</emphasis> доступ к любой консоли,
- даже если находитесь прямо перед машиной. (Это может быть несколько не
- так, если у вас есть подходящий терминал, подключенный к одному из портов
- терминального сервера, с которого можно выполнять подключения, но
- программное обеспечение терминального сервера может этого и не
- поддерживать.) К тому же при этом отсутствует протоколирование и повтор
- консольных сообщений. Однако приложив некоторые усилия и используя
- определённое программное обеспечение, такое, как
- <application>conserver</application> (описано далее), эту систему можно
- заставить хорошо работать.</para>
-
- <para>Ещё один подход, предложенный Броном Гондваной (Bron Gondwana), похож
- на описанное выше решение. Если ваши серверы имеют несколько
- последовательных портов, вы можете подключить каждый свободный
- последовательный порт к консольному порту <quote>ближайшего</quote>
- сервера, создав тем самым кольцо консольных соединений (в некотором
- порядке). Это может достаточно хорошо работать вместе с программным
- обеспечением <application>conserver</application>, однако, с другой
- стороны, может несколько запутывать (в смысле необходимости запоминания,
- какой порт к какой консоли подключен). И этого не получится, если вам
- нужно использовать последовательные порты в других целях (таких, как
- подключение модемов) либо на ваших машинах нет свободных портов.</para>
-
- <para>Либо, если ваш бюджет превышает необходимость в хакерских решениях,
- вы можете приобрести одно из готовых решений. Они различаются по
- стоимости и своим возможностям. Посмотрите, к примеру,
- <link xlink:href="http://www.lightwavecom.com/">Lightwave</link>,
- <link xlink:href="http://www.perle.com/">Perle</link>,
- <link xlink:href="http://www.avocent.com/">Avocent</link> или
- <link xlink:href="http://www.blackbox.com/faxbacks/23000/23362.PDF">Black
- Box</link>. Эти решения могут оказаться достаточно дорогими - обычно
- от 100 до 400 долл. США за порт.</para>
- </sect1>
-
- <sect1 xml:id="our-solution">
- <title>Наше решение</title>
-
- <para>В свете требований выше мы выбрали решение на основе выделенного ПК
- под управлением &unix; с многопортовым последовательным адаптером и
- определённым программным обеспечением, предназначенным для работы с
- последовательными консолями.</para>
-
- <para>Оно состоит из следующих элементов:</para>
-
- <itemizedlist>
- <listitem>
- <para>Подержанный ПК. Мы использовали &pentium; 166 с шиной PCI,
- 2-гигабайтным жёстким диском и 64 мегабайтами ОЗУ. Это превышает
- требования выполняемой задачи, более чем достаточным будет P-100,
- 500 Мб, 32 Мб.</para>
- </listitem>
-
- <listitem>
- <para>&unix;-система для ПК. Мы использовали <link xlink:href="&url.base;/index.html">&os; 4.3</link>, так как в нашем офисе
- она использовалась и для других задач.</para>
- </listitem>
-
- <listitem>
- <para>Многопортовый последовательный адаптер. Мы выбрали 8-портовый
- адаптер <link xlink:href="http://www.stallion.com/html/products/easyio.html">&easyio;
- PCI</link> компании <link xlink:href="http://www.stallion.com/">Stallion
- Technologies</link>. Это стоило нам порядка $AUD740, меньше чем
- $100 за порт, заплаченных <link xlink:href="http://www.ht.com.au/">Harris
- Technologies</link> (у них есть много всего, но это не обязательно
- самое дешёвое место - поищите поблизости, вы можете найти место
- гораздо дешевле). Адаптер имеет сзади большой разъём DB80 и
- подключаемый кабель, имеющий блок из 8 гнёзд RJ-45. (Мы выбрали
- вариант с RJ-45, так как наша кабельная система полностью построена
- на RJ-45. Это позволяет нам переключать соединения от нужного блока
- к консольному серверу без дополнительных кабелей.) Это единственная
- вещь, которую нам пришлось приобрести, чтобы всё заработало.</para>
-
- <note><para>
- В России, возможно, будет проще найти карты <link xlink:href="http://www.cronyx.ru/hardware/ompci.html">Omega PCI</link>
- компании <link xlink:href="http://www.cronyx.ru/">КБ&nbsp;"Кроникс" /
- Cronyx Engineering</link>, менее $40 за порт.
- [<emphasis>прим. перев.</emphasis>].
- </para></note>
- </listitem>
-
- <listitem>
- <para>Мы построили два сервера, по одному для каждого машинного зала,
- с 8 портами в одном и 16 портами (двумя адаптерами &easyio; PCI) в
- другом. Если бы нам нужно было более 16 портов, то по стоимости
- более эффективным было бы использование других адаптеров Stallion.
- Теоретически мы можем поддерживать 128 портов на каждом сервере (при
- помощи 2 хост-адаптеров EasyConnect 8/64 и 8 16-портовых модулей
- RJ-45) общей стоимостью $AUD12,000.</para>
- </listitem>
-
- <listitem>
- <para>Модем для удалённого доступа к хосту консольного сервере при
- отсутствии сети. Мы ещё этого не делали, так как компьютерный зал
- находится рядом, но когда мы перенесем сервер в Сидней, мы добавим
- модем. Идея заключается в том, что при отсутствии сети вы можете
- позвонить, подключиться к серверной машине и запустить консольную
- программу локально. В целях безопасности мы, скорее всего, оставим
- модем выключенным, и попросим тамошних жителей Сиднея нажать хорошо
- видную кнопку при необходимости.</para>
- </listitem>
-
- <listitem>
- <para>Программа под названием <link xlink:href="http://www.conserver.com/">
- conserver</link>. Она выполняет всё, что требуется для включения
- удалённого доступа к консолям, обеспечивает повтор ввода,
- протоколирование и так далее. Она поставляется в виде двух блоков:
- сервер под именем <application>conserver</application>, работающий
- как даемон и подключающийся к последовательным портам, выполняющий
- ведение журналов и прочие действия, и клиентская программа под
- названием <application>console</application>, которая может
- подключаться к серверу, показывать консольные сообщения, посылать
- последовательности нажатий клавиш (и <literal>BREAK</literal>) и тому
- подобное.</para>
- </listitem>
- </itemizedlist>
-
- <para>Такая архитектура обеспечивает выполнение всех основных требований,
- кроме удалённого управления электропитанием:</para>
-
- <itemizedlist>
- <listitem>
- <para>Удалённый доступ обеспечивается за счёт того, что клиентская
- программа <application>console</application> работает в сети.</para>
- </listitem>
-
- <listitem>
- <para>Протоколирование ведётся программой
- <application>conserver</application>.</para>
- </listitem>
-
- <listitem>
- <para>Если сеть не работает, то мы можем использовать консоль ПК для
- локального запуска клиента <application>console</application>. В
- случае географически удалённых мест мы можем добавить модем для
- коммутируемого доступа к командной строке сервера для запуска
- клиента.</para>
- </listitem>
-
- <listitem>
- <para>Установив патчи на серверы &solaris; (обратитесь к <xref linkend="solaris"/>), мы можем избежать неработоспособности всего
- компьютерного зала при сбое в консольном сервере на базе ПК (или
- при отключения электропитания, или по какой-то другой
- причине).</para>
- </listitem>
-
- <listitem>
- <para>У нас уже есть пейджинговое оповещение с другой установленной
- нами системы, однако на консольном сервере есть вся нужная
- информация журналов, так что при необходимости это может быть легко
- реализовано. И даже есть модем для звонка в пейджинговую
- компанию!</para>
- </listitem>
-
- <listitem>
- <para>На данный момент мы не поддерживаем удалённое управление
- электропитанием. Некоторые версии программы
- <application>conserver</application> это поддерживают, но это требует
- наличия специальных адаптеров, управляемых через последовательные
- соединения. У нас нет острой необходимости по удалённому выключению
- (у нас есть обслуживающий персонал в каждом удалённом офисе, который
- может это сделать под нашим руководством), так что это не большая
- проблема, и мы можем легко это добавить, если увидим в этом
- необходимость и получим соответствующее оборудование.</para>
- </listitem>
-
- <listitem>
- <para>Это решение было очень дешёвым. Общая стоимость 9-портового
- сервера составила $AUD750 за адаптеры ввода/вывода, так как мы
- использовали устаревший ПК и у нас имелось оборудование в виде
- специальных кабелей. Если бы мы всё покупали, то это обошлось бы
- всего лишь примерно в $AUD1500 за 8-портовый сервер.</para>
- </listitem>
- </itemizedlist>
- </sect1>
-
- <sect1 xml:id="setting-up-server">
- <title>Настройка сервера</title>
-
- <sect2 xml:id="patching-stallion">
- <title>Проверка драйвера Stallion</title>
-
- <para> &os; адекватно поддерживает адаптеры Stallion начиная с версии 4.4.
- Если ваша версия старше, вам потребуется обновить ее (это нужно сделать
- еще и для того, чтобы ваша система не была подвержена известным
- проблемам защиты). Обратитесь к описанию в файле
- <filename>/usr/src/UPDATING</filename> и <link xlink:href="&url.books.handbook;/makeworld.html">Руководстве
- &os;</link> за подробной информацией об обновлении системы.</para>
- </sect2>
-
- <sect2 xml:id="configuring-kernel">
- <title>Конфигурация нового ядра</title>
-
- <para>Драйвер Stallion не включён в используемое по умолчанию ядро
- <literal>GENERIC</literal>, так что вам нужно создать конфигурационный
- файл ядра с соответствующими записями. Обратитесь к справке по
- &man.stl.4; и соответствующему разделу <link xlink:href="&url.books.handbook;/kernelconfig.html">Руководства
- &os;</link>.</para>
- </sect2>
-
- <sect2 xml:id="making-devices">
- <title>Создание устройств</title>
-
- <para>Для адаптера Stallion вам нужно создать файлы устройств (которые по
- умолчанию не создаются). Во время выполнения описанной выше процедуры
- новая версия <filename>/dev/MAKEDEV</filename> с поддержкой Stallion
- будет создана утилитой <application>mergemaster</application>. Если у
- вас имеется адаптер Stallion с более чем 8 портами, то вам нужно
- отредактировать <filename>/dev/MAKEDEV</filename> и изменить
- определение <literal>maxport</literal> в районе строки 250. По
- умолчанию <filename>MAKEDEV</filename> создает файлы устройств для 8
- портов, чтобы уменьшить размер каталога
- <filename>/dev</filename>.</para>
-
- <para>Выполните примерно такую команду:
-
- <screen>&prompt.root; <userinput>cd /dev/ &amp;&amp; sh MAKEDEV cuaE0</userinput></screen>
-
- для создания устройств для исходящих звонков для первого адаптера
- Stallion. Для получения более полной информации обратитесь к
- разъяснениям в <filename>MAKEDEV</filename> и справочной странице
- &man.stl.4;.</para>
- </sect2>
-
- <sect2 xml:id="compiling-conserver">
- <title>Компиляция conserver</title>
-
- <note>
- <para>Посмотрите раздел <xref linkend="conserver-versions"/> о версиях
- <application>conserver</application>; используемая мной версия
- находится в коллекции портов &os;, однако, существуют и другие
- версии.</para>
- </note>
-
- <para>Имеется два способа установки <application>conserver</application>.
- Вы можете либо скомпилировать её из исходных текстов, либо
- воспользоваться механизмом портов &os;.</para>
-
- <sect3 xml:id="using-ports">
- <title>Использование механизма портов</title>
-
- <para>Использование портов является более ясным подходом, так как
- система пакетов может отслеживать установленное программное
- обеспечение и полностью удалять его, если оно не используется.
- Рекомендуем использовать порт <package>comms/conserver-com</package>.
- Перейдите в каталог этого порта и
- (работая как пользователь <systemitem class="username">root</systemitem>) наберите:</para>
-
- <screen>&prompt.root; <userinput>make DEFAULTHOST=<replaceable>consolehost</replaceable> install</userinput></screen>
-
- <para>где <replaceable>consolehost</replaceable> является именем
- машины, на которой работает консольный сервер. Задание этого при
- компиляции бинарного файла избавляет от необходимости указывать его
- каждый раз при запуске программы либо поддерживать файлы
- <filename>conserver.cf</filename> для каждого хоста. Эта команда
- загрузит, установит патчи, сконфигурирует, скомпилирует и установит
- программу <application>conserver</application>.</para>
-
- <para>После этого вы можете выполнить <command>make package</command>
- для создания бинарного пакета, который можно установить на остальных
- хостах &os; по команде &man.pkg.add.1;. Для дополнительной гибкости
- вы можете создать две версии пакета: одну для машины с консольным
- сервером без параметра <literal>DEFAULTHOST</literal>, а вторую для
- всех остальных хостов с параметром <literal>DEFAULTHOST</literal>.
- Это значит, что клиентская программа консоли на машине с консольным
- сервером по умолчанию будет использовать <systemitem>localhost</systemitem>,
- что будет работать при отсутствии сервера имён, при сбоях в сети, а
- также позволит выполнять <quote>доверяемые</quote> (то
- есть&nbsp;беспарольные) подключения через IP-адрес localhost для
- пользователей, подключенных к машине с консольным сервером (либо
- с экрана консоли, либо с вспомогательного модема). Версия для
- остальных машин с аргументом <literal>DEFAULTHOST</literal> означает,
- что пользователи могут просто использовать клиента
- <application>console</application> без указания каждый раз имени
- хоста, и необходимости настраивать файл
- <filename>conserver.cf</filename> на каждой машине.</para>
- </sect3>
-
- <sect3 xml:id="from-tarball">
- <title>Из tar-архива исходных текстов</title>
-
- <para>Если вы предпочитаете такой способ, то можете загрузить
- <application>conserver</application> и скомпилировать его
- самостоятельно. Вам может понадобиться сделать это, если вы хотите
- установить клиент консоли на не-&os; системы. Мы используем клиент
- на наших машинах с &solaris;, и он без проблем взаимодействует с
- сервером на &os;. Это позволяет каждому во всей компании (многие из
- которых имеют ПК без доступа к хосту с &os; со своего рабочего места)
- обращаться к консольному серверу.</para>
-
- <para>Загрузите файл с <link xlink:href="ftp://ftp.conserver.com/conserver/conserver-8.1.9.tar.gz">
- FTP-сайта conserver.com</link>. Распакуйте его в любой каталог,
- затем сконфигурируйте, выполнив</para>
-
- <screen>&prompt.user; ./configure <option>--with-master=<replaceable>consoleserver</replaceable></option> <option>--with-port=<replaceable>782</replaceable></option></screen>
-
- <para>Параметр <option>--with-master</option> помогает избежать
- указания главного сервера каждый раз при удалённом запуске клиента
- (или постоянного обновления конфигурационных файлов на всех удалённых
- хостах). Параметр <option>--with-port</option> помогает избежать
- необходимости в обновлении файла <option>/etc/services</option> на
- всех машинах.</para>
-
- <para>После этого наберите <command>make</command> и, работая как
- пользователь root, <command>make install</command>.</para>
- </sect3>
- </sect2>
-
- <sect2 xml:id="configuring-conserver">
- <title>Конфигурация conserver</title>
-
- <para>Программа <application>conserver</application> настраивается через
- файл с именем <filename>conserver.cf</filename>. Этот файл обычно
- находится в каталоге <filename>/usr/local/etc</filename> и он
- задокументирован на справочной странице &man.conserver.cf.5;.</para>
-
- <para>Наш конфигурационный файл выглядит примерно так:</para>
-
- <programlisting>LOGDIR=/var/log/consoles
-gallows:/dev/cuaE0:9600p:&amp;:
-roo:/dev/cuaE1:9600p:&amp;:
-kanga:/dev/cuaE2:9600p:&amp;:
-%%
-allow: itga.com.au
-trusted: 127.0.0.1 buzz</programlisting>
-
- <para>Первая строка означает, что по умолчанию все файлы протоколов
- будут располагаться в каталоге <filename>/var/log/consoles</filename>.
- Символ <quote>&amp;</quote> в каждой строке указывает на то, что файл
- журнала для этой машины будет называться
- <filename>/var/log/consoles/<replaceable>machine</replaceable></filename>.</para>
-
- <para>В следующих трёх строках показаны три машины, к которым нам нужно
- подключаться. Мы используем устройства
- <filename>cuaE<replaceable>x</replaceable></filename> вместо
- <filename>ttyE<replaceable>x</replaceable></filename>, потому что
- на консольных портах обычно отсутствует несущая. Это означает, что
- открытие <filename>ttyE<replaceable>x</replaceable></filename>
- будет зависать, и <application>conserver</application> никогда не
- сможет осуществить подключение. Использование устройства
- <filename>cuaE<replaceable>x</replaceable></filename> позволяет
- уйти от этой проблемы. Другим решением будет использование устройств
- <filename>ttyE<replaceable>x</replaceable></filename> и разрешение
- использования на этим портах <quote>программной несущей</quote>,
- возможно, путём установки этого при помощи устройства
- <filename>ttyiE<replaceable>x</replaceable></filename> в файле
- <filename>/etc/rc.serial</filename>. Посмотрите комментарии в этом
- файле для выяснения всех деталей. Также посмотрите &man.sio.4; для
- получения информации об устройствах с начальным состоянием и с
- блокированным состоянием. (Драйвер Stallion также поддерживает эти
- соглашения). И прочтите &man.stty.1; для получения подробностей об
- установке режимов работы устройств.</para>
-
- <para>В последнем разделе указано, что любой пользователь,
- зарегистрировавшийся на серверной машине, имеет доступ без пароля ко
- всем консолям. Мы делаем так, потому что на этой машине нет учётных
- записей пользователей, и она безопасно изолирована от внешнего мира
- межсетевым экраном. Строка разрешения позволяет всем на этой машине
- внутри нашей организации иметь доступ к консольному серверу, если
- он сообщит свой пароль, который записан в файле
- <filename>conserver.passwd</filename> (обратитесь к следующему
- разделу).</para>
- </sect2>
-
- <sect2 xml:id="setting-passwords">
- <title>Задание паролей для conserver</title>
-
- <para>Файл <filename>conserver.passwd</filename> содержит зашифрованную
- версию пароля каждого пользователя. Файл описан на справочной странице
- <literal>conserver.cf(5)</literal>.</para>
-
- <para>Единственной хитростью является заполнение файла зашифрованными
- паролями. Во &os; нет единого способа генерации зашифрованных паролей
- для включения в другой файл (однако смотрите ниже). Так что я
- наскоро создал хакерский perl-скрипт для этого:</para>
-
-<programlisting>@rands = ();
-foreach (0..4) {
- push(@rands, rand 64);
-}
-
-$salt = join '', ('.', '/', 0..9, 'A'..'Z', 'a'..'z')[@rands];
-
-$salt = '$1$' . $salt . '$';
-
-print 'Enter password: ';
-`stty -echo`;
-$cleartext = &lt;&gt;;
-`stty echo`;
-chop($cleartext);
-print crypt($cleartext, $salt), "\n";</programlisting>
-
- <note>
- <para>Он использует пароли &os; с <acronym>MD5</acronym>-шифрованием.
- Запуск скрипта на других вариантах &unix; или во &os; с шифрованием
- паролей DES, скорее всего, потребует другой базы шифрования.</para>
- </note>
-
- <para>Недавно &a.kris.email; показал, что вы можете достичь того же эффекта
- при помощи команды <command>openssl passwd</command>:</para>
-
- <screen>&prompt.user; openssl passwd -1
-Password: <userinput>password</userinput>
-$1$VTd27V2G$eFu23iHpLvCBM5nQtNlKj/</screen>
- </sect2>
-
- <sect2 xml:id="starting-conserver">
- <title>Запуск <application>conserver</application> во время загрузки
- системы</title>
-
- <para>Существуют два способа это сделать. Во-первых, вы можете запускать
- <application>conserver</application> при помощи
- <application>init</application>, включив строчку в
- <filename>/etc/ttys</filename>, подобную следующей:</para>
-
- <programlisting>cuaE0 "/usr/local/sbin/conserver" unknown on insecure</programlisting>
-
- <para>Здесь есть два преимущества: <application>init</application>
- перезапустит главный консольный сервер, если по какой-то причине он
- аварийно завершит свою работу (но мы пока подобных случаев не
- наблюдали), и он обеспечивает то, что стандартная выдача процесса
- <application>conserver</application> будет направлена на указанный tty
- (в этом случае <filename>cuaE0</filename>). Это полезно, потому
- что вы можете подключить терминал к порту, а программа
- <application>conserver</application> выдаст всю консольную выдачу, не
- попавшую подключенному консольному клиенту. Такое использование
- полезно в качестве инструмента мониторинга общего характера, чтобы
- смотреть, что происходит. Мы сделали такой терминал в компьютерном
- зале видимым из основного офиса. Это очень удобная возможность.
- Минусом запуска <application>conserver</application> из файла ttys
- является невозможность его запуска в режиме даемона (либо &man.init.8;
- будет постоянно его перезапускать). Это значит, что
- <application>conserver</application> не будет записывать PID-файл,
- что усложняет смену журнальных файлов.</para>
-
- <para>Таким образом, мы запускаем <application>conserver</application> из
- rc.d-скрипта. Если вы устанавливали
- <application>conserver</application> как порт, то в каталоге
- <filename>/usr/local/etc/rc.d</filename> будет установлен файл
- <filename>conserver.sh.sample</filename>. Скопируйте и/или
- переименуйте его в <filename>conserver.sh</filename> для того, чтобы
- заставить <application>conserver</application> запускаться в момент
- загрузки системы.</para>
-
- <para>На самом деле мы используем модифицированную версию этого скрипта,
- которая также подключает <application>conserver</application> к
- терминалу посредством tty-устройства, так что мы можем отслеживать
- незамеченную консольную выдачу. Наш скрипт
- <filename>conserver.sh</filename> выглядит примерно так:</para>
-
- <programlisting>#!/bin/sh
-#
-# Startup for conserver
-#
-
-PATH=/usr/bin:/usr/local/bin
-
-case "$1" in
- 'start')
- TTY=/dev/cuaE7
- conserver -d &gt; $TTY
- # get NL-&gt;CR+NL mapping so msgs look right
- stty &lt; /dev/cuaE7 opost onlcr
- echo -n ' conserver'
- ;;
-
- 'stop')
- kill `cat /var/run/conserver.pid` &amp;&amp; echo -n ' conserver'
- ;;
-
- *)
- echo "Usage: $0 { start | stop }"
- ;;
-
-esac
-exit 0</programlisting>
-
- <note>
- <para>Отметьте использование устройства <filename>cuaE0</filename>
- и необходимость задания tty-режимов для правильной обработки
- последовательностей NL-&lt;CR).</para>
- </note>
- </sect2>
-
- <sect2 xml:id="trimming-logs">
- <title>Обрезание журнальных файлов</title>
-
- <para>Во &os; имеется программа под названием
- <application>newsyslog</application>, которая будет обслуживать
- усечение журнального файла в автоматическом режиме. Просто добавьте
- некоторые строки в конфигурационный файл
- <filename>/etc/newsyslog.conf</filename> для журналов консолей:</para>
-
- <programlisting>#
-# The log files from conserver
-/var/log/consoles/gallows 644 10 1000 * Z /var/run/conserver.pid
-/var/log/consoles/kanga 644 10 1000 * Z /var/run/conserver.pid
-/var/log/consoles/roo 644 10 1000 * Z /var/run/conserver.pid</programlisting>
-
- <para>Здесь программе <application>newsyslog</application> (которая
- выполняется по таймеру один раз в каждый час) указывается, что файлы
- протоколов работы консолей должны архивироваться и сжиматься, как
- только они достигнут объёма в 1 Мбайт, что мы должны хранить 10 таких
- журналов, и что для подачи сигнала <literal>SIGHUP</literal> вы
- используете PID, записанный в файле <filename>conserver.pid</filename>.
- Это главный сервер, и он будет передавать сигнал всем дочерним
- процессам. Да, он будет посылать сигнал <literal>HUP</literal> всем
- клиентам, как только понадобится обновить единственный файл журнала, но
- это достаточно дёшево. Для выяснения всех подробностей обратитесь к
- &man.newsyslog.8;.</para>
- </sect2>
- </sect1>
-
- <sect1 xml:id="cabling">
- <title>Подключение кабелей</title>
-
- <para>Это всегда является самой сложной частью такого рода проблем. Для
- построения у нас имелось только около десятка кабелей/окончаний к ним,
- и ещё набор соответствующих инструментов и оборудования, так что мы
- сделали всё сами. Однако если вы к этому не готовы, либо вам нужно
- сделать большое количество кабелей, то вам можно приобрести их на заказ.
- Посмотрите справочники фирм, там найдётся на удивление много мест, где
- сделают всё нужное! Приобретение кабелей, сделанных на заказ, это
- хорошо, и вы получите более профессиональный результат, однако это может
- быть дороговато. К примеру, наборы переходников RJ-45 в DB-25,
- описываемые ниже, стоят около $10 каждый; кабели на заказ обойдутся
- примерно в два раза дороже (и будут доставлены через несколько недель).
- Подобным же образом изготовление переходника RJ-45 в RJ-45 обойдётся
- достаточно дёшево (скажем, по $5 каждый), но займёт много времени.
- Заказное гнездо RJ-45 с переходником RJ-45 стоит около $25 каждое.</para>
-
- <para>Во всех случаях в офисе и компьютерном заде мы использовали кабель
- типа RJ-45 Cat-V. Сюда включается проброс монтажных кабелей между
- стойками в компьютерном зале. Для последовательных соединений мы
- используем подключаемые соединители, у которых на задней стенке есть
- гнёзда RJ-45. Это позволяет нам при необходимости организовывать
- соединения RJ-45&ndash;DB-25.</para>
-
- <para>Которое также удобно, потому что есть множество неправильных способов
- организовать последовательные соединения на вилке RJ-45. Так что при
- пробросе кабелей нужно очень осторожно использовать правильное
- соответствие.</para>
-
- <sect2 xml:id="rj45-colors">
- <title>Цветовая разметка RJ-45</title>
-
- <para>Кабели и вилки RJ-45 имеют 8 контактов/проводников. Они
- используются как 4 соответствующих пары. Имеется несколько соглашений
- о том, как пары соответствуют контактам, однако в 100baseT используется
- самый распространённый (известный как EIA 586B). Имеются три
- распространённых соглашения по цветовому обозначению для отдельных
- проводников в кабелях RJ-45. Вот они:</para>
-
- <table>
- <title><!-- XXX: Добавить заголовок для этой таблицы --></title>
-
- <tgroup cols="5">
- <thead>
- <row>
- <entry>Контакт</entry>
- <entry>Схема 1</entry>
- <entry>Схема 2 (EIA 568B)</entry>
- <entry>Схема 3 (EIA 568A)</entry>
- <entry>Пара</entry>
- </row>
- </thead>
-
- <tbody>
- <row>
- <entry>1</entry>
- <entry>Синий</entry>
- <entry>Белый+Зелёный</entry>
- <entry>Белый+Оранжевый</entry>
- <entry>2+</entry>
- </row>
-
- <row>
- <entry>2</entry>
- <entry>Оранжевый</entry>
- <entry>Зелёный</entry>
- <entry>Оранжевый</entry>
- <entry>2-</entry>
- </row>
-
- <row>
- <entry>3</entry>
- <entry>Чёрный</entry>
- <entry>Белый+Оранжевый</entry>
- <entry>Белый+Зелёный</entry>
- <entry>3+</entry>
- </row>
-
- <row>
- <entry>4</entry>
- <entry>Красный</entry>
- <entry>Синий</entry>
- <entry>Синий</entry>
- <entry>1+</entry>
- </row>
-
- <row>
- <entry>5</entry>
- <entry>Зелёный</entry>
- <entry>Белый+Синий</entry>
- <entry>Белый+Синий</entry>
- <entry>1-</entry>
- </row>
-
- <row>
- <entry>6</entry>
- <entry>Жёлтый</entry>
- <entry>Оранжевый</entry>
- <entry>Зелёный</entry>
- <entry>3-</entry>
- </row>
-
- <row>
- <entry>7</entry>
- <entry>Коричневый</entry>
- <entry>Белый+Коричневый</entry>
- <entry>Белый+Коричневый</entry>
- <entry>4+</entry>
- </row>
-
- <row>
- <entry>8</entry>
- <entry>Белый или Серый</entry>
- <entry>Коричневый</entry>
- <entry>Коричневый</entry>
- <entry>4-</entry>
- </row>
- </tbody>
- </tgroup>
- </table>
-
- <para>Заметим, что стандарты EIA 468A and EIA 568B отличаются только
- цветом 2 и 3 пары.</para>
-
- <para>Подробности можно прочитать на <link xlink:href="http://www.cabletron.com/support/techtips/tk0231-9.html">сайте
- технической поддержки Cabletron</link>.</para>
-
- <para>Контакты разъема RJ-45 нумеруются с 1 до 8. Первый контакт
- расположен слева, если держать обжатый кабель разъемом вверх и защелкой
- от себя. В розетке RJ-45, расположенной защелкой вверх, контакт 1
- расположен справа. Вот иллюстрация (бесстыдно стянутая с сайта
- Cabletron), показывающая все это:</para>
-
- <mediaobject>
- <imageobject>
- <imagedata fileref="tk0231-9-1"/>
- </imageobject>
-
- <textobject>
- <literallayout class="monospaced"><!-- XXX: add asci art --></literallayout>
- </textobject>
-
- <textobject>
- <phrase><!-- XXX: add RJ45 image description --></phrase>
- </textobject>
- </mediaobject>
-
- <para>В нашем случае мы имели дело с четырьмя видами оборудования:</para>
-
- <variablelist>
- <varlistentry>
- <term>Сервера Sun</term>
-
- <listitem>
- <para>Консоль сервера Sun работает в режиме DTE (т.е. посылает
- данные по линии TxD, принимает данные по RxD и активирует сигнал
- DTR) с разъемом DB-25 "мама". Для консольного сервера на базе
- Stallion нам потребовались переходники, работающие как DCE
- и обладающие разъемом DB-25 "папа" (т.е. работающие одновременно
- как <quote>нуль-модем</quote> и как переходник RJ-45&mdash;DB-25.
- Мы использовали разборные переходники, содержащие розетку RJ-45,
- 8 коротких проводов, заканчивающихся контактами DB-25, которые
- могут произвольно коммутироваться в корпус разъема DB-25.
- Мы использовали несколько схем соединения, в частности,
- <link xlink:href="http://www.molexpn.com.au/">MOD-TAP</link>
- part no.&nbsp;<link xlink:href="http://www.molexpn.com.au/products/index.nsx/1/7/0/0/id=340">06-9888-999-00</link>
- и <link xlink:href="http://www.blackbox.com/faxbacks/12000/12654.PDF">FA730
- series</link> от компании
- <link xlink:href="http://www.blackboxoz.com.au/">Black
- Box</link>.</para>
-
- <para>Контакты переходников, которые попались нам, были маркированы
- так (контакты с 1 по 8): Синий, Оранжевый, Черный, Красный,
- Зеленый, Желтый, Коричневый, Белый (при взгляде со стороны
- розетки RJ-45, защелка сверху, контакт 1 справа). Они
- были скоммутированы с разъемом DB-25 вот так:</para>
-
- <table>
- <title><!-- XXX: Add a title here --></title>
- <tgroup cols="5">
- <thead>
- <row>
- <entry>Контакт RJ-45 Stallion</entry>
- <entry>Цвет</entry>
- <entry>Сигнал</entry>
- <entry>Контакт разъема DB-25 "папа" Sun</entry>
- <entry>Сигнал RS232</entry>
- </row>
- </thead>
-
- <tbody>
- <row>
- <entry>1</entry>
- <entry>Синий</entry>
- <entry>DCD</entry>
- <entry>20</entry>
- <entry>DTR</entry>
- </row>
- <row>
- <entry>2</entry>
- <entry>Оранжевый</entry>
- <entry>RTS</entry>
- <entry>5</entry>
- <entry>CTS</entry>
- </row>
- <row>
- <entry>3</entry>
- <entry>Черный</entry>
- <entry>Заземление</entry>
- <entry>1</entry>
- <entry>Заземление</entry>
- </row>
- <row>
- <entry>4</entry>
- <entry>Красный</entry>
- <entry>TxD</entry>
- <entry>3</entry>
- <entry>RxD</entry>
- </row>
- <row>
- <entry>5</entry>
- <entry>Зеленый</entry>
- <entry>RxD</entry>
- <entry>2</entry>
- <entry>TxD</entry>
- </row>
- <row>
- <entry>6</entry>
- <entry>Желтый</entry>
- <entry>Сигнальный ноль</entry>
- <entry>7</entry>
- <entry>Сигнальный ноль</entry>
- </row>
- <row>
- <entry>7</entry>
- <entry>Коричневый</entry>
- <entry>CTS</entry>
- <entry>4</entry>
- <entry>RTS</entry>
- </row>
- <row>
- <entry>8</entry>
- <entry>Белый</entry>
- <entry>RTS</entry>
- <entry>8</entry>
- <entry>DCD</entry>
- </row>
- </tbody>
- </tgroup>
- </table>
-
- <para>Для ваших кабелей и переходников цвета могут отличаться.
- Например, 8 провод может быть серого, а не белого цвета.</para>
-
- <para>Не забудьте <emphasis>четко</emphasis> пометить переходник,
- так чтобы пометка не стерлась и не отвалилась со временем!
- </para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>Маршрутизаторы Cisco 16xx/26xx/36xx</term>
-
- <listitem>
- <para>Я полагаю, что все продукты Cisco, использующие разъемы RJ-45
- для консоли и работающие под управлением &ios;, требуют одинаковых
- кабелей, но лучше будет дополнительно проверить. Мы работали
- только с маршрутизаторами серий 1600, 2600 и 3600.</para>
-
- <para>И Stallion, и Cisco 2600 используют разъемы RJ-45, но они,
- разумеется, не совместимы, поэтому вам потребуется специально
- обжатый (и подключенный в правильной ориентации!) кабель
- RJ-45-RJ-45. Мы использовали стандартные провода RJ45 от
- маршрутизаторов до патч-панелей и специально подготовленные от
- патч-панели до разъемов карты Stallion.</para>
-
- <para>Пара специальных кабелей Stallion-Cisco была сделана путем
- разрезания пополам стандартного двухметрового патч-корда и
- набивания разъемов RJ-45 на получившиеся свободные концы.
- Изначальный разъем предназначается для стороны маршрутизатора
- Cisco, обжатый для Stallion. Цвета проводов (как и прежде,
- держа кабель разъемом вверх и защелкой от себя, слева направо)
- в нашем случае были такими: бело-зеленый, зеленый,
- бело-оранжевый, синий, бело-синий, оранжевый, бело-коричневый,
- коричневый. Для стороны Stallion следовало обрезать коричневую
- и зеленую пары. Затем, в уже описанной расстановке, оставшиеся
- провода коммутировались так: пусто, пусто, синий, оранжевый,
- бело-оранжевый, бело-синий, пусто, пусто, как показано ниже:
- </para>
-
- <table>
- <title><!-- XXX: add title for this table --></title>
-
- <tgroup cols="5">
- <thead>
- <row>
- <entry>Контакт RJ-45 Cisco</entry>
- <entry>Цвет</entry>
- <entry>Сигнал Cisco</entry>
- <entry>Контакт RJ-45 Stallion</entry>
- <entry>Сигнал Stallion</entry>
- </row>
- </thead>
-
- <tbody>
- <row>
- <entry>1</entry>
- <entry>бело-зеленый</entry>
- <entry>RTS</entry>
- <entry>N/C</entry>
- <entry>&nbsp;</entry>
- </row>
-
- <row>
- <entry>2</entry>
- <entry>зеленый</entry>
- <entry>DTR</entry>
- <entry>N/C</entry>
- <entry>&nbsp;</entry>
- </row>
-
- <row>
- <entry>3</entry>
- <entry>бело-оранжевый</entry>
- <entry>TxD</entry>
- <entry>5</entry>
- <entry>RxD</entry>
- </row>
-
- <row>
- <entry>4</entry>
- <entry>синий</entry>
- <entry>Gnd</entry>
- <entry>3</entry>
- <entry>Gnd</entry>
- </row>
-
- <row>
- <entry>5</entry>
- <entry>синий</entry>
- <entry>Gnd</entry>
- <entry>6</entry>
- <entry>Gnd</entry>
- </row>
-
- <row>
- <entry>6</entry>
- <entry>оранжевый</entry>
- <entry>RxD</entry>
- <entry>4</entry>
- <entry>TxD</entry>
- </row>
-
- <row>
- <entry>7</entry>
- <entry>бело-коричневый</entry>
- <entry>DSR</entry>
- <entry>N/C</entry>
- <entry>&nbsp;</entry>
- </row>
-
- <row>
- <entry>8</entry>
- <entry>коричневый</entry>
- <entry>CTS</entry>
- <entry>N/C</entry>
- <entry>&nbsp;</entry>
- </row>
- </tbody>
- </tgroup>
- </table>
-
- <para>Вновь отметим, что цвета ваших кабелей и переходников могут
- отличаться.</para>
-
- <para>Аккуратно пометьте каждый конец кабеля и тщательно
- протестируйте его. Тестирование может стать
- <emphasis>по-настоящему</emphasis> сложным, поскольку его нельзя
- произвести при помощи стандартного RJ-45 тестера!</para>
-
- <para>Заметим еще раз: <emphasis>убедитесь</emphasis>, что вы
- пометили новый кабель так, чтобы его было легко сразу опознать
- как специальный и нельзя было бы перепутать с обычным
- патч-кордом. Несколько советов от Хью Ирвина (Hugh Irvine):
- </para>
-
- <itemizedlist>
- <listitem>
- <para>Делайте их из кабеля другого цвета</para>
- </listitem>
-
- <listitem>
- <para>Лучший способ маркировки кабеля, который мне встречался:
- запаять напечатанную этикетку под прозрачный термоусадочный
- кембрик на конец кабеля перед разделкой разъема</para>
- </listitem>
-
- <listitem>
- <para>Можно использовать маркеры типа Panduit, прикрепляемые к
- кабелю стяжками, но на них со временем выцветают чернила.
- </para>
- </listitem>
- </itemizedlist>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>Коммутаторы Cisco &catalyst;</term>
-
- <listitem>
- <para>Как ни странно, расположение сигналов на контактах
- консольного порта коммутаторов &catalyst; иногда
- <emphasis>отличается</emphasis> от используемого в
- маршрутизаторах Cisco. Я полагаю, что карта сигналов
- определяется используемым программным обеспечением.
- Если коммутатор работает под управлением &ios;, применяется
- раскладка, описанная выше. В противном случае, следует применить
- хитрость.</para>
-
- <para>К счастью, вся разница в расположении сигналов заключается
- в том, что одна из раскладок является зеркальным отражением
- другой. Еще радостнее то, что в комплекте с оборудованием Cisco
- (как с коммутаторами &catalyst;, так и с 2600) поставляется
- специальный <quote>перевернутый</quote> (<quote>rollover</quote>)
- кабель; он-то нам и нужен. Мы использовали перевернутый кабель
- для связи консольного порта коммутаторов &catalyst; и
- патч-панели, а затем описанный выше для Cisco 2600 специальный
- кабель от патч-панели до карты Stallion. Все прекрасно работало.
- </para>
-
- <para>Перевернутый кабель имеет на обоих концах разъемы RJ-45 и
- предназначен для использования вместе с переходниками
- RJ-45 - DB-25 и RJ-45 - DB-9 (также поставляемыми в комплекте;
- неразборными) для присоединения к консоли. В нашем случае
- кабель был плоским, длиной около 2 м, голубого или черного цвета.
- Попытки использовать его как обычный 100-Мбитный сетевой кабель
- окончатся неудачей! Определить такой кабель легко, если взять
- оба разъема (кабелем вниз, защелкой от себя) и сравнить цвета
- контактов. Разъемы должны выглядеть зеркально; в нашем случае
- это были
- серый-оранжевый-черный-красный-зеленый-желтый-синий-коричневый
- с одной стороны, и
- коричневый-синий-желтый-зеленый-красный-черный-оранжевый-серый
- с другой.
- </para>
-
- <para>Если у вас нет под рукой перевернутого кабеля, вы можете
- использовать кабель для маршрутизатора 26xx, перевернув его:
- исходный разъем с 8 контактами в Stallion, новый с 4 контактами
- в коммутатор &catalyst;.</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>Сервера &os; (или любые другие системы на базе ПК &i386;,
- использующие последовательную консоль)</term>
-
- <listitem>
- <para>Мы используем &os; 4 на паре ПК архитектуры &i386; для
- различных периферийных нужд. &os; обычно использует экран и
- клавиатуру в качестве консоли, но может быть сконфигурирована
- в режим последовательной консоли (как правило, на первый
- последовательный порт, известный как <filename>COM1</filename> в DOS/&windows; или
- <filename>ttyd0</filename> в &unix;).</para>
-
- <para>Подключение таких консолей зависит от используемого
- оборудования. Старые ПК использовали разъем DB-25 "мама", и для
- них подходит описанный выше вариант для сервера Sun. Для
- современных ПК с разъемами DB-9 "папа" существуют два варианта:
- использовать переходник DB9 - DB-25 (не рекомендуется, поскольку
- со временем такие соединения разбалтываются и ведут к
- непредсказуемым потерям связи) или собрать кабель RJ-45 - DB-9:
- </para>
-
- <table>
- <title><!-- XXX: add title for this table --></title>
-
- <tgroup cols="5">
- <thead>
- <row>
- <entry>Контакт RJ-45 Stallion</entry>
- <entry>Цвет</entry>
- <entry>Сигнал</entry>
- <entry>Контакт DB-9 "мама"</entry>
- <entry>Сигнал RS232</entry>
- </row>
- </thead>
-
- <tbody>
- <row>
- <entry>1</entry>
- <entry>Синий</entry>
- <entry>DCD</entry>
- <entry>4</entry>
- <entry>DTR</entry>
- </row>
-
- <row>
- <entry>2</entry>
- <entry>Оранжевый</entry>
- <entry>RTS</entry>
- <entry>8</entry>
- <entry>CTS</entry>
- </row>
-
- <row>
- <entry>3</entry>
- <entry>Черный</entry>
- <entry>Защитная земля</entry>
- <entry>N/C</entry>
- <entry>&nbsp;</entry>
- </row>
-
- <row>
- <entry>4</entry>
- <entry>Красный</entry>
- <entry>TxD</entry>
- <entry>2</entry>
- <entry>RxD</entry>
- </row>
-
- <row>
- <entry>5</entry>
- <entry>Зеленый</entry>
- <entry>RxD</entry>
- <entry>3</entry>
- <entry>TxD</entry>
- </row>
-
- <row>
- <entry>6</entry>
- <entry>Желтый</entry>
- <entry>Сигнальный ноль</entry>
- <entry>5</entry>
- <entry>Сигнальный ноль</entry>
- </row>
-
- <row>
- <entry>7</entry>
- <entry>Коричневый</entry>
- <entry>CTS</entry>
- <entry>7</entry>
- <entry>RTS</entry>
- </row>
-
- <row>
- <entry>8</entry>
- <entry>Белый</entry>
- <entry>RTS</entry>
- <entry>1</entry>
- <entry>DCD</entry>
- </row>
- </tbody>
- </tgroup>
- </table>
-
- <para>См. также раздел <xref linkend="freebsd"/>. В нем вы найдете
- советы по конфигурированию последовательной консоли в &os;.</para>
- </listitem>
- </varlistentry>
- </variablelist>
- </sect2>
- </sect1>
-
- <sect1 xml:id="solaris">
- <title>Про системы Sun и сигнал Break</title>
-
- <para>Всякий, кто хоть раз выключал терминал, используемый в качестве
- консоли для сервера Sun, знает, что происходит в результате и почему
- это является проблемой. Оборудование Sun считает сигнал
- <literal>BREAK</literal> на консоли командой остановить систему и
- вернуться в монитор загрузчика. Сигнал
- <literal>BREAK</literal>&nbsp;&mdash; специальный срочный сигнал
- последовательного порта, заключающийся в активизации (установки в уровень
- ниже -5 В) сигнала TxD на время большее чем требуется на передачу двух
- символов (около 2 мс для скорости 9600 bps). К сожалению, этот сигнал
- часто возникает при включении или выключении коммуникационного
- оборудования. В частности, карты Stallion также генерируют
- <literal>BREAK</literal> при отключении питания компьютера.
- Если не предпринимать специальных действий, это может привести к
- остановке всех серверов Sun, подключенных к консольному серверу, при
- его отключении (при отказе блока питания, или в результате неосторожных
- действий оператора, или по еще каким-либо причинам). Ясно, что такая
- ситуация неприемлема.</para>
-
- <para>К счастью, у компании Sun есть набор исправлений. Для ОС &solaris;
- версии 2.6 и более поздних, при помощи команды <command>kbd(1)</command>
- можно запретить переход в монитор загрузчика по сигналу BREAK. Это уже
- неплохо для начала, но лишает вас шансов восстановить повисшую машину,
- вернув ее в загрузчик.</para>
-
- <para>Начиная с &solaris; версии 8, команду <command>kbd</command> можно
- использовать для установки альтернативной последовательности прерывания:
- <command>kbd -a alternate</command>. После активации, для возврата в
- монитор загрузки необходимо в течение 5 секунд выдать последовательность:
- <keycap>Return</keycap> <keycap>~</keycap>
- <keycombo><keycap>Ctrl</keycap><keycap>B</keycap></keycombo>.
- Эта возможность может быть включена на постоянной основе путем
- редактирования файла <filename>/etc/default/kbd</filename>; подробнее
- см. справочную страницу <literal>kbd(1)</literal>. Отметим, что
- альтернативная последовательность активируется после перехода ядра в
- многопользовательский режим и обработки файла начальных установок.
- В период начальной загрузки (включение питания и в процессе загрузки ядра)
- и в однопользовательском режиме для возврата в монитор загрузки нужно
- использовать сигнал <literal>BREAK</literal>. Из консольного клиента его
- можно активировать последовательностью <keycap>Esc</keycap>
- <keycap>c</keycap> <keycap>l</keycap> <keycap>1</keycap>.</para>
-
- <para>Если у вас есть сервисный контракт с компанией Sun, вы можете скачать
- патчи, реализующие альтернативную последовательность прерывания, для
- &solaris; версий 2.6 и 2.7. &solaris; 2.6 требует патча 105924-10 или выше;
- &solaris; 2.7&nbsp;&mdash; 107589-02 или выше.</para>
-
- <para>Мы применили этот патч на всех наших серверах &solaris; 2.6 и
- добавили его (вместе с установкой для файла /etc/default/kbd) в стартовую
- конфигурацию, так чтобы любой новый сервер автоматически был правильно
- сконфигурирован.</para>
-
- <para>Наши тесты показали, что ни маршрутизаторы Cisco 16xx, 26xx, ни
- коммутаторы &catalyst; не подвержены проблеме сигнала
- <literal>BREAK</literal>, возникающего при потере питания картой
- Stallion. В настоящее время маршрутизаторы и коммутаторы Cisco реагируют
- на сигнал <literal>BREAK</literal> только в течение первых 30 секунд после
- включения питания или перезагрузки.</para>
- </sect1>
-
- <sect1 xml:id="freebsd">
- <title>Использование последовательной консоли в &os;</title>
-
- <para>Подробно эта процедура описана в отдельной главе
- <link xlink:href="&url.books.handbook;/serialconsole-setup.html">Руководства
- &os;</link>. Здесь мы приводим краткий перечень.</para>
-
- <sect2 xml:id="freebsd-kernconf">
- <title>Проверьте конфигурацию ядра</title>
-
- <para>Проверьте, что файл конфигурации ядра содержит
- <literal>flags 0x10</literal> в строке, описывающей устройство
- <filename>sio0</filename>. Этот флаг разрешает использование
- устройства (известного также как <filename>COM1</filename> в
- DOS/&windows; или как <filename>/dev/ttyd0</filename> в &os;)
- в качестве консоли. Флаг установлен в обоих примерах стандартной
- конфигурации ядра (<filename>GENERIC</filename> и
- <filename>LINT</filename>), так что, скорее всего, он установлен и в
- вашем ядре.</para>
- </sect2>
-
- <sect2 xml:id="freebsd-bootconf">
- <title>Создайте файл <filename>/boot.conf</filename>
- file</title>
-
- <para>Этот файл должен состоять из одной строки, содержащей только
- <quote><literal>-h</literal></quote> (без кавычек). Этот флаг
- указывает загрузочным блокам &os; переключиться на последовательную
- консоль.</para>
- </sect2>
-
- <sect2 xml:id="freebsd-ttys">
- <title>Отредактируйте файл <filename>/etc/ttys</filename></title>
-
- <para>Необходимы следующие изменения:</para>
-
- <para>Если вы не собираетесь подключать клавиатуру и монитор к этому
- серверу, найдите все строки для устройств <filename>ttyv</filename>,
- таких как</para>
-
- <programlisting>ttyv1 "/usr/libexec/getty Pc" cons25 on secure</programlisting>
-
- <para>Замените <literal>on</literal> на <literal>off</literal>.
- Это запретит запуск утилит регистрации на ненужных более видео консолях.
- </para>
-
- <para>Найдите строку, содержащую <filename>ttyd0</filename>. Измените
- ее с</para>
-
- <programlisting>ttyd0 "/usr/libexec/getty std.9600" dialup off secure</programlisting>
-
- <para>на</para>
-
- <programlisting>ttyd0 "/usr/libexec/getty std.9600" vt100 on secure</programlisting>
-
- <para>(замените <literal>vt100</literal> на тип терминала вашей консоли.
- Хорошим выбором может быть <literal>xterm</literal>). Это позволит вам
- зарегистрироваться на консоли после того, как система перейдет в
- многопользовательский режим.</para>
-
- <para>Перезагрузитесь&nbsp;&mdash; и все!</para>
- </sect2>
- </sect1>
-
- <sect1 xml:id="security">
- <title>Соображения безопасности</title>
-
- <para>Протокол "клиент-сервер" утилиты <application>conserver</application>
- требует от пользователя клиентской утилиты
- <application>console</application> ввода пароля. Этот пароль передается
- по сети в <emphasis>открытом виде</emphasis>! Как следствие, утилита
- <application>conserver</application> не особенно пригодна для
- использования в небезопасных сетях (в том числе в интернет).
- Использование уникальных паролей для <application>conserver</application>
- слегка смягчает проблему, однако любой, кто способен прослушать сетевой
- трафик между клиентом и сервером <application>conserver</application>,
- может легко получить консольный доступ, а с консоли использовать
- последовательность прерывания. Для удаленной работы используйте
- какие-либо защищенные протоколы, такие как <application>SSH</application>
- для регистрации на консольном сервере и запускайте консольный клиент
- непосредственно оттуда.</para>
- </sect1>
-
- <sect1 xml:id="conserver-versions">
- <title>Различные версии Conserver</title>
-
- <para>Программа <application>conserver</application> расслоилась на
- несколько независимых версий. Сайт, упоминаемый ниже, судя по всему,
- содержит последнюю и наиболее полную версию из доступных. На момент
- написания статьи (июль 2004 г.) это версия <quote>8.1.9</quote>. Сайт поддерживается
- Брайаном Стэнселлом (Bryan Stansell), <email>bryan@conserver.com</email>,
- который свел воедино работу многих разработчиков (перечислены на его
- сайте).</para>
-
- <para>Коллекция портов &os; содержит <application>conserver</application>
- версии 8.5 в каталоге <package>comms/conserver</package>.
- Судя по всему, он более старый, и содержит меньше
- возможностей, чем 8.1.9 (в частности, не поддерживает консоли,
- соединенные с портами терминальных серверов, или файл паролей
- <filename>conserver.passwd</filename>), а также написан довольно
- своеобразно (используя препроцессор для генерации исходного текста
- на языке C). Версия 8.5 ведется Кевином Браунсдорфом (Kevin
- S.&nbsp;Braunsdorf) <email>ksb+conserver@sa.fedex.com</email>,
- в прошлом основным автором <application>conserver</application>;
- Брайан основывался на его разработках. Версия 8.5 поддерживает одну
- возможность, не поддерживаемую 8.1.9: управление питанием удаленных
- машин через специальный контроллер, управляемый по последовательному
- порту.</para>
-
- <para>Начиная с декабря 2001 г., версия Брайана (в настоящее время 8.1.9)
- присутствует в дереве портов в каталоге
- <package>comms/conserver-com</package>. Мы рекомендуем
- использовать именно ее как более подходящую для построения консольного
- сервера.</para>
- </sect1>
-
- <sect1 xml:id="links">
- <title>Ссылки</title>
-
- <variablelist>
- <varlistentry>
- <term><uri xlink:href="http://www.conserver.com/">http://www.conserver.com/</uri></term>
-
- <listitem>
- <para>Сайт последней версии программы <application>conserver</application>.</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term><link xlink:href="ftp://ftp.conserver.com/conserver/conserver-8.1.9.tar.gz">ftp://ftp.conserver.com/conserver/conserver-8.1.9.tar.gz</link></term>
-
- <listitem>
- <para>Архив исходных текстов для версии 8.1.9 программы
- <application>conserver</application>.</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term><uri xlink:href="http://www.stallion.com/">http://www.stallion.com/</uri></term>
-
- <listitem>
- <para>Сайт компании Stallion Technologies.</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term><uri xlink:href="http://www.conserver.com/consoles/msock.html">http://www.conserver.com/consoles/msock.html</uri></term>
-
- <listitem>
- <para>Написанный Дэвидом Харрисом (Davis Harris)
- <quote>Малый Свиток Знаний о Консолях</quote>, содержащий массу
- полезной информации о последовательных консолях и вообще
- о последовательных портах.</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term><uri xlink:href="http://www.conserver.com/consoles/">http://www.conserver.com/consoles/</uri></term>
-
- <listitem>
- <para><quote>Большой Свиток Знаний о Консолях</quote>
- содержит еще более подробную информацию о соединении одних устройств
- с другими. О, эти Стандарты!</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term><uri xlink:href="http://www.eng.auburn.edu/users/doug/console.html">http://www.eng.auburn.edu/users/doug/console.html</uri></term>
-
- <listitem>
- <para>Дуг Хьюджес (Doug Hughes) создал схожий консольный сервер на
- основе утилиты <application>screen</application> и старой машины под
- управлением &sunos;.</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term><uri xlink:href="http://www.realweasel.com/">http://www.realweasel.com/</uri></term>
-
- <listitem>
- <para>Компания Real Weasel производит видеокарты для шин ISA или PCI,
- в реальности производящие вывод в последовательный порт. Они могут
- использоваться для консолей ПК в тех операционных системах, которые
- не могут быть сконфигурированы в режим последовательной консоли
- достаточно рано в процессе загрузки.</para>
- </listitem>
- </varlistentry>
-
- </variablelist>
- </sect1>
-
- <sect1 xml:id="manpages">
- <title>Справочные страницы</title>
-
- <itemizedlist>
- <listitem>
- <para><link xlink:href="http://www.conserver.com/docs/console.man.html">console(8)</link></para>
- </listitem>
-
- <listitem>
- <para><link xlink:href="http://www.conserver.com/docs/conserver.man.html">conserver(8)</link></para>
- </listitem>
-
- <listitem>
- <para><link xlink:href="http://www.conserver.com/docs/conserver.cf.man.html">conserver.cf(5)</link></para>
- </listitem>
- </itemizedlist>
- </sect1>
-
- <index/>
-</article>