?????? ?????????? ??????? + callback ?? FreeBSD
????? ?????? ???????? - ?????? ?? ?????????? ?? ??????? ??? ???????????.
? ?????? ??????, ? ?????? ???? ?????????? ????? ?????? ?????? ? ??????
?????, ??????? ??? ???????? ??????????? ?? ???? ?????????.
?????? ???????? ?????????? ?????????: ?????????? ??????? ??????
????????? Remote Access Server ??? FreeBSD. ? ???????? ????????????
?????????????? ??????? PIII-300/ 64/ 4.3G + PCI Serial card ?? 2
com-????? ?? ???? NETMOS NM9835
(www.ivmm.com/eio/products_pci_fast_serial.html ). ???????????
???? FreeBSD 5.2.1 - ?? ?????? ?????? (???? 2004) ????? ??????.
?? ???? ????????? ????????? ? ???? ???????????? ???????, ??? ????
?????????? ?????? ?????????? ????? ? ?? ???? ??????.
?????? ?? ???????? - ?????? ?? ??? ??????????: mc, sshd, ?????.
???? ???????? ???????? ???? ?? ????????? ? ???? ???-???????? ?????
?? NM9835. ?????????? ???????? ??? ?????? ??????????? ??? ????????? ??????:
device puc
????? ???????? ??? ????????? ??????? ?????? ????? ???????? ???
www.freebsd.org/relnotes/CURRENT/hardware/i386/support.html.
??????? ?????????????? ????? ? ???? ?????? ?? ?????????, ????? ???
??????? firewall:
options IPFIREWALL
options IPFIREWALL_VERBOSE
options IPDIVERT
options DUMMYNET
????? ?????????????? ? ??????????? ?????? ????, ??? ???????? ???????
(??? ????? ? ?????? dmesg) ????? ????? ??????:
puc0: <NetMos NM9835 Dual UART and 1284 Printer port>
??? ???? ????????. ????? ???????? ? /dev ???????? cuaa4 ? cuaa5 (??????
??????????? ????????? ???-?????? cuaa0 ? cuaa1). ????? ??????? ? ??????
??????.
?? ????????? ????? ????? ??????, ?? ??? ?????? ?????? ???????. ? ??????
? ?????????? ??????????? ?????? pppd + mgetty. ? ?????? FreeBSD 5.2.1
???? pppd version 2.3 patch level 5, ?????????? ???????, ?? ????? ???
??????????????? ? ????????. ????? ??? ?????????? ?????
/usr/ports/comms/mgetty+sendfax. ???? ???? ????????????? ?????????
?????? ?????? ??????? ??? callback, ? ?? ???????????? ??????? ?????? ??
?????? pppd + mgetty, ???? ???? ??? ???????? ? mpd ? ppp. ?????? pppd
(kernel ppp) ???????? ????? ??????? ? ??????. ?? ? ???? ???????? ?????
callback. ??????? ????? ?????????? ????? ? ?????????? callback ??? pppd
?? ?????????? ???????, ? ????????? ?????? pppd ?????? ?? ???????? ??
FreeBSD ? ?.?. ???????????? ?? ???????????? ?????? ???????????? ???????
? ????? ???????.
???????? ???????? ? ppp(user ppp) ? mpd(Multi-link PPP daemon). ? ??????
ppp. ??????? ?????? ??? ?????? ??????????????? ?? ?????.
????? ???? ???????? ????????? ?????? ppp + mgetty.
1) ?????? /etc/rc.conf:
gateway_enable="YES"
??? ????????, ??????? ????? ?????????????, ?????? ??? ?????? ?????
??????, ??????? ???????? ??? ?????. ???? ?????????? ?????????
firewall-?, ???????? ??? ?
firewall_enable="YES"
firewall_script="etc/firewall"
2) ????? ????????? mgetty+sendfax ??? ??????? ????? ? /usr/local/etc/mgetty+sendfax/. ??? ?????????? ????? login.config ? mgetty.config. ???????? mgetty.config ? ?????????? ???? (???? ?????? ???????? ? ?????? ????????):
debug 4
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 NO
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
????????? ? login.config ????????? ?????? ? ?????????????? ?????? ??
?????????:
#/AutoPPP/ - a_ppp /usr/sbin/pppd auth -chap +pap login debug
/AutoPPP/ - - /usr/local/bin/ppplogin.sh
3) ??????? ? /usr/local/bin ???? ppplogin.sh ?????????? ???? ? ??????
??? ???????????:
#!/bin/sh
exec /usr/sbin/ppp -direct callback
?????? ?????????? ?? ?????? ppp + mgetty ??????? ????? ?????? ?????:
4) ????????? ? /etc/ttys ????? ????? ????? ??? ?????????????? mgetty ??
??????? ???????? ???????:
## COM's for Mgetty
cuaa0 "/usr/local/sbin/mgetty" unknown on insecure
cuaa1 "/usr/local/sbin/mgetty" unknown on insecure
cuaa4 "/usr/local/sbin/mgetty" unknown on insecure
cuaa5 "/usr/local/sbin/mgetty" unknown on insecure
?????? kill -1 1 ? ??????? ?????????:
561 ?? I 0:00.07 /usr/local/sbin/mgetty cuaa1
592 ?? I 0:00.07 /usr/local/sbin/mgetty cuaa4
5517 ?? S 0:00.02 /usr/local/sbin/mgetty cuaa0
5518 ?? S 0:00.02 /usr/local/sbin/mgetty cuaa5
?????? ???? ??? ??? ????????? ????. ??? ?? ??????? ?????????? ?????
/var/log/mgetty.cuaa0 (1,4,5) ?? ??????? ??????????????? ???????. ????
??? ? ??????? ? ???????? (?? ?????? ?????? ?????? DTR), ?? ?????? ????
???-?? ????:
03/11 09:49:53 aa1 mgetty: experimental test release 1.1.30-Dec16
03/11 09:49:53 aa1 check for lockfiles
03/11 09:49:53 aa1 locking the line
03/11 09:49:56 aa1 lowering DTR to reset Modem
03/11 09:49:57 aa1 send: ATS0=0Q0&D3&C1[0d]
03/11 09:49:57 aa1 waiting for ``OK'' ** found **
03/11 09:49:57 aa1 mdm_send: 'ATI'
03/11 09:49:57 aa1 Generic Rockwell modem (56000)
03/11 09:49:57 aa1 mdm_send: 'ATI3'
03/11 09:49:57 aa1 mdm_send: 'ATI4'
03/11 09:49:57 aa1 additional info: 'SIC Vector +380 572 431680'
03/11 09:49:57 aa1 modem quirks: 0004
03/11 09:49:57 aa1 mdm_send: 'AT+FCLASS=2' -> OK
03/11 09:49:57 aa1 mdm_send: 'AT+FCLASS=0' -> OK
03/11 09:49:57 aa1 mdm_send: 'AT+FAA=1;+FCR=1' -> OK
03/11 09:49:57 aa1 mdm_send: 'AT+FBOR=0' -> OK
03/11 09:49:58 aa1 mdm_send: 'AT+FLID="00 00 000000"' -> OK
03/11 09:49:58 aa1 mdm_send: 'AT+FDCC=1,5,0,2,0,0,0,0' -> OK
03/11 09:49:58 aa1 waiting...
???? ?? ?? ??? ?????????, ???? ? ???? ????? ???-?? ????:
03/11 09:53:52 aa0 mgetty: experimental test release 1.1.30-Dec16
03/11 09:53:52 aa0 check for lockfiles
03/11 09:53:52 aa0 locking the line
03/11 09:53:55 aa0 WARNING: DSR is off - modem turned off or bad cable?
03/11 09:53:55 aa0 lowering DTR to reset Modem
03/11 09:53:56 aa0 send: ATS0=0Q0&D3&C1[0d]
03/11 09:53:56 aa0 waiting for ``OK''
03/11 09:54:16 aa0 timeout in chat script, waiting for `OK'
5) ??????? ????????????, ?????/?????? ???????? ????? ?????????????? ???
?????????????? ???????. ?? ????? ????, ?????????????? ????? ??????? (?
????? ???? ? ????? ? ??? ??????? ??? ???????????? ??? ???????) ?? Radius
??? Tacacs, ???????? ???? ??????????? ??????? ????? ???????????. ? ????
?????? ????????????? ????? ?? ?????????????, ??????? ??????????? ??
??????????? Unix-??????????????. ????? ????????? ????????????, ?????
???????? ? /etc/shells ???? ? ppplogin.sh, ??????? ????? ?????? ???
????????????? ?? ???????:
/bin/sh
/bin/csh
/bin/tcsh
/usr/local/bin/ppplogin.sh
???? ?? ????????? ????????? ??????, ?? ??? ???????? ????????????
(adduser) ??????? ?? ???? ????????? ??? ? ???????? ????? ppplogin.sh, ?
????? ????????? ???? ?? ????????? ? sh. ? ????? ???????? ?????? ??????
???? ??????? ????????????.
??????? ????????????. ? ????? ? ??? ??????????:
manager1:*:1004:1004:PPP user:/home/ppp:/usr/local/bin/ppplogin.sh
6) ???? ? /usr/share/examples/ppp ? ?????? ???????? ? /etc/ppp ?????:
ppp.conf.sample -> ppp.conf
login-auth -> login-auth
ppp.secret.sample -> ppp.secret
??? ??????? ???? 3-? ??????, ?.?. ? ????????????? ??? ??? ???? ??????.
???? login-auth ? ?????? ?? ??????. ?? ????????? ?????????? ???????? ?
ppp.conf ???????? ?????? ??, ??? ????? ? ????? ??????:
default:
set log Phase Chat LCP IPCP CCP tun command
callback:
enable pap passwdauth
enable proxy
set ifaddr 192.168.1.3 192.168.1.241-192.168.1.244
accept dns
set callback cbcp
set cbcp
set log +cbcp
set redial 3 1
set device /dev/cuaa0 /dev/cuaa1 /dev/cuaa4 /dev/cuaa5
set speed 115200
set dial "TIMEOUT 30 "" AT OK-AT-OK ATDT9w\T CONNECT"
????? ???????? ?? ????????? ???????:
?????? "set ifaddr" ???????? ?? ?????? ???????. ?????? ????? - ???
????? ??????? (????? ??????? ????? ??????? ?????), ?????? ???????? -
???????? ??????? ??????? ????? ?????????? ????????;
?????? "set device..." ????????? ??????????, ??????? ????????????? ?
???????? ?????? - ? ???? ?????? ??? 4 ?????.
? ?????? "set dial" ? ??????? ??????? ? 10 ?? 30, ? ?????? ATDT
???????? ATDT9w, ?.?. ? ???? ????? ? ????-??? ?? ????? ????? 9-??.
????? ?????? ???? ppp.secret:
# Authname Authkey Peer's IP address Label Callback
manager1 * 192.168.1.251 * 222444
manager2 * 192.168.1.252 * *
lawer * *
lawer * *
? ?????? ???????, ???????????? manager1 ????? ??????????? ????????????
callback ?? ????????????? ????? ????????, manager2 ????? ??????? ?????
????????, ?? ??????? ??? ???????????. ? ????? ??? ?????????????
??????????? ??????. ? ????????????? lawer1 ? 2 ?? ???????????
??????????? callback-? ? ?? ???????? ???????????? ?????? ?? ????
???????, ????????? ? ppp.conf ? ????????? set ifaddr. ?????????? ??
?????? ????? ???????? ?? ????, ?? ????? ???? ??? ?????? ??? ???????.
???????? ? ???? ???? Windows 2000 Priofessional, ???? ? ?????, ??????,
????? ??????? ????????, ???? ????? ????????. ????????? ??????????
?????????? ???????????, ?.?. ?????? ??????????? ?? ????? ??????, ??? ??
?????????. ???????? ?????? ????? ????????, ????? ? ??????. ?????? ?
??????? ??? /var/log/ppp.log (??????? ?????? ?????):
Mar 11 14:47:39 ras-server-server ppp[1494]: tun0: Phase: Pap Input: REQUEST (manager1)
Mar 11 14:47:39 ras-server-server ppp[1494]: tun0: Phase: Pap Output: SUCCESS
Mar 11 14:47:39 ras-server-server ppp[1494]: tun0: Phase: deflink: lcp -> cbcp
Mar 11 14:47:39 ras-server-server ppp[1494]: tun0: CBCP: deflink: SendReq(0) state = closed
Mar 11 14:47:39 ras-server-server ppp[1494]: tun0: CBCP: TYPE Server-spec
Mar 11 14:47:39 ras-server-server ppp[1494]: tun0: CBCP: DELAY 0
Mar 11 14:47:39 ras-server ppp[1494]: tun0: CBCP: deflink: State change closed --> req-sent
Mar 11 14:47:39 ras-server ppp[1494]: tun0: CBCP: deflink: RecvResponse(0) state = req-sent
...
Mar 11 14:47:39 ras-server ppp[1494]: tun0: CBCP: deflink: State change req-sent --> ack-sent
Mar 11 14:47:39 ras-server ppp[1494]: tun0: LCP: deflink: RecvTerminateReq(6) state = Opened
Mar 11 14:47:39 ras-server ppp[1494]: tun0: LCP: deflink: LayerDown
Mar 11 14:47:39 ras-server ppp[1494]: tun0: Phase: deflink: CBCP: Will dial back on 222444
Mar 11 14:47:41 ras-server ppp[1511]: tun0: Phase: Call peer back on 222444
Mar 11 14:47:53 ras-server ppp[1511]: tun0: Chat: deflink: Redial timer expired.
Mar 11 14:47:53 ras-server ppp[1511]: tun0: Phase: deflink: Connected!
Mar 11 14:47:53 ras-server ppp[1511]: tun0: Phase: deflink: opening -> dial
Mar 11 14:47:53 ras-server ppp[1511]: tun0: Chat: Phone: 222444
Mar 11 14:47:53 ras-server ppp[1511]: tun0: Chat: deflink: Dial attempt 1 of 1
Mar 11 14:47:53 ras-server ppp[1511]: tun0: Chat: Send: AT^M
Mar 11 14:47:53 ras-server ppp[1511]: tun0: Chat: Expect(30): OK
Mar 11 14:47:53 ras-server ppp[1511]: tun0: Chat: Received: AT^M^M
Mar 11 14:47:53 ras-server ppp[1511]: tun0: Chat: Received: OK^M
Mar 11 14:47:53 ras-server ppp[1511]: tun0: Chat: Send: ATDT9w222444^M
Mar 11 14:47:53 ras-server ppp[1511]: tun0: Chat: Expect(30): CONNECT
Mar 11 14:48:24 ras-server ppp[1511]: tun0: IPCP: IPADDR[6] 192.168.1.241
Mar 11 14:48:24 ras-server ppp[1511]: tun0: IPCP: PRIDNS[6] 192.168.1.2
Mar 11 14:48:24 ras-server ppp[1511]: tun0: IPCP: SECDNS[6] 255.255.255.255
?????? ?? ????? ???????????? ?????????? ??? - ??? ??????? 4-? ???????
????????????? ????????????? ?????? ?? ??????? ?????? ? ?????? ?????? ??
?????? ? ?.?. ?? ?????, ? ????????????? ???????? ???? ????? (??????
???????? ????? ????????????). ??? ???????, ???? ???? ????? ??????,
?????? ???????????? ?? ????????? ?????, ? ?.?. ???? ?? ????? ???????
????????? ?????.
P.S. ??????? ?????? ?????? ????-?????? ???????, ???? ?? ???????????, ??
?????? ????????? ?????? ?????????? ??????? ? ???????????? ????????. ???
???????? ? ????????? ???????????.
www.opennet.ru
 |