Библиотека сайта rus-linux.net
Linux Network Administrators Guide | ||
---|---|---|
Назад | Глава 16. Управление Taylor UUCP | Вперед |
Настройка системы для приема входящих звонков (Dial In)
Если Вы хотите настроить систему для вызова извне, Вы должны разрешить вход в систему по последовательному порту и настроить некоторые системные файлы, чтобы обеспечить логины UUCP. Это будет обсуждаться в следующем разделе.
Предоставление UUCP-доступа
Вы должны установить имена пользователей, которые разрешают удаленной системе регистрацию в Вашей системе и устанавливают соединение UUCP. Вообще, необходимо дать отдельное имя каждой системе, которая взаимодействует с Вами. При установке имени для системы pablo, Вы (например) можете дать ей имя Upablo, как имя пользователя.
Для систем, которые подключаются через последовательный порт, Вы должны
добавить эти имена в файл паролей системы, /etc/passwd
. Хорошим вкусом считается поместить все имена UUCP в специальную группу
типа uuguest. Домашний каталог такого
пользователя должен находиться в общем каталоге
/var/spool/uucppublic
, оболочка входа в систему
uucico.
/etc/inetd.conf
:
uucp stream tcp nowait root /usr/sbin/tcpd /usr/lib/uucp/uucico -l |
–l
uucico
выполняет собственную проверку на вход в систему. Она запросит имя и
пароль также, как и стандартная программа login, но
положится на собственный файл паролей вместо /etc/passwd
. Этот файл паролей называется /etc/uucp/passwd
и содержит пары имен входа в систему и паролей:
Upablo IslaNegra Ulorca co'rdoba |
Конечно, этот файл должен принадлежать пользователю uucp и иметь права доступа 600.
/usr/lib/uucp/uucico -l -u
|
-u
предписывает использовать переданное имя
пользователя, а не запрашивать его.Для защиты пользователей UUCP от тех, кто мог бы давать неправильное
имя системы и обрушить их почту, Вы должны добавить команду
called-login для каждой системной записи в файле
sys
. Это описано ниже.
Защита от перехватчиков почты
Одна из самых больших проблем UUCP в том, что вызывающая система может назвать не свое имя; она объявляет имя вызываемой системе после фактического входа, но сервер не может проверить этого. Таким образом, нападающий может войти под своим именем UUCP, симулировать, что был кем-то еще, и прочитать чужую почту. Это особенно опасно, если Вы предлагаете вход в систему через анонимный UUCP, чей пароль общеизвестен.
sys
. Например:
system pablo ... usual options ... called-login Upablo |
В результате этого всякий раз, когда система говорит, что она
pablo, uucico
проверит, регистрировалась ли она как Upablo.
Если нет, вызов будет отвергнут, а соединение разорвано. Вы должны сделать
привычкой добавлять команду called-login к каждой
записи системы, которую Вы добавляете к Вашему файлу sys
. Важно, что Вы делаете это для всех систем,
независимо от того, будут ли они когда-либо вызывать Вас или нет. Для тех
машин, которые никогда не вызывают Вас, Вы, возможно, должны установить
called-login на некоторое полностью
поддельное имя пользователя, типа neverlogsin
, дабы никто точно не мог зайти.
Будьте бдительны: проверки последовательности обращения
Другой способ отражать и обнаружить самозванцев состоит в том, чтобы использовать проверки последовательности обращения. Проверки последовательности помогают Вам защититься от злоумышленников, которые сумели выяснить пароль, с которым Вы регистрируетесь в Вашей системе UUCP.
При использовании проверок последовательности обращения, обе машины следят за числом уже установленных соединений. Оно увеличивается с каждым соединением. После регистрации, вызывающий посылает порядковый номер обращения, а вызываемый сверяет его со своим. Если они не соответствуют, попытка соединения будет отклонена. Если начальный номер выбирать произвольно, нападавшим будет нелегко угадать правильный порядковый номер обращения.
Но проверки последовательности обращения делают для Вас еще больше: даже если некоторый очень умный человек обнаружит Ваш порядковый номер обращения также, как Ваш пароль, Вы заметите это. Когда нападавший вызывает Вашу передачу UUCP и захватывает почту, это увеличит порядковый номер обращения на один. Когда в следующий раз Вы вызываете Вашу передачу и пробуете регистрироваться, удаленный uucico откажется от Вас, потому что числа не соответствуют!
Если Вы включили проверки последовательности обращения, Вы должны регулярно проверять Ваши регистрационные файлы на сообщения об ошибках, которые намекают на возможные причины. Если Ваша система отклоняет порядковый номер обращения, который вызывающая система предлагает, uucico поместит в регистрационный файл сообщение, говорящее что-нибудь вроде "Out of sequence call rejected". Если Ваша система не допущена, потому что порядковые номера находятся вне синхронизации, в регистрационном файле будет примерно следующее "Handshake failed (RBADSEQ)".
# enable call sequence checks sequence true |
.Sequence
в
каталоге spool удаленной системы. Он должен
принадлежать uucp и иметь режим доступа 600
(то есть, чтение и запись разрешены только самому
uucp). Самое лучшее инициализировать этот файл произвольным
согласованным начальным значением. Иначе нападающий может подобрать номер,
пробуя все значения меньше, скажем, 60. Простой пример создания файла:
# |
Конечно, удаленная система должна дать возможность проверки последовательности обращения и использовать то же самое начальное значение, что и Вы.
Анонимный UUCP
Если Вы хотите обеспечивать анонимный UUCP-доступ к системе, Вы сначала должны саздать специальное имя для него (см. выше). Общей практикой является дать ему имя входа в систему и пароль uucp.
sys
, потому что команда требует имени
system, которое Вы не знаете. Taylor UUCP решает эту
проблему через команду unknown. Команда
unknown может использоваться в файле
config
, чтобы определить любую команду, которая
может обычно появляться в записи системы:
unknown remote-receive /incoming unknown remote-send /pub unknown max-remote-debug none unknown command-path /usr/lib/uucp/anon-bin unknown commands rmail |
Это ограничит неизвестные системы скачиванием файлов из подкаталогов
pub
и закачиванием файлов в каталог
incoming
ниже
/var/spool/uucppublic
. Следующая строка говорит
uucico игнорировать любые запросы из удаленной системы, чтобы включить
отладку локально. Последние две строки разрешают неизвестным системам
выполнять rmail, но путь команды разрешает
uucico искать команду rmail в
частном каталоге, с именем anon-bin
. Это позволяет
Вам обеспечить некоторый специальный rmail, который,
например, может передавать всю почту суперпользователю для исследования. Это
разрешает анонимным пользователям писать администратору системы, но в то же
время предотвращает отправление любой почты в другие места.
Чтобы включить анонимный UUCP, Вы должны определить по крайней мере один
параметр unknown в файле
config
. Иначе uucico
отклонит неизвестные системы.
Назад | Глобальное оглавление | Вперед |
Контроль доступа к возможностям UUCP | Локальное оглавление | Протоколы низкого уровня UUCP |