Ситуация такая.До сегодняшнего дня все модемные юзеры использовали в качестве шелла ppp,
сегодня настроил pppd, так вот если пользователь вводит свои данные руками
при подключении в окне терминала, все нормально, юзается pppd, а если пароль
сохранен в свойствах удаленного доступа, то продолжает юзаться ppp, хотя в
качестве шелла прописан уже /usr/sbin/pppd.В /etc/ppp/ppp.shells из шеллов стоит также только /usr/sbin/pppd
В чем дело, как такое может быть?
Проблема опять-таки заключается с autologin-ом, при вводе всего ручками нареканий пока нет.
Посмотрел я файл /etc/gettytab (наверное забыл упомянуть, что используется getty), в котором набрел на интересные строки:.....
2|std.9600|9600-baud:\
:de#2:pp=\/etc\/ppp_g\/autoPPP:\
:np:sp#9600:im=\n\r Welcome to (%h) on (%t)\r\n\r\n:
g|std.19200|19200-baud:\
:np:sp#19200:
f|std.38400|38400-baud:\
:np:to#26:sp#38400:
ff|std.57600|57600-baud:\
:de#2:pp=\/etc\/ppp_g\/autoPPP:\
:np:sp#57600:to#30:im=\n\r Welcome to (%h) on (%t)\r\n\r\n:
gf|std.115200|115200-baud:\
:de#2:pp=\/etc\/ppp_g\/autoPPP:\
:np:sp#115200:to#30:im=\n\r Welcome to (%h) on (%t)\r\n\r\n:
gg|stdg.115200|g115200-baud:\
:de#2:pp=\/etc\/ppp_g\/auto\-PPP\:\
:np:sp#115200:to#30:im=\n\r Welcome to (%h) on (%t)\r\n\r\n:
.....То есть если у пользователя имя и пароль сохраняются в системе, а не вводятся им ручками, аутентификация идет по другому принципу. Как видно, вызывается скрипт autoPPP, содержимое которого при использовании ppp стояло следующее:
#!/bin/sh
TTY=`tty`
IDENT=`basename $TTY`
exec /usr/sbin/ppp -direct $IDENTПоэтому ppp и запускался вместо положенного pppd когда человек не вводил аутентификационную инфу при подключении руками, а она передавалась
автоматически.Хорошо, поступил следующим образом, написал так в этом autoPPP:
#!/bin/sh
#TTY=`tty`
#IDENT=`basename $TTY`
exec /usr/sbin/pppd
# exec /usr/sbin/ppp -direct $IDENTВ систему пользователя, у которого имя и пароль передаются автоматически, пускает нормально, но его, в отличие от пользователя, которой вводит все
руками, не видно в списке по командам w или who, невидимка одним словом, но он, тем не менее, работает в системе. Может в этом случае pppd нужно
запускать с какими-то дополнительными параметрами, чтобы он отображался в списке присутствующих?
Приведу ранее используемый для всех модемных юзеров при ppp шелл (назывался Xppp):#!/bin/sh
case `tty` in
*ttyd0)
TTY_LINE="D0";;
*ttyd1)
TTY_LINE="D1";;
*ttyd2)
TTY_LINE="D2";;
*ttyd3)
TTY_LINE="D3";;
*ttyd4)
TTY_LINE="D4";;
*ttyd5)
TTY_LINE="D5";;
*ttyd6)
TTY_LINE="D6";;
*ttyd7)
TTY_LINE="D7";;
*ttyd8)
TTY_LINE="D8";;
*ttyd9)
TTY_LINE="D9";;
*ttyda)
TTY_LINE="Da";;
*ttydb)
TTY_LINE="Db";;
*ttydc)
TTY_LINE="Dc";;
*ttydd)
TTY_LINE="Dd";;
*ttyde)
TTY_LINE="De";;
*ttydf)
TTY_LINE="Df";;
*ttydg)
TTY_LINE="Dg";;
*ttydh)
TTY_LINE="Dh";;
*ttydi)
TTY_LINE="Di";;
*ttydj)
TTY_LINE="Dj";;
*)
echo " Bad LINE which you use to get PPP access " ;
sleep 3 ;
exit ;;
esac
exec /usr/sbin/ppp -direct $TTY_LINE
Вот теперешний /etc/ppp/options для pppd:modem
crtscts
asyncmap 0
ms-dns 195.195.195.195
ms-dns 195.195.195.196
lock
debug
Вот /etc/ppp/options.ttyXX190.195.195.195:190.195.195.1
name host.domain.ru
defaultroute
proxyarp
ms-dns 195.195.195.195
ms-dns 195.195.195.196
lock
debug
Сейчас поставил уже mgetty, столкнулся с такой проблемой, при автоматическом вводе пароля пользователем не получается войти в систему, в
/var/log/pppd.log следующее:Sep 9 01:35:55 mrrc pppd[925]: rcvd [PAP AuthReq id=0xe user="putin"
password="vova"]
Sep 9 01:35:55 mrrc pppd[925]: PAP authentication failure for putin
Sep 9 01:35:55 mrrc pppd[925]: sent [PAP AuthNak id=0xe "Login incorrect"]
Sep 9 01:35:55 mrrc pppd[925]: sent [LCP TermReq id=0x4 "Authentication
failed"]
Sep 9 01:35:56 mrrc pppd[925]: rcvd [LCP TermAck id=0x4 "Authentication
failed"]
Sep 9 01:35:56 mrrc pppd[925]: Connection terminated, connected for 1
minutes
Sep 9 01:35:56 mrrc pppd[925]: Hangup (SIGHUP)
Sep 9 01:35:56 mrrc pppd[925]: Exit.В /usr/local/etc/mgetty sendfax/login.config запуск производится таким образом:
/AutoPPP/ - a_ppp /usr/sbin/pppd pap nodetach auth login require-pap passive silent debug
Файл /etc/ppp/pap-secrets (-rw------- 1 root wheel 4 Sep 9 01:07 pap-secrets) содержит следующее:* * также пробовал писать так **""* результат тот же.
Что не так, почему не пускает автологингом? Как прописать в файле pap-secrets чтобы пароль проверялся из /etc/master.passwd?
Еще интересует, нужно ли в /usr/local/etc/mgetty sendfax/mgetty.config
прописывать все имеющиеся порты с модемами (у меня их 16) и возможно ли на каждый задать свою скорость и длительность звонка?
Уже разрешилось в целом.Сейчас происходит такая вот фигня.
Не работают нормально пользователи, имеющие шелл /usr/sbin/pppd, или те, кто заходит автогогином (не вводит имя и пароль руками), которым назначается pppd самостоятельно при выполнении /usr/local/etc/mgetty sendfax/login.config.
Пользователь подключается, работает где-то с минуту, после чего связь затыкается, ничего не пингуется и все лежит. В /var/log/pppd.log в конце
перед разрывом связи добавляется строка:Sep 9 19:13:03 mrrc pppd[5663]: CCP: timeout sending Config-Requests
Чтобы это значило?
Настораживает полное отсутсвие в системе (FreeBSD 4.1.1) файлов /etc/conf.modules и /etc/inittabСодержание /usr/local/etc/mgetty sendfax/mgetty.config:
debug 9
#fax-id 00 00 000000
speed 57600
#direct NO
#blocking NO
port-owner uucp
port-group uucp
port-mode 0660
#toggle-dtr YES
#toggle-dtr-waittime 500
data-only yes
#fax-only NO
modem-type auto
init-chat "" ATS0=0Q0&D3&C1 OK
#modem-check-time 3600
rings 1
#answer-chat "" ATA CONNECT \c \r
#answer-chat-timeout 80
#autobauding NO
#ringback NO
#ringback-time 30
#ignore-carrier false
#issue-file /etc/issue
#prompt-waittime 500
login-prompt @ login:
login-time 240
#diskspace 1024
#notify faxadmin
#fax-owner uucp
#fax-group modem
#fax-mode 0660
Содержание /usr/local/etc/mgetty sendfax/login.config:/AutoPPP/ - a_ppp /usr/sbin/pppd auth refuse-chap require-pap login lock debug
* - - /usr/bin/login @
Содержание /etc/ppp/options:modem
crtscts
asyncmap 0
lock
debugСодержание /etc/ppp/options.ttydg:
:194.194.194.194
debug