Gateway la debian, open source în Tatarstan

Al treilea post despre Debian. Probabil cel mai important și mai voluminos. Aici voi încerca să repet secvența de acțiuni pentru dezvoltarea unui gateway Internet care rulează Debian 5.0.2 Lenny pentru nevoile unei rețele de birouri mici.
Puteți citi deja:
1. De ce avem nevoie de ea?
2. Cum se instalează?
În a treia parte, să sărim peste versuri și să ajungem la afaceri =)

După instalare, ne conectăm ca root. Imediat instalați sudo și pppoeconf:

# apt-get instala sudo pppoeconf

Instalarea se va face din același disc din care a fost instalat sistemul. În consecință, CD-ul trebuie introdus din nou în unitate.

Acum puteți ieși din modul superuser și puteți efectua toate configurațiile viitoare conectându-vă la contul creat în timpul instalării folosind sudo pentru comenzi administrative:

Notă 2. Deconectarea contului rădăcină este opțională, dar este foarte recomandată. Cu toate acestea, toate acțiunile ulterioare trebuie să fie efectuate cu autoritatea superutilizator folosind sudo sau su. Pentru a acorda atenție acestui lucru, am introdus simbolul # la începutul aproape a fiecărei echipe.

Discul cu sistemul poate fi acum recuperat, nu va mai fi necesar.

Instalați conexiunea PPPoE la Internet utilizând pppoeconf:

pppoeconf va cere numele de utilizator și parola furnizate de furnizor și va specifica și câțiva parametri suplimentari, în special - necesitatea de a stabili automat o conexiune atunci când computerul este pornit. Am scris deja despre instalarea PPPoE în Ubuntu. Nu există nici o diferență aici.

Dacă este stabilită conexiunea, puteți începe editarea listei de depozite:

Actualizăm listele de depozite:

Dacă totul a mers bine, puteți actualiza sistemul în sine:

Acum trebuie să editați fișierul de configurare a interfeței de rețea:

Acum suntem interesați de interfața eth1. configurați-o adăugând următoarele linii în fișierul / etc / network / interfaces:

iface eth1 inet static
adresa 192.168.1.2
masca de masă 255.255.255,0
auto eth1

Salvați modificările și reporniți rețeaua:

Dacă totul se face corect, puteți verifica disponibilitatea viitoarei gateway-uri din rețeaua locală rulând pe orice alt computer:

Nota 5: Când configurați o conexiune utilizând pppoeconf indicat că doriți să se conecteze automat la pornire, dar undeva pe internet, am dat peste următoarea recomandare:
- creați un fișier cu orice nume (de exemplu, autopppoe) în directorul /etc/network/if-up.d/:

- puneți următoarele în ea

#! / bin / sh
POFF
pon dsl-provider

-setați permisiunile pentru acces:

# chmod 711 /etc/network/if-up.d/autopppoe

Acest lucru, ar trebui să se asigure că PPPoE este conectat automat la pornirea computerului.

În acest moment, cu configurarea rețelei, vom termina și vom continua să instalăm pachetele necesare.
Mai întâi, puneți ssh și ddclent. pentru a accesa serverul din exterior:

# apt-get instala ssh ddclient

ddlient - modul client pentru utilizarea DynDNS. Am menționat-o aici. La instalare, este necesar să specificați login-ul și parola în serviciul DNS dinamic, precum și numele gazdei înregistrate acolo. Puțini își ajustează fișierul de configurare prin activarea daemonului:

și înlocuiți-l cu

Rămâne doar să reporniți clientul:

Acum vă puteți conecta la computer utilizând ssh din orice loc unde există acces la Internet.

Nota 6. Din moment ce sunt departe de a fi "unu-in-unul", ci doar "utilizator curios", inainte de a edita config-urile fac de obicei copiile pe care le sfatuiesc pe toata lumea. Pentru a face acest lucru, creați pur și simplu un director în dosarul dvs. de domiciliu

și copiați fișierele de configurare inițiale, de exemplu:

# cp /etc/squid/squid.conf backup / squid.conf.bu

# apt-get instala dnsmasq

Fișierul de configurare dnsmasq este foarte simplu, așa că nu citez o configurație de exemplu. Salvați modificările și reporniți serverul DHCP:

Instalați serverul proxy squid:

# apt-get install squid

Deoarece vom "construi" poarta de acces și nu doar un server proxy, vom adăuga calmarul la transparență. Pentru aceasta, editează fișierul de configurare:

și adăugați opțiunea transparentă la aceasta. ceea ce înseamnă proxy transparent:

http_port 3128 transparent

cache_mem 64 Mb - cantitatea de RAM care va fi utilizată de serverul proxy

cache_dir / usr / local / squid 1024 16 256 - calea către memoria cache, mărimea ei, numărul directoarelor primului și celui de-al doilea nivel

maximum_object_size 4096 KB - dimensiunea maximă a obiectului cache

Notă 7. Puteți aplica o nouă configurație de calmar fără să o reporniți:

# squid -k reconfigurați

Acum, continuați să configurați paravanul de protecție iptables. Creați un fișier care conține reguli iptables:

#! / bin / sh
iptables -F INPUT
iptables -F FORWARD
iptables -F OUTPUT
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
echo "1"> / proc / sys / net / ipv4 / ip_forward
iptables -t nat -A PREROUTING -i eth1 -d. 192.168.1.0/24 -p tcp -m multiport --dport 80.8080 -j DNAT --to 192.168.1.2:3128

Stabilirea drepturilor de acces:

# chmod 711 /etc/fw.config

Creați un alt fișier care descrie procesul de resetare a regulilor:

#! / bin / sh
iptables -F INPUT
iptables -F FORWARD
iptables -F OUTPUT
iptables -t nat -F PREROUTING
iptables -t nat -F POSTROUTING

# chmod 711 /etc/fwstop.config

Acum adăugați următoarea linie în fișierul / etc / network / interfaces imediat după descrierea interfeței ppp0:

Astfel, regulile iptables vor intra în vigoare imediat după ce interfața ppp0 este "ridicată" și aruncată după "cădere". Acum puteți reporni

sau reporniți rețeaua:

Nota 8. În general, prietenia mea cu iptables nu funcționează, astfel că această configurație a firewall-ului nu ar trebui în niciun caz să fie considerată cea mai optimă. Cu toate acestea, pot să spun cu încredere că funcționează și în acest moment mi se potrivește. Mai jos voi încerca să dau o legătură într-o config mai "avansată".

Notă 9. În cel mai simplu caz, trebuie doar să instalați două pachete pentru configurarea gateway-ului:

# apt-get instalează ipmasq dnsmasq

După aceea, trebuie să reparați puțin configurația dnsmasq, după cum sa spus mai sus. După repornire, gateway-ul ar trebui să înceapă să distribuie Internetul în rețeaua locală. Verificat sub Ubuntu Server 8.10.

Acum instalați SAMS. pentru a facilita adăugarea utilizatorilor la calmar și monitorizarea mișcărilor pe Internet. Înainte de instalare, va trebui să puneți câteva pachete necesare:

aptitude instalare apache2 apache2-mpm-prefork

aptitude instalează php5 libpache2-mod-php5 php5-php5-comun php5-mysql php5-gd

aptitude instalează mysql-server-5.0 mysql-client-5.0 libmysqlclient15off

aptitude install libpcre3

Când instalați mysql-server, trebuie să specificați o parolă de root. Restul ar trebui să treacă "automat".
Când toate pachetele necesare sunt instalate, puteți descărca SAMS:

# dpkg -i sams_1.0.3-2_i386.deb

Descărcați și instalați interfața web pentru SAMS și documentație:

# dpkg -i sams-web_1.0.4-2_all.deb Sams-doc_1.0.3-2_all.deb

Creați un utilizator de SAMS dintr-o bază de date proaspăt instalată mysql:

mysql -u root -p
GRANT ALL ON squidctrl. * TO sams @ localhost IDENTIFICAT DE "parola";
GRANT ALL pe squidlog. * TO sams @ localhost IDENTIFICAT DE "parola";

Desigur, "parola" este schimbată în parolă.
Apoi, editați /etc/sams.conf:

Căutăm o linie care conține MYSQLPASSWORD și introduceți parola specificată mai sus:

Creăm bazele de date SAMS în mysql:

mysql -u root -p mysql -u root -p

Editarea fișierului de configurare php:

În acesta este necesar să se specifice:

safe_mode = Activat
safe_mode_exec_dir = "/ usr / share / sams / bin"
disable_functions = "chdir, dl, ini_get_all, popen, proc_open, passthru, pcntl_exec"

Acum vom adăuga la poarta de acces capacitatea de a verifica traficul http cu antivirusul "în zbor" utilizând linkul calmar + havp + clamav. squid este deja instalat, rămâne să instalați havp - HTTP Anti Virus Proxy. și ClamAV este de fapt un antivirus. HAVP va fi instalat ca proxy parental pentru Squid. că aș putea oferi un lanț

Internet -> HAVP / ClamAV -> calmar -> Utilizator

# apt-get instalează havp clamav

Din nou, editați calmarul config:

Căutăm / regulăm / adăugăm și aducem la următorul tip de linie:

cache_peer 127.0.0.1 părinte 8080 0 nu-interogare no-digest no-netdb-exchange default

cache_peer_access 127.0.0.1 permite tuturor

acl Scan_HTTP proto HTTP

never_direct permite scan_HTTP

După repornirea / reconfigurarea calmarului și totul ar trebui să funcționeze. Linkul pentru testul antivirus va fi mai mic.

# apt-get instalați adzapper

După instalare, modificați config /etc/adzapper.conf:

Modificați valoarea parametrului

Trebuie să adăugați o linie la ea:

Reporniți / reconfigurați calmarul și examinați rezultatul.

Ultimul lucru pe care trebuie să-l faceți este să adăugați câteva linii de lucru la planificatorul cron:

Adăugați la sfârșitul fișierului:

30 0 * * * rădăcină / usr / share / doc / adzapper / examples / update-zapper

0 * * * * / usr / bin / freshclam -quiet

Astfel, listele negre adzapper și bazele de date ClamAV vor fi actualizate automat.

Ca totul. Sper că nu am uitat / amestecat. Ca de obicei, nu mă prefac că sunt profesionist, văd Debian pentru prima dată. Am vrut doar să păstrez un mic "manual" pentru mine. Nu cred că va ajuta pe cei care au fost mult timp prieteni cu Linux, dar "utilizatorii curioși" pot și vor veni la îndemână.
Ca rezultat, trebuie să obținem un gateway cu un server proxy de cache transparent, care să verifice traficul "în mișcare" cu un antivirus și un "tăietor de banner", precum și cu un management convenabil bazat pe web. În acest caz, nu este necesară configurarea specială a mașinilor client, principalul lucru fiind acela de a specifica gateway-ul implicit și DNS-ul și, de asemenea, nu uitați să adăugați utilizatorul prin SAMS. Dacă utilizați un server DHCP, clienții primesc automat toate setările în mod automat.

P.S. Deoarece problemele / adăugarea de noi caracteristici / etc sunt identificate, sper că voi actualiza postul.

Mai multe informații pe această temă:

Articole similare