Денис Колисниченко
Если вы используете RedHat/Mandrake, установить ppp и mgetty можно с
помощью команд:
Пошаговая настройка Dial-In сервера
Шаг 1. Установка программного обеспечения
Операционная система: Linux
Нам потребуются ppp-2.3.x (желательно по-новее) и mgetty-1.1.x.
mgetty доложен быть собран с опцией -DAUTO_PPP, если это не так, нужно
пересобрать
Я использую ppp-2.4.0-3mdk.i586.rpm и mgetty-1.1.22-2mdk.i586.rpm (Linux
Mandrake 7.2)
# mount -t iso9660 /dev/hdd /mnty/cdrom
#cd /mnt/cdrom/Mandrake/RPMS
#rpm -Uvh mgetty*
#rpm -Uvh ppp*
/etc/mgetty+sendfax
dialin.config
login.config
mgetty.config
/etc/ppp
auth-up
auth-down
chap-secrets
ip-up
ip-down
options
pap-secrets
Если их нет, нужно самостоятельно найти где они находятся. При самосборке
смотрите что и куда
/etc/mgetty+sendfax/dialin.config - обычно пустой (все закомментировано).
/etc/mgetty+sendfax/login.config - должен содержать строчку
/AutoPPP/- a_ppp /etc/ppp/ppplogin
Убедитесь, что эта строчка не закомментирована. Если вы хотите, чтобы
имена пользователей
записывались в log-файлы, отредактируйте эту строку так:
/AutoPPP/- -
/etc/ppp/ppplogin
Затем создайте /etc/ppp/ppplogin
mesg n
tty -echo
/usr/sbin/pppd silent auth -chap +pap login
В некоторых версиях ppp вместо -chap нужно писать refuse-chap, а вместо
+pap - require-pap
Сделайте /etc/ppp/ppplogin исполняемым
# chmod +x /etc/ppp/ppplogin
В нашем примере мы используем PAP аутентификацию с использованием пароля
из /etc/passwd файла (см. ниже)
/etc/mgetty+sendfax/mgetty.config - должен такой:
# For Practical Peripheral 14.4 with fax disabled and prolonged
# For USRobotics V.Everything
# For US Robotics Sportster 28.8 with speaker off
port ttyS0
speed 28800
data-only y
debug 3
init-chat "" ATZ OK AT&F1M0E1Q0S0=0 OK
answer-chat "" ATA CONNECT \c \r
# carrier wait time (90 sec)
port ttyS1
speed 14400
data-only y
debug 3
init-chat "" ATZ OK AT&F1M0E1Q0S0=0S7=90+FCLASS=0 OK
answer-chat "" ATA CONNECT \c \r
port ttyS2
speed 57600
data-only y
debug 3
init-chat "" AT OK ATS7=50S0=1+S62=3+S64=2S39=10 OK
Для ZyXEL U336E можно использовать такие параметры:
init-chat "" ATZ OK AT&F1M0E1Q0S0=0S OK
answer-chat "" ATA CONNECT \c \r
Теперь нужно изменить /etc/inittab
#added by me
S0:2345:respawn:/sbin/mgetty -x 3 ttyS0
# Run gettys in standard runlevels
1:2345:respawn:/sbin/mingetty tty1
2:2345:respawn:/sbin/mingetty tty2
3:2345:respawn:/sbin/mingetty tty3
4:2345:respawn:/sbin/mingetty tty4
5:2345:respawn:/sbin/mingetty tty5
6:2345:respawn:/sbin/mingetty tty6
S1:2345:respawn:/sbin/mgetty -x 3 ttyS1
S2:2345:respawn:/sbin/mgetty /dev/ttyS2
S0,S1,S2 - просто идентификаторы - вы можете использовать любое имя.
Нужно назначить
отдельное имя для каждого порта. S0-S2 я использовал для наглядности.
Теперь нужно запустить mgetty (перед выполнением этой команды включите
модемы)
# init q
Если при выполнении этой команды модем(ы) не подключены или выключены,
в /var/log/mesages вы получите много
ругательств от mgetty по этому поводу.
Если на модеме загорелась лампочка TR, то все настройки выполнены правильно
и mgetty подхватил модем.
lock
login
auth
netmask 255.255.255.0
modem
crtscts
refuse-chap>require-pap
mtu 576
mru 576
proxyarp
myhost:ppp01
ms-dns CCC.CCC.CCC.CCC
Теперь отредактируем файл /etc/ppp/pap-secrets
* *
""
192.168.0.11
# Secrets for authentication using PAP
# client server
secret IP addresses
* *
""
192.168.0.12
* *
""
192.168.0.13
В нашем примере используется три модема для входящих звонков, поэтому
нужно сделать три записи.
Пароли мы будем брать из /etc/passwd (или /etc/shadow)
Вносим изменения в наш /etc/hosts
192.168.0.11 ppp01 ppp01.mydomain.com
192.168.0.12 ppp02 ppp02.mydomain.com
192.168.0.13 ppp03 ppp03.mydomain.com
mydomain.com нужно заменить на реальное имя домена.
При желании эти записи можно внести также и в локальную зону DNS.
# chmod u+s /usr/sbin/pppd
# echo "1" > /proc/net/ip_forward
Теперь вы готовы к работе!
#
user1 сервер.домен "" *
user2 сервер.домен "" *
#
Файл /etc/hosts править не нужно.
Вот и все.
Если у вас появляются сообщения вида:
modprobe: can't locate module char-major-24
то надо прописать в /etc/conf.modules
alias ppp-compress-21 bsd_comp
alias ppp-compress-24 ppp_deflate
alias ppp-compress-26 ppp_deflate