proxy
Zahemszky Gabor
zgabor at CoDe.hu
1998. Dec. 1., K, 13:23:30 CET
>
> Sziasztok!
>
> Uj vagyok itt a listan, es raadasul kezdo a BSD-hez, igy hat a
> segitsegeteket kerem. Szeretnek felallitani otthon egy modem-lan osszekoto
> szervergepet. Nekem NetBSD-m van, nem tudom, mennyire hasonlit a
> FreeBSD-hez, de ezzel szeretnem megoldani a dolgot. Ha tudnatok segiteni,
> hogy mukodjon a dolog, nagyon orulnek. Igazabol semmi tapasztalatom nincs e
> teren, ugyhogy nem lesz egy egyszeru dolog...
Szia!
Kicsit talan lehetnel bovebb is, nem akkora a lista forgalma, hogy ne birna el
egy bovebb magyarazatot.
1) ha mondjuk elarulnad, hogy ppp-t vagy slip-pet akarsz
2) egyszeru gateway-kent akarod, vagy a subject-beli proxy jelent is valamit
3) stb
valasz:
Eloszor is, mint minden unixos problema eseten: man! Masodszor egy jo
sysadmin konyv (nekem az Evi Nemeth-fele UNIX System Administration 2nd
Edition jut eszembe), eleg sokat beszel altalaban a BSD-krol is (speciel
egyiket sem emliti, de a BSDI-t igen, ha jol emlekszem; raadasul se slip, se
ppp, se proxy nincs benne ;-( ). Kovetkezo lepeskent a FreeBSD FAQ es
HandBook nagyon jol leirja majd mindegyik dologra a valaszt (szerintem a
magyar tukron is elerheto, ha van web-ed: www.hu.freebsd.org/noeztnemtudom,
vagy persze a kinti gepek www.freebsd.org), es vegul igazan nem dicserni
akarom, de ha nekem problemam van, es nem talalok bsd-s infot, akkor a
Linuxos HowTo-k igen jok, ha nem teljesen Linux specifikus dolgokat olvasol
eppen (de azok is altalaban jok, mert azert annyira megsem specifikusak :-)
1)
a) slip eseten:
chat - a tarcsazashoz es a vonal felhuzasahoz
slattach - ez az ``ifconfig''
b) pppd:
pppd - legalabbis asszem NetBSD-n csak ez az egy ppp megvalositas van.
Ehhez egy pelda, a FreeBSD-s megvalositas eseten /etc/ppp/options a
filename:
--- /etc/ppp/options ---
/dev/modem
115200
crtscts
modem
connect "/usr/bin/chat -f /etc/ppp/chatscript"
noipdefault
passive
:ez.a.tuloldali.ipcim
defaultroute
demand
persist
idle 30
--- /etc/ppp/chatscript ---
ABORT BUSY
ABORT 'NO CARRIER'
TIMEOUT 5 "" AT&F0
OK-ATQ0-OK ATE1Q0W1
OK AT&C1&K3&R0
OK ATD--telefonszam--
TIMEOUT 40 CONNECT ""
TIMEOUT 25 ogin:--ogin: EzALoginod
word: EzMegAPasswordod
---
Az egesz pppd inditas elvegezheto parancssorbol, is, de foleg a login/pwd
nem ajanlatos, ezert raktam en fajlba mindent (ps-sel nem lathatok az infok)
termeszetesen mode 600, mert kinek mi koze a te otthoni halodon, hogy milyen
szamot hivsz, es mi a login szekvencia.
c) ppp:
Most hirtelen az ugrott be, hogy van a NetBSD-ben is tun device, akkor
nyilvan van user-level-ppp (ezt hijjak ppp-nek, meg iij-ppp-nek), ekkor tehat
ezt is lehet hasznalni. Ilyenkor a /etc/ppp/ppp.conf-ban vannak a dolgok:
--- /etc/ppp/ppp.conf ---
default:
set log Connect Carrier IPCP
set device /dev/modem
set speed 115200
deny lqr
deny pred1
disable lqr
disable pred1
set dial "ABORT BUSY ABORT NO\\sCARRIER TIMEOUT 5 \"\" AT&F0 OK-ATQ0-OK ATE1Q0W1 OK AT&C1&K3&R0 OK \\dATDT\\T TIMEOUT 40 CONNECT"
szolgaltatoneve:
set phone "egyikszam|masikszam|harmadikszam"
set authname LoginNev
set authkey Password
set login "TIMEOUT 25 ogin:--ogin: \\U word: \\P"
set timeout 30
set ifaddr 193.226.223.1/0 193.226.223.62/0 255.255.255.0 0.0.0.0
delete ALL
add 0 0 HISADDR
--- /etc/ppp/ppp.linkup ---
MYADDR:
delete ALL
add 0 0 HISADDR
!bg /bin/cp /usr/local/lib/speak_freely/ring.au /dev/audio
! /bin/sleep 3
!bg /usr/sbin/ntpdate -s ts1.euroweb.hu gatekeeper.ohvi.hu
--- /etc/ppp/ppp.linkdown ---
MYADDR:
! /usr/bin/true
!bg /bin/cp /usr/local/lib/speak_freely/busy.au /dev/audio
---
A ppp.conf-ban egy trukk van: ha chap/pap van, akkor enable/disable es
accept/deny a megfelelok, es ki kell szedni a set login kezdetu sort. Ha
van login, akkor _nem_ jatszik le pap-ot/chap-ot (magyarul: chap-ot pap-ot
otthagyott Csokonai Vitez Mihaly). Termeszetesen mindenutt a te modemednek
megfelelo inicializalas, es a te loginodnak megfelelo login-t kell beleirni
a configokba. A link{up.down} scriptek nem feltetlenul kellenek, ez peldaul
azert jo, mert kapcsolodaskor hallom mikor epult ki a kapcsolat, es meg az
orat is beallitja ket stratum-4, v. -5 szervertol, akiket gyorsan elerek,
leallaskor meg megint csak hallom, hogy most bontott. Ezek a peldak
egyebkent dinamikus ppp-s cimekkel igazak, staikus eseten egy kicsit
egyszerubb a dolog. Vigyazni kell a fajl formatumaval, tenyleg ilyen, hogy
a cimkesorok elso pozocioban kezdodnek, de a konfig sorok szokoz utan.
Termeszetesen mind a slip, mind a ppp-s megvalositashoz olyan kernel kell,
amibe a megfelelo funkciok bele vannak forditva:
pseudo-device sl 1 # ez kell a slip-hez
pseudo-device ppp 1 # ez kell a pppd-hez
pseudo-device tun 1 # ez kell a user-level ppp-hez
Es persze a megfelelo eszkozfajl, ami csak tun eseten kell:
cd /dev
sh /dev/MAKEDEV tun0
2) gateway/proxy:
a) gateway: valahol az rc scriptekben be kell allitani, hogy gateway
akarsz lenni, ami lefuttatja bootkor a sysctl -w net.inet.ip.forwarding=1
parancsot (FreeBSD eseten /etc/rc.conf, valami hasonlo lehet nalad is)
b) folteszel megfelelo proxy programot, ezt nem tudom, de a
squid-et, es a delegade-et szoktak ajanlgatni. Ilyenkor ha jol tudom :-)
net.inet.ip.forwarding=0
Udvozlunk a BSD UNIX-ot hasznalok taboraban, remelem tetszeni fog! Kerdezz
batran meg a vegen az is lehet, hogy valaki tud valaszolni.
ZGabor at CoDe dot HU
--
#!/bin/ksh
Z='21N16I25C25E30, 40M30E33E25T15U!' ;IFS=' ABCDEFGHIJKLMNOPQRSTUVWXYZ ';set $Z ;for i { [[ $i = ? ]]&&print $i&&break;[[ $i = ??? ]]&&j=$i&&i=${i%?};typeset -i40 i=8#$i;print -n ${i#???};[[ "$j" = ??? ]]&&print -n "${j#??} "&&j=;typeset +i i;};IFS=' 0123456789 ';set $Z;X=;for i { [[ $i = , ]]&&i=2;[[ $i = ?? ]]||typeset -l i;X="$X $i";typeset +l i;};print "$X"
További információk a(z) BSD levelezőlistáról