Имеем следующее:
RED HAT 7 (или любой совместимый, например ASPLinux 7.X)
Сетка 172.16.0.0/24, выделенка на ttyS0, MOXA с портами cum0 - cum7
Провайдер (FreeBSD) дает на выделенку автоматически IP, DNS; логин и пароль не
проверяет.
Хотим:
провайдить локалу и удаленных клиентов.
Решение:
Инсталлируем mgetty. Допустим, у нас есть
mgetty-1.1.25-2.asp.i386.rpm, тогда делаем rpm -ivh
mgetty-1.1.25-2.asp.i386.rpm
Редактируем /etc/mgetty+sendfax/login.config
Тут должны быть только 2 строчки:
/AutoPPP/ - - /etc/ppp/ppplogin
* - - /bin/login @
В /etc/inittab пишем:
# 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
ms-dns нужны только для Windows-клиентов (других, наверно и не будет :-) Это
наши ДНС-сервера нашего провайдера.
Создаем /etc/ppp/options.cum1 и дальше по аналогии до /etc/ppp/options.cum7
passive
172.16.0.1:172.16.0.103 потом 105, потом 107...
proxyarp
ms-dns 195.5.62.1
ms-dns 195.5.62.3
debug
В /etc/ppp/pap-secrets пишем:
# Secrets for authentication using PAP
# client server secret IP addresses
makar * парольмакара 172.16.0.101
user * парольюсера 172.16.0.102
makarj * парольмакаровогобратана 172.16.0.103
shmit * парольхакерашмита 172.16.0.104
IP-адреса будут ввыдаваться персонально каждому юсеру. Чтобы они дозванивались,
после добавления юсера в систему нужно его добавить в /etc/ppp/pap-secrets
Таким образом, мы избавляемся от т.н. "Сиамских близнецов"
Это наши ДНС. Не знаю, может это и не нужно. Я просто у провайдера спросил.
Вот и все, что нам нужно, чтобы к нам звонили. На клиентских машинах создаем
дозвон, оставляем только TCP-IP, остальное оставляем по умолчанию. В свойствах
IP-протокола указываем шлюз на наш сервер 172.16.0.1
Теперь нам нужно, чтоб наша выделенка автоматически звонила провайдеру:
ppp-on, ppp-off, ppp-on-dialer берем с /usr/share/doc/ppp-2.4.0/scripts и
катаем в /etc/ppp
Правим ppp-on:
#!/bin/sh
#
# Script to initiate a ppp connection. This is the first part of the
# pair of scripts. This is not a secure pair of scripts as the codes
# are visible with the 'ps' command. However, it is simple.
#
/bin/masq #Эту байду нужно добавить, потом объясню зачем
# These are the parameters. Change as needed.
TELEPHONE=1 # The telephone number for the connection
ACCOUNT="" # The account name for logon (as in 'George Burns')
PASSWORD="" # The password for this account (and 'Gracie Allen')
LOCAL_IP=0.0.0.0 # Local IP address if known. Dynamic = 0.0.0.0
REMOTE_IP=0.0.0.0 # Remote IP address if desired. Normally 0.0.0.0
#NETMASK=0.0.0.0 # The proper netmask if needed
#
# Export them so that they will be available at 'ppp-on-dialer' time.
export TELEPHONE #ACCOUNT PASSWORD - у меня мой провайдер паролей не спрашивает.
Если у Вас спрашивает - надо раскомментировать
/bin/masq #Эту байду нужно добавить, потом объясню зачем
Правим ppp-on-dialer:
#!/bin/sh
#
# This is part 2 of the ppp-on script. It will perform the connection
# protocol for the desired connection.
#
exec chat -v
TIMEOUT 3
ABORT 'nBUSYr'
ABORT 'nNO ANSWERr'
ABORT 'nRINGINGrnrnRINGINGr'
'' rAT
'OK-+++c-OK' ATH0
TIMEOUT 30
'' ATA # У меня ATA, потому, что мой модем не звонит, а берет трубку
CONNECT ''
# ogin:--ogin: $ACCOUNT
# assword: $PASSWORD Я же говорил, что меня провайдер пароль не спрашивает
ppp-off оставляем без изменений
Правим /etc/rc.d/rc.local
Последнюю строчку ставим:
sh /etc/ppp/ppp-on
и делаем его исполняемым. Эта штука будет нам маскарадить клиентов в интернет
Для съема статистики рекомендую getstatd - http://www.opennet.ru/getstatd/
Очень крутая, но простая в использовании штука. Дает пользователю возможность
через веб-интерфейс узнать статистику за любой период, а администратору -
статистику на всех юсеров.
Может чего и упустил, в случае чего мыльте. В качестве оплаты принимаю
виртуальное пиво ;-)
Эта дока рассказывает, как сделать маленький диалап-сервер у себя дома
Значит так. Для начала тот комп, на который дозваниваются, будет
сервер, а тот, который звонит, будет клиент.
Допустим, на сервере стоит модем на com1
Инсталлируем mgetty. Допустим, у нас есть
mgetty-1.1.25-2.asp.i386.rpm, тогда делаем rpm -ivh
mgetty-1.1.25-2.asp.i386.rpm
Редактируем /etc/mgetty+sendfax/login.config
Тут должны быть только 2 строчки:
# Secrets for authentication using PAP
# client server secret IP addresses
user * парольюсера 172.16.0.101
Создаем /etc/ppp/ppplogin
#!/bin/sh
mesg n
tty
/usr/sbin/pppd noauth noccp -chap +pap kdebug 4 login
и делаем его исполняемым
Создаем /etc/ppp/resolv.conf
172.16.0.100
172.16.0.100
Теперь после kill -1 1 или после перезагрузки твой модем дожен брать
трубку после первого звонка. Он полностью готов к работе как настоящий
сервер дозвона.
Чтобы кидаться файлами, лучше всего использовать FTP. Самый простой
способ - проинсталлировать wu-ftpd. Например, если у нас есть
wu-ftpd-2.6.1-12.0.asp.i386.rpm, то делаем rpm -ivh
wu-ftpd-2.6.1-12.0.asp.i386.rpm
Редактируем /etc/xinetd.d/wu-ftpd Он должен иметь такой вид:
# default: on
# description: The wu-ftpd FTP server serves FTP connections. It uses
# normal, unencrypted usernames and passwords for authentication.
service ftp
{
disable = no
socket_type = stream
wait = no
user = root
server = /usr/sbin/in.ftpd
server_args = -l -a
log_on_success += DURATION USERID
log_on_failure += USERID
nice = 10
# disable = yes
}
После этого делаем /etc/rc.d/init.d/xinetd restart
Сервер готов. На клиенте работаем с ним точно так же, как с
интернетом. Делаем дозвон, запускаем ftp сессию и расслабляемся.
552 Прочтений • [Настройка сервера удаленного досупа в Linux (linux dial-in dialup mgetty modem ppp)] [08.05.2012] [Комментариев: 0]