14 лет назад 16 августа 2004 в 2:06 69

Одним из достоинств системы Linux является возможность развертывания сервера на довольно древней машине, которая уже не годится не только для современных игр, но и вообще для работы с Windows XP.

Разумеется, первое, о чем придется забыть при создании такого сервера, – это графический режим. Впрочем, графический режим на сервере – это то, что человек разумный назовет расточительством. А другой, не менее разумный человек, возразит, что настройка сервера путем внесения изменений в конкретные конфигурационные файлы – довольно непростая задача для обыкновенного пользователя Windows, который знает, чего он хочет, но не знает, “куда это записать”.

И уже укоренившаяся в сознании мысль о том, что конфигурирование чего угодно в Linux требует кропотливого изучения большого количества условностей, приводит к тому, что пользователь выбирает привычный путь Windows.

Тем не менее решение проблемы есть. Это Webmin – программа по администрированию сервера, которая позволяет настроить практически все. Причем для работы с этой программой администратору достаточно иметь только браузер, поддерживающий таблицы и формы.

ОБЩИЕ СВЕДЕНИЯ
Webmin – это программа, выполненная по модульной технологии: она состоит из базовой программы и набора модулей с расширением wbn, которые подключаются по мере необходимости. Разумеется, осуществить тонкую настройку системы при помощи этой программы затруднительно, поэтому профессиональным сисадминам она вроде и ни к чему. А вот домашнему пользователю, который создает домашнюю сеть, эта программа может сохранить немало времени и нервов.

Для того чтобы пользоваться графическими средствами настройки, требуется установить Webmin на сервер, который может даже не иметь своего монитора – настройка может происходить откуда угодно, хоть с машины, работающей под управлением Windows, через Internet Explorer.

Подключение к системе управления Webmin осуществляется очень просто. Сначала необходимо установить соединение с системой, для чего в адресной строке браузера набираем http://[ip адрес сервера]:10000. Система попросит ввести имя пользователя и пароль на вход. Если вход осуществляется первый раз, то в поле login следует набрать root, а в поле пароль – пароль суперпользователя системы.

Разумеется, первое, что следует сделать после входа в систему, – настроить аутентификацию. Но это только в том случае, если мы крепко дружим с английским языком. Если же иноземные буквы, а особенно слова, не вызывают у вас приступа энтузиазма, то вам прямой путь в Change Language and Theme. Здесь, как это и следует из названия, можно установить язык интерфейса (русский язык программа поддерживает) и внешний вид программы.

Затем следует подумать и о безопасности. По умолчанию Webmin позволяет получить доступ к нему со всех машин сети. Что ни говори, а это потенциальная дыра, несмотря на парольную защиту. Так что в разделе “Управление доступом по IP” выбирайте опцию “разрешить доступ только с указанных адресов” и укажите в списке все адреса, с которых вы будете подключаться к системе. В самом простом варианте – только собственный адрес.

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

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

Самым осторожным админам можно зашифровать сеанс связи с сервером. Это нужно для того, чтобы шибко грамотный пользователь не смог перехватить данные, передающиеся по HTTP-протоколу. Вернее, перехватить-то он их перехватит, только потом долго будет расшифровывать. Если же вы прибегнете еще и к еженедельной смене пароля, то за безопасность сервера можно быть относительно спокойным.

В большой сети можно будет создать новых пользователей, которым имеет смысл делегировать права доступа к настройке отдельных модулей. Причем создание пользователя Webmin не означает создания пользователя Linux, то есть эти пользователи не смогут зайти в систему иным способом – например, посредством telnet.

DNS и BIND
Проще всего настроить клиент DNS. Для этого следует зайти в подраздел “Сеть” раздела “Сеть”, где активировать модуль “Клиент DNS”. В поле “Имя узла” следует ввести имя машины, а в разделе “Сервера DNS” – IP-адреса соответствующих серверов. После того как вы прикажете системе сохранить все сделанные изменения, в соответствующих файлах появятся все нужные записи. Очень полезно в разделе “Искать в доменах” выбрать опцию “Перечисленных…”, поскольку это позволит во время поиска не использовать FQDN-имена компьютеров (то есть имена, указывающие полный путь к узлу), а ограничиться перебором кратких имен.

Сервер доменной системы имен (BIND) настраивается в разделе “Службы”, где для этого есть специальный модуль – “Сервер DNS BIND”. В качестве примера настройки создадим master-зону в домене myhomenet.ru.

Сначала следует выбрать ссылку “Создать новую зону master”. Появится страница, на которой следует указать системе, что будет создаваться зона прямого преобразования. В разделе “Имя домена/Сеть” введите имя домена myhomenet.ru и активируйте опцию “Добавить записи NS для серверов master”.

Поле “Время обновления” существует для указания slave-серверам, через какое время им следует обращаться на master-сервер для получения информации о внесенных изменениях.
После создания зоны появится окно с ее записями. Вы можете добавлять новые записи и редактировать старые. В первую очередь создайте запись типа A, где будет совершаться преобразование имен в IP-адреса. Для этого следует кликнуть на ссылку “Адрес” и заполнить соответствующие поля.

СТАТИЧЕСКАЯ МАРШРУТИЗАЦИЯ И ШЛЮЗЫ
При помощи этой программы можно настроить статическую маршрутизацию и указать существующие шлюзы. Делается это в подразделе “Сеть” раздела “Сеть”, где следует активировать модуль “Маршрутизация и шлюзы”.

Новые статические маршруты можно добавлять прямо на главной странице модуля. Для этого в разделе “Статические маршруты” надо заполнить соответствующие поля – название интерфейса, IP-адрес сети, маску сети и IP-адрес шлюза.

Однако в работе этого модуля есть одна особенность: если параметру “Действовать как маршрутизатор” присвоить значение “Да”, то возможность пересылки пакетов включится только после перезагрузки компьютера. Для того чтобы избежать перезагрузки, воспользуйтесь модулем “Командная оболочка”: в командной строке набираете sysctl -p и нажимаете на кнопку “Выполнить команду”.

КОНФИГУРИРОВАНИЕ DHCP
Несмотря на то что в домашних сетях DHCP предпочитают вообще не устанавливать по причине его абсолютной ненужности, служба Webmin дает возможность настроить и этот сервер. Производится такая операция в разделе “Службы”, где располагается модуль “Сервер DHCP”.

По сути, серверу необходимо указать только IP адреса, которые будут использоваться в сети. Если же сети не определены, то их нужно добавить. Для этого следует воспользоваться ссылкой “Добавить новую подсеть”, где указываются IP-адрес сети, сетевая маска и диапазон адресов. Остальные параметры можно оставить такими, какие они есть.

NFS
Если известно, что в сети будет много рабочих Linux-станций, то есть смысл организовать дисковое пространство сервера, чтобы предоставить пользователям место для хранения файлов. Для этого в системе Linux используется так называемая NFS (Network File System). Для того чтобы настроить сервер NFS, следует использовать модуль “Каталоги NFS” из раздела “Сеть”.

Чтобы объявить каталог экспортируемым, следует воспользоваться ссылкой “Добавить каталог для экспорта”. На открывшейся странице следует ввести полный путь к каталогу, причем этот каталог уже должен существовать. Далее нужно определить, с каких машин сети этот каталог можно подключить к локальной системе – можно указывать не только адреса машин, но и адреса сетей.
Особое внимание следует уделить опции “Режим доступа” – не факт, что имеет смысл открывать каталоги на запись. Более правильная политика заключается в том, что большая часть пользователей сможет только читать находящиеся на общем ресурсе файлы, а писать в этот каталог смогут лишь некоторые из них.

SAMBA
И, наконец, следует подумать о пользователях системы Windows, которые привыкли обмениваться файлами через расшаренные ресурсы, используя в работе протокол NetBIOS. Для того чтобы Linux-сервер мог предоставить доступ к разделам Linux для компьютеров, работающих под управлением системы Windows, существует пакет Samba.

Настройка Samba-сервера при помощи системы Webmin мало чем отличается от настройки NFS. Сначала отправляемся в “Службы” на модуль “Файл-сервер Samba”. Дальнейшие действия интуитивно понятны – жмем на ссылку “Создание нового файлового ресурса” и определяем для него имя и каталог (каталог, естественно, следует создать заблаговременно). Аналогичные действия надо проделать для того, чтобы создать новый ресурс печати.

После этого все будет худо-бедно работать. Большинству пользователей не придется даже прибегать к более тонким настройкам, хотя такую возможность Webmin предоставить готов. Интересно, что прямо из системы Webmin можно попасть в программу Swat, которая представляет собой более старый и привычный для многих инструмент для настройки Samba-сервера. Так что чем хочешь, тем и настраивай.

Описание процедуры тонкой настройки явно выходит за рамки этой статьи, но в один подраздел модуля все же следует зайти. Хотя бы затем, чтобы подумать, нужно нам делать то, что он предлагает, или нет. Подраздел называется “Сеть Windows”. В этом подразделе можно отдать приказ системе, чтобы она выполняла функции WINS-сервера, отвечающего за отображение компьютеров в папке “Сетевое окружение”.

Перед тем как принимать решение, подумайте не только об удобстве для пользователя, но и о пропускной способности сети – многие провайдеры уже открывали в своей сети WINS-сервер, чтобы прикрыть его через некоторое время. Наличие этого сервера существенно (в разы) увеличит внутренний файлообмен, ибо процедура закачки упростится невероятно.

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

Некоторые тонкости настройки Samba
Samba не требует особых настроек, хотя имеет множество параметров для тонкой настройки. Первая настройка, которую я рекомендую: security = share. Другая настройка security = user требует, чтобы пользователь MS Windows имел то же самое логинное имя в файле smbpasswd.

Для перекодирования имен файлов между кодировкой Windows и кодировкой Linux (обычно KOI8-r) требуются команды
client code page = 866
character set = koi8-r
866 – это, на самом деле, кодировка DOS (кодовая страница 866): MS Windows передает имена файлов по протоколу SMB в DOS-кодировке.
Для приема сообщений по протоколу WinPopup можно установить программу Linpopup, или добавить следующую строку в секцию [global] smb.conf:
message command = sh -c ‘/bin/mail -s “WinPopup message from %f by Samba” root < “%s”; rm “%s”‘ &
А это настройки TCP/IP для уменьшения сетевых задержек:
socket options = IPTOS_LOWDELAY TCP_NODELAY SO_KEEPALIVE=1 SO_SNDBUF=4096 SO_RCVBUF=4096

Samba-клиент

Эта программа сможет предоставить пользователю Linux интерфейс для обмена файлами с компьютерами, работающими под управлением Windows, причем устанавливать какое-то дополнительное программное обеспечение на Windows-машины не нужно, поскольку эта система поддерживает NetBIOS по умолчанию.

Для того чтобы просмотреть список открытых ресурсов удаленной Windows-машины, следует использовать команду smbclient -L <имя компьютера>. Но если компьютер, на который вы ходите попасть, работает под управлением Windows NT, то придется указать и имя пользователя, имеющего права доступа. В этом случае команда будет выглядеть так: smbclient -U <имя пользователя> -L <имя компьютера>. А в ответ на запрос программы нужно ввести пароль.

Для входа на расшаренные ресурсы следует приказать программе выполнить следующее: smbclient <имя ресурса> -U <логин> [пароль]. Если все пройдет успешно, вы увидите приглашение системы, которое будет иметь примерно такой вид: smb:\>. При помощи команд, полный список которых можно увидеть, набрав в строке приглашения системы букву h, вы приобщитесь к контенту на Windows-машинах.