NastΩpna strona Poprzednia strona Spis tre╢ci

1. Opis dzia│ania diald.

1.1 /etc/rc.d/rc.local

#! /bin/sh
# Put any local setup commands in here
# Running gpm
echo "Running gpm..."
gpm -t ms &

# starting innd
/etc/rc.d/rc.news

# starting CERN httpd
echo "Starting CERN httpd with proxy and caching."
/usr/local/bin/httpd

# loading modules that are needed
/etc/rc.d/rc.modules

# starting diald
echo "Starting diald daemon to Pacific Internet ..."
cd /usr/lib/ppp
/usr/lib/ppp/diald.pacific.internet

1.2 /usr/lib/ppp/diald.pacific.internet

/usr/sbin/diald /dev/ttyS1 /dev/ttyS1 lock debug 20 -m ppp local 127.0.0.2 \
  remote 127.0.0.3 defaultroute modem crtscts \
  connect "chat -v -f /usr/lib/ppp/pppchat.pi" \
  dynamic -- debug noipdefault

1.3 /usr/lib/ppp/pppchat.pi

ABORT "NO CARRIER"
ABORT BUSY
"" ATZ OK
ATm1s50=255s111=0DT1-800-555-1212
CONNECT ""
login MÓJLOGIN
ssword MOJEHASúO

1.4 Prosty skrypt do PPP.

#!/bin/sh
#       Ustaw PPP na ╢lepo - skrypt o nazwie blind.ppp

DEVICE=ttyS1
(
        stty 38400 -tostop
        pppd -detach debug noipdefault defaultroute mru 1500 /dev/$DEVICE &
        exit 0
)  /dev/$DEVICE

1.5 Mój plik /etc/diald.conf (nie zmieniony od instalacji dystrybucji)

# Jest to do╢æ skomplikowana kombinacja regu│ filtruj▒cych.
# (S▒ to regu│y, których u┐ywam osobi╢cie)
#
# Podzieli│em te regu│y na 4 sekcje:
# pakiety TCP, pakiety UDP, pakiety ICMP i na koñcu regu│y dla reszty.
#------------------------------------------------------------------------------
# Regu│y dla pakietów TCP
#------------------------------------------------------------------------------
# Ogólny komentarz dotycz▒cy zestawu regu│:
#
# Ogólnie, jako znacz▒ce do timeout-ów, chcieliby╢my traktowaæ tylko
# pakiety zawieraj▒ce dane na │▒czu TCP. Dlatego spróbujemy ignorowaæ
# pakiety bez danych.  Poniewa┐ najkrótszy mo┐liwy nag│ówek pakietu
# TCP to 40 bajtów, wiêc ka┐dy pakiet o d│ugo╢ci 40 bajtów nie mo┐e
# zawieraæ danych.  W ten sposób mo┐emy przeoczyæ puste pakiety (w
# nag│ówku IP mog▒ znajdowaæ siê opcjonalne informacje na temat
# routing-u i inne dodatkowe informacje), ale powinni╢my dostaæ
# wiêkszo╢æ z nich. Zauwa┐, ┐e nie chcemy odfiltrowywaæ pakietów z
# wyzerowanym polem "tcp.live", poniewa┐ u┐yjemy ich pó╝niej, aby
# przyspieszyæ roz│▒czenia na niektórych po│▒czeniach TCP.
#
# Chcemy tak┐e byæ pewni, ┐e pakiety WWW s▒ aktywne, nawet je╢li gniazdo TCP
# jest zamkniête. Robimy to poniewa┐ WWW nie utrzymuje otwartych
# po│▒czeñ jak ju┐ dane zostan▒ przetransportowane, i by│oby
# denerwuj▒ce ci▒g│e inicjowanie i zamykanie po│▒czenia jak tylko
# dostaniesz jaki╢ dokument.
#
# Poza WWW TCP jest najczê╢ciej u┐ywane do d│ugo┐ywotnych po│▒czeñ,
# które jak ju┐ zgin▒, to znaczy, ┐e ich nie potrzebujemy. Nie
# koniecznie chcemy czekaæ 10 minut a┐ po│▒czenie zostanie zamkniête
# je╢li nie mamy uruchomionych ┐adnych telnet-ów czy rlogin-ów, tak
# wiêc chcemy przyspieszyæ timeout na po│▒czeniu TCP, które zosta│y
# zamkniête. Zrobimy to poprzez przechwytywanie pakietów, które nie
# maj▒ ustawionej flagi "live".
#
# --- w│a╢ciwy pocz▒tek zestawu regu│ ---

# Na inicjacjê po│▒czenia dajemy tylko 15 sekund. Ca│y pomys│ polega tu
# na tym, ┐e trzeba siê liczyæ z mo┐liwo╢ci▒, i┐ sieæ na drugim koñcu
# nie bêdzie dzia│aæ. W tym przypadku nie chcesz przecie┐ dawaæ 10
# minut na po│▒czenie. Poni┐sz▒ regu│▒ dajemy w│a╢nie po│▒czeniu owe
# 15 sekund czasu. Je╢li sieæ z drugiej strony dzia│a, to w ci▒gu 15
# sekund otrzymamy odpowied╝, która bêdzie zawiera│a jakie╢
# dane. Je╢li w twoim przypadku sprawia to problemy, bo np.: masz
# wolne po│▒czenie czy d│ugi czas odpowiedzi, to mo┐esz zwiêkszyæ
# timeout lub po prostu usun▒æ tê regu│ê.
accept tcp 15 tcp.syn

# Nie podtrzymuj po│▒czenia je╢li przychodz▒ pakiety do named-a
ignore tcp tcp.dest=tcp.domain
ignore tcp tcp.source=tcp.domain

# (Oj! SCO telnet zaczyna od wysy│ania pustych sygna│ów "SYN" i
# otwiera po│▒czenie tylko w przypadku je╢li otrzyma odpowied╝. Jeny...)
accept tcp 5 ip.tot_len=40,tcp.syn

# Nie podtrzymuj po│▒czenia je╢li pakiety s▒ puste (oprócz pustych SYN-ów)
ignore tcp ip.tot_len=40,tcp.live

# Upewnij siê, ┐e transfer http podtrzymuje po│▒czenie przez 2 minuty,
# nawet po zakoñczeniu.
# UWAGA: W pliku /etc/services mo┐e nie byæ definicji
# serwisu tcp dla www, w którym to przypadku powiniene╢ zakomentowaæ
# dwie poni┐sze linie, albo zdobyæ nowszy plik /etc/services. W
# sprawie nowego /etc/services zobacz FAQ.
accept tcp 120 tcp.dest=tcp.www
accept tcp 120 tcp.source=tcp.www

# Je╢li po│▒czenie nie jest ju┐ aktywne, spróbujemy szybko je
# zamkn▒æ. Zauwa┐, ┐e je╢li po│▒czenie jest ju┐ "zdown-owane", to
# zmiana stanu nie spowoduje jego przywrócenia.
keepup tcp 5 !tcp.live
ignore tcp !tcp.live

# po danych ftp albo po│▒czeniu ftp mo┐na siê spodziewaæ do╢æ czêstego
# ruchu
accept tcp 120 tcp.dest=tcp.ftp
accept tcp 120 tcp.source=tcp.ftp

# UWAGA: ftp-data nie jest zdefiniowane w pliku /etc/services
# dostarczanego z najnowsz▒ wersj▒ NETKIT, wiêc to zakomentowa│em.
# Je╢li chcesz to zdefiniowaæ, to dodaj poni┐sz▒ liniê do
# /etc/services
# ftp-data       20/tcp
# i odkomentuj dwie nastêpne linie
#accept tcp 120 tcp.dest=tcp.ftp-data
#accept tcp 120 tcp.source=tcp.ftp-data

# Je╢li nie wy│apiemy tego wcze╢niej, to daj po│▒czeniu 10 minut.
accept tcp 600 any

# Regu│y dla pakietów UDP
#
# »▒dania dla domeny bêdziemy odrzucaæ od razu poniewa┐ chcemy, ┐eby
# one tylko podnios│y po│▒czenie, a nie trzymaæ je przez d│ugi czas.
# Robimy tak poniewa┐, sieæ by│aby inicjowana przy ka┐dym odwo│aniu do
# biblioteki resolvera (o ile nie trzymasz wszystkich swoich czêsto u┐ywanych
# adresów w /etc/hosts, w którym to przypadku odkryjesz jeszcze inne
# problemy.)
# Zauwa┐, ┐e nie powiniene╢ ustawiaæ mniejszego timeout-u ni┐
# spodziewany czas odpowiedzi twojego serwera DNS. W innym przypadku
# kiedy inicjacyjne po│▒czenie jest ju┐ ustawione mo┐e siê pojawiæ
# wiêksze opó╝nienie ni┐ to pomiêdzy inicjacyjn▒ seri▒ pakietów zanim
# jakikolwiek pakiet, który podtrzymuje po│▒czenie przejdzie przez po│▒czenie.

# Nie ustawiaj po│▒czenia dla rwho
ignore udp udp.dest=udp.who
ignore udp udp.source=udp.who
# Nie ustawiaj po│▒czenia dla RIP
ignore udp udp.dest=udp.route
ignore udp udp.source=udp.route
# Nie ustawiaj po│▒czenia dla NTP czy timed.
ignore udp udp.dest=udp.ntp
ignore udp udp.source=udp.ntp
ignore udp udp.dest=udp.timed
ignore udp udp.source=udp.timed
# Nie ustawiaj po│▒czenia dla ┐▒dañ domeny pomiêdzy dwoma dzia│aj▒cymi named-ami
ignore udp udp.dest=udp.domain,udp.source=udp.domain
# Ustaw po│▒czenie je╢li pojawi siê ┐▒danie domeny z innego miejsca
# ni┐ named
accept udp 30 udp.dest=udp.domain
accept udp 30 udp.source=udp.domain
# To samo dla rozg│aszania netbios-ns 
# UWAGA: w pliku /etc/services serwis netbios-ns mo┐e nie byæ
# zdefiniowany - wtedy powiniene╢ zakomentowaæ 3 poni┐sze linie
ignore udp udp.source=udp.netbios-ns,udp.dest=udp.netbios-ns
accept udp 30 udp.dest=udp.netbios-ns
accept udp 30 udp.source=udp.netbios-ns
# Nie utrzymuj po│▒czenia dla transferów routed i gated
ignore udp tcp.dest=udp.route
ignore udp tcp.source=udp.route
# Wszystko inne dostaje 2 minuty czasu
accept udp 120 any

# Wszystkim pakietom, których nie objê│y poprzednie zasady daj 30
# sekund ┐ycia
accept any 30 any

1.6 Mój plik diald.defs (nie zmieniony od instalacji dystrybucji)

# Definicja domy╢lnych regu│ dla protoko│ów
prule tcp tcp 9:12:13:14:15:16:17:18:19:+0:+1:+2:+3:9:9:9
prule udp udp 9:12:13:14:15:16:17:18:19:+0:+1:+2:+3:9:9:9
prule icmp icmp 9:12:13:14:15:16:17:18:19:9:9:9:9:9:9:9
prule any any 9:12:13:14:15:16:17:18:19:9:9:9:9:9:9:9
# Definicja pól nag│ówków pakietów internet-owych
var ip.ihl 0(24)&0xf
var ip.version 0(28)&0xf
var ip.tos 1(24)&0xff
var ip.tot_len 2(16)&0xffff
var ip.id 4(16)&0xffff
var ip.frag_off 6(16)&0x3fff
var ip.ttl 8(24)&0xff
var ip.protocol 9(24)&0xff
var ip.check 10(16)&0xffff
var ip.saddr 12
var ip.daddr 16
# Definicja pól nag│ówków pakietów TCP
var tcp.source +0(16)&0xffff
var tcp.dest +2(16)&0xffff
var tcp.seq +4
var tcp.ack_seq +8
var tcp.doff +12(28)&0xf
var tcp.fin +13(24)&0x1
var tcp.syn +13(25)&0x1
var tcp.rst +13(26)&0x1
var tcp.psh +13(27)&0x1
var tcp.ack +13(28)&0x1
var tcp.urg +13(29)&0x1
var tcp.live +127
# Definicja nag│ówków pakietów UDP
var udp.source +0(16)&0xffff
var udp.dest +2(16)&0xffff
var udp.len +4(16)&0xffff
var udp.check +6(16)&0xffff
# Definicja nag│ówków pakietów ICMP
var icmp.type +0(24)&0xff
var icmp.code +1(24)&0xff
var icmp.checksum +2(16)&0xffff
var icmp.echo.id +4(16)&0xffff
var icmp.echo.sequence +6(16)&0xffff
var icmp.gateway +4

1.7 Mój sprzêt i oprogramowanie.

1.8 Uwagi.

Masz jakie╢ pytania? Przy╢lij mi list.

1.9 Od t│umacza.

T│umaczenie to jest chronione prawami autorskimi © Bartosza Maruszewskiego. Dozwolone jest rozprowadzanie i dystrybucja na prawach takich samych jak dokument oryginalny.

Je╢li znalaz│e╢ jakie╢ ra┐▒ce b│êdy ortograficzne, gramatyczne, sk│adniowe, techniczne to pisz do mnie:

B.Maruszewski@jtz.org.pl

Oficjaln▒ stron▒ t│umaczeñ HOWTO jest http://www.jtz.org.pl/

Aktualne wersje przet│umaczonych dokumentów znajduj▒ siê na tej┐e stronie. Dostêpne s▒ tak┐e poprzez anonimowe ftp pod adresem ftp.jtz.org.pl w katalogu /HOWTO/.

Przet│umaczone przeze mnie dokumenty znajduj▒ siê tak┐e na mojej stronie WWW. S▒ tam te┐ odwo│ania do Polskiej Strony T│umaczeniowej.

Kontakt z nasz▒ grup▒, grup▒ t│umaczy mo┐esz uzyskaæ poprzez listê dyskusyjn▒ jtz@ippt.gov.pl. Je╢li chcesz siê na ni▒ zapisaæ, to wy╢lij list o tre╢ci subscribe jtz Imiê Nazwisko na adres majordomo@ippt.gov.pl


NastΩpna strona Poprzednia strona Spis tre╢ci