Сервисы TCP для OS/2


Данный пакет (tcp4os2.zip, 1.3M) создан на основе shareware пакета Apop3d-Adialin (автор Axel Mueller, ФРГ). К сожалению, автор пакета пропал в неизвестном направлении, прекратив поддержку пользователей и развитие пакета. Я купил его в 1997 году и с тех пор на основе него потихоньку состряпал полный комплект служб TCP для OS/2. Из Apop3d, который представляет собой POP и PPP-сервер, я взял за основу единую базу данных на пользователей, а остальное дописал сам.

Сначала появился TELNET-сервер. Он работает так же заумно, как и штатный -- т.е. использует Character Device Monitor и замену VIO подсистемы. Кроме того, для обеспечения корректной работы с многими процессами я попользовался Named Pipes, чтобы обеспечить правильный сбор потока данных с нескольких параллельно работающих instanses VIO DLL. Главное отличие от штатного -- сервер содержит встроенный командный интерпретатор, который позволяет ограничить доступ пользователя к диску его Home Directory, а также проверять допустимость выполнения команд с помощью специального файла TELNETD.CFG, где содержатся описания команд и ключей и разграничение прав пользователей на выполнение команды. Для привиллегированных пользователей есть возможность выхода в системный shell с помощью команды SU. Кроме того, я встроил в Telnet почтового клиента, похожего на Unix'овый, т.к. обнаружил, что многие пользователи предпочитают работать со своей почтой именно через TELNET, если собственная персоналка далеко. Частью телнет-сервера является talkd, который работает не только как стандартный TALK-сервер (причём многопользовательский), но и обеспечивает обмен сообщениями между параллельно работающими сессиями телнет, что позволяет реализовать такие Unix'овые команды, как who и mesg.

Fingerd позволяет посмотреть данные из базы данных пользователей.

Потом в 1998 году я написал FTP-сервер, потому что имеющиеся серверы не умели пользовать ACL и Directory Limits с 386HPFS, и мне хотелось, чтобы для FTP также работала единая база на пользователей. FTP пользуется паролем и именем доступа из базы данных пользователей для TCP, а правами доступа - из ACL, что, конечно, требует одновременного существования account'а для пользователя и на LAN сервере, что, впрочем, логично. Доступ по FTP ограничен одним диском, во-первых, по соображениям безопасности, во-вторых, мне уж очень не хотелось придумывать всякие псевдокаталоги. Диск для доступа берется из переменной USER_HOME. Сервер также умеет выдавать баннерные файлы для каталогов и ограничивать доступ к определенным ресурсам по IP-адресам. Для работы сервера необходимо запустить ftpacc.exe, которая обеспечивает взаимодействие с LAN Server или Peer. Server или Peer должен быть активен, иначе не работает запрос ACL, и пользователь хотя и войдёт в FTP, ничего не увидит. Чтобы пользоваться Directory Limits, необходимо установить Local Security в LAN Server и поставить на все диски разрешение для local -RWDEXAP; ftpacc.exe при этом необходимо запускать из командника runpriv.cmd.

Последнее добавление - это bugfix к sendmail 8.9.3, портированного неизвестным автором. Поскольку автор этого порта не сумел победить переименование открытых файлов, то sendmail некорректно работает с очередью, если за один раз не удалось "пропихнуть" письмо. Поэтому пользователь может получать какие-нибудь warning'и каждые полчаса, что не вызовет у него восторга. Я написал небольшую программку, которая не только устраняет данный недостаток, но и добавляет опцию "-а", как у IBM sendmail.

Кроме того, я исправил несколько глюков в Apop3d и Adialin, поскольку их всё равно пришлось развинчивать.

Должен добавить, что Apop3d и Adialin по-прежнему имеют статус shareware: если Вы пользуетесь этими программами, то должны будете заплатить Mueller'у назначенную им сумму в 49 DM за каждый из пакетов (если, конечно, Mueller когда-нибудь найдётся). Мои программы совершенно бесплатны.

Dmitry V. Serebryakov


Интересные ссылки:
Комментариев к странице: 0 | Добавить комментарий
Домой | Проект ядро Core/2 | Проект OS/4 Download | Новости | Гостевая книга | Подробно обо всем | Нужные программы | Проекты | OS/2 FAQ | Всячина | За и Против | Металлолом | #OS2Russian | RDM/2 | Весёлые картинки | Наша галерея | Доска объявлений | Карта сайта | ПОИСК | ФОРУМ