Linux - Алексей Стахнов
Шрифт:
Интервал:
Закладка:
Обеспечение безопасности сервера
Если сервер точного времени не предназначен для широкой общественности, а используется только внутренней локальной сетью, желательно закрыть 123 порт для доступа извне, чтобы избежать возможной атаки типа denial of service (отказ в обслуживании), поскольку это грозит неправильным функционированием сервера. Также, если возможно, необходимо использовать шифрование.
Вот список правил для организации брандмауэра, закрывающего доступ к вашему серверу снаружи (см. гл. 29):ipchains -A input -р udp -j ACCEPT -s 10.0.0.0/8 -d 0.0.0.0/0 123
ipchains -A input -p udp -j ACCEPT -s some.trusted.host -d 0.0.0.0/0 123
ipchains -A input -p udp -j DENY -s 0.0.0.0/0 -d 0.0.0.0/0 123
Программы и утилиты, относящиеся к службе точного времени
ntpdate
Эта утилита позволяет установить время на компьютере, используя список NTP-серверов.
Используемые ключи:
• -B – только плавный сдвиг, даже если смещение больше 128 мс;
• -b – всегда использовать settimeofday;
• -d – отладка;
• -р число – число запросов к каждому серверу (от 1 до 8, по умолчанию 4);
• -q – только запрос времени;
• -s – использовать syslog вместо stdout;
• -t timeout – время ожидания ответа (по умолчанию 1 с);
• -u – использовать непривилегированный порт.
ntpq
Утилита для получения состояния NTP-сервера и его изменения (использует NTP mode 6).
ntptrace
Утилита для поиска серверов первого уровня. Используемые ключи:
• -r число – количество запросов (по умолчанию 5);
• -t секунд – время ожидания ответа (по умолчанию 2).
xntpd
Собственно демон точного времени. Используемые параметры при запуске:xntpd [-aAbdm] [-с config-file ] [-f drift-file ] [-k key-file ]
[-l log-file ] [-p pid-file ] [-r broadcast-delay ] [-s stats-dir ]
[-t key ] [-v variable ] [-V variable ]Здесь:
• -a – разрешить аутентификацию;
• -A – запретить аутентификацию;
• -b – широковещательные сообщения;
• -c config-file – конфигурационный файл (по умолчанию /etc/ntp.conf);
• -d – отладка;
• -f drift-file — файл, хранящий смещение часов (по умолчанию /etc/ntp.drift);
• -k key-file — файл ключей (по умолчанию /etc/ntp.keys);
• -l log-file — файл протокола (по умолчанию syslog).
xntpdc
Утилита для запроса состояния NTP-сервера и его изменения. Применяется только для xntpd-серверов. Использует NTP mode 7.
Публичные NTP-серверы
Список публичных серверов точного времени можно найти в Интернете. В любом случае вам придется этот список публичных серверов протестировать, чтобы определить задержки и качество соединения. Попробуйте сначала получить список серверов точного времени вашего провайдера (провайдеров). В списке литературы приведена ссылка на список серверов точного уровня первого и второго уровней, можно попробовать синхронизироваться от них.
Клиентские программы для синхронизации времени
Сам по себе сервер точного времени не нужен, если у пользователей нет возможности синхронизировать время. В настоящее время практически для всех операционных систем есть программы для получения времени с серверов NTP.
UNIX/Linux
Для этих операционных систем можно на компьютере установить сервер xntpd и настроить его для получения точного времени. У этого решения есть как достоинства, так и недостатки. Положительным моментом является то, что мы можем максимально точно синхронизировать время и построить отказоустойчивую конфигурацию. Отрицательный момент – достаточно сложное конфигурирование сервера и относительно большой объем занимаемой оперативной памяти компьютера.
Более простой вариант – воспользоваться утилитой ntpdate. Маленькая, простая в конфигурировании, позволяющая получить достаточно точное время – расхождение порядка 100 миллисекунд. Для синхронизации времени следует выполнить следующую команду:ntpdate -B ntp ntp2 ntp3
где ntp, ntp2, ntp3 – адреса серверов точного времени. Рекомендуется добавить эту строчку в таблицу заданий crontab (если у вас, конечно, постоянное подключение к Интернету).
Apple
Для компьютеров фирмы Apple есть клиент NTP, называющийся macntp.
Windows
Для операционной системы Windows существует несколько клиентов службы точного времени. В частности программа AboutTime, которую можно получить по адресу ftp.psn.ru/pub/abouttime_nomsie.zip. Или программа AnalogX Atomic TimeSync, получить которую можно по адресу www.analogx.com/contents/download/network/ats.htm
Настройка временной зоны
Обычно при установке операционной системы вы корректно выбираете свой часовой пояс. В качестве ориентира часового пояса в малых странах указывается столица государства, к примеру для Беларуси – Минск, для Украины – Киев. Для больших стран ориентируются на крупнейший город нужной часовой зоны.
Однако иногда можно ошибиться и выбрать зону неправильно или автоматически нажать ввод и получить временную зону, которую предлагает программа инсталляции дистрибутива по умолчанию. В результате – неправильное время.
Для корректной установки временной зоны необходимы всего два файла: /etc/localtime и /etc/sysconfig/clock. Первый файл отвечает за временную зону, а второй – за способ хранения и представления времени в системе. Рассмотрим поподробнее эти файлы.
/etc/localtime
Файл /etc/localtime представляет собой описание временной зоны, в которой определяется смещение часового пояса относительно Гринвича, даты перехода на летнее/зимнее время и некоторую дополнительную информацию. Формат файла – бинарный. Обычно разработчики дистрибутива поставляют файлы для всех временных зон в различных представлениях и форматах, из которых можно выбрать подходящую временную зону. В дистрибутиве Red Hat Linux 7.2 скомпилированные файлы временных зон находятся в каталоге /usr/share/zoneinfo/. Найдя подходящий для вашей временной зоны файл, скопируйте его в каталог /etc и переименуйте в localtime. В том невероятном случае, если вам не подходит файл временной зоны – сделайте его самостоятельно. Для этого необходимо создать текстовый файл, содержащий описание вашей временной зоны и скомпилировать его утилитой zic. Ниже приведен пример текстового файла, описывающего временную зону с переключением на летнее/зимнее время для Украины:Rule dst 1982 maximum – Apr lastSun 2:00 1 «EET DST»
Rule dst 1982 maximum – Oct lastSun 2:00 0 "EET DST"
Zone EET 2:00 dst %sПодробное описание утилиты zic смотрите в соответствующей справочной странице man.
/etc/sysconfig/clock
Этот файл содержит описание часовой зоны и некоторых других параметров.
Пример:
ZONE="Europe/Kiev"
UTC=false
ARC=falseКак видно из примера, системные часы не используют универсальное представление времени, а система находится в Киевском часовом поясе (Гринвич + 2 часа).
Ссылки
• www.bog.pp.ru/work/xntpd.html – Сергей Богомолов. Bog BOS: xntpd (UNIX-сервер NTP – network time protocol).
• www.bog.pp.ru/work/ntp.html – Сергей Богомолов. Bog BOS: Network time protocol.
• www.tomsknet.ru/ftp/docs/rfc/rfc1305.txt – Network Time Protocol (Version 3) Specification, Implementation and Analysis (RFC 1305).
• cisco.opennet.ru/docs/RUS/lasg/time.html – сетевые сервисы: NTP.
• www.psn.ru/net/servis/ntp.shtml – как пользоваться службой NTP.
• www.eecis.udel.edu/~ntp – страница, посвященная xntp.
• www.eecis.udel.edu/~ntp/ntp_spool/html/index.htm – руководство по инсталляции и настройке xntp.
• www.eecis.udel.edu/~ntp/database/faq.html – часто задаваемые вопросы по протоколу NTP.
• www.eecis.udel.edu/~mills/ntp/clockl.html – официальный список NTP-серверов первого уровня.
• www.eecis.udel.edu/~mills/ntp/clock2.html – официальный список NTP-серверов второго уровня.
• www.eecis.udel.edu/~mills/ – официальный сайт разработчика стандарта NTP.Глава 24 Сервер Samba – для клиентов Windows
Подобно службам NFS и Mars, которые позволяют сетевым пользователям подключаться к удаленным дискам и каталогам (первая служба для UNIX-систем, вторая для Novell), в операционной системе Linux существует пакет Samba, предназначенный для клиентов сети Microsoft Windows.
Этот пакет позволяет Linux-системе выступать в качестве файл– и принт-сервера в сети Microsoft Windows. Существует также и Samba-клиент для операционной системы Linux, позволяющий Linux-клиенту подключаться к ресурсам, предоставляемым серверами сети Microsoft Windows.
Такая объединенная схема дает ряд преимуществ:
• поскольку в целом операционная система Linux устойчивее Windows 9.v, повышается надежность функционирования системы;
• отпадает необходимость приобретать лицензионную Windows;
• если у вас уже есть Linux-сервер, представляется рациональным нагрузить его дополнительной работой;
• сервер Samba имеет возможность мониторинга и удаленного управления как через SSH, так и через Web-интерфейс, предоставляемый пакетом SWAT (Samba Web-based Administrative Tool).
Установка сервера Samba проблем не вызывает – достаточно при инсталляции Red Hat Linux отметить соответствующий пакет RPM. Если вы не установили Samba при инсталляции дистрибутива – не беда, командой rpm -i sambaxxx. rpm сервер будет установлен на вашем компьютере.
В том случае, если вы хотите установить самую свежую версию пакета, и она досталась вам в виде tgz-архива, содержащего исходный текст, процесс установки несколько растянется.
1. Сначала необходимо распаковать архив, содержащий исходные коды Samba. Для этого надо выполнить следующую команду: