Netmegosztás debiannal

Fórumok

HEllo!

Teljesen láma vagyok linux téren. Vettem egy p2-es ibm gépet. 350Mhz-es proci 64 mega rammal. Raktam rá debian linuxot. Tudnátok segíteni hogy megtudjam vele osztani az internetet? Két hálókártya van a gépben. Nem adsl-em van hanem micrós net. Ahhoz hogy működjön a net be kell állítani az ip-t, a maszkot, az átjárót, és a két dns-t. Csak az alap debian van fent.

Hozzászólások

Net beállítás /etc/network/interfaces fájlban tudod
megadni!
Mindkét karira

a netmegosztáshoz meg ezt:

/etc/sysctl.confba
net.inet.ip.forward=1

iptables script-be:

iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

eth0 helyén a net bejövő interface legyen.

----------------------------------------------------------------
"A megoldas mindeki kerdesere egyszeru.
OLVASSATOK DOKUMENTACIOT!"
by thuglife

From the generic point of view...

2 kártyád van, egyik néz a "külvilág" felé, a másik a belső háló felé. A belső hálós kártya Ip-címe legyen 192.168.0.1. A belső gépek felé ez lesz az aklapértelmezett átjáró, azoknak 192.168.0.x lesz az IP-jük, netmask 255.255.255.0, és a debianos gépen kell egy iptables, ami NAT-ol, azaz a belső gépekről érkező csomagokat úgy "fordítja át", hogy úgy tűnjön, mintha azok a külső interface IP-jéről mennének, ill. a belső gépekre portforwardol (home server, ill. p2p esetén ez is kell) - ennek szerintem olvasgass utána, hogy alapszinten vágd ezeket, hogy NAT, portforward, non-routable IP, RFC1918.
A Linux-specifikus részét majd valaki leírja, de sztem ez már egy jó kiindulópont lesz.

Nem kötekedésképp, de ha teljesen láma vagy, akkor ne egy tűzfalat/routert telepítéssel kezdj neki az ismerkedésnek. Inkább kérj meg valakit az ismerettségi körödből, aki csinált már ilyet. Először desktop sziten ismerkedj a Debian GNU/Linux lelkivilágával. Aztán ha már többé-kevésbé kiismered magad az op'rendszerben, akkor állj neki álatlában a tűzfalak, konkrétabban az iptables megismerésének. És javaslok valami tűzfal csomagot feltenni. Ne úgy "lapátold" össze az Internetről az iptables szabályokat!

Egyébként én egy Compaq Deskpro 2000-et (Pentium MMX 166MHz, 160MB RAM, QUANTUM FIREBALL CR4.3A) használok ilyen célra. A "sok" RAM a Squid miatt van. :-) Tűzfalnak pedig a shorewall van fent.

probald ki az ipcop, smoothwall, pfsense disztribuciok valamelyiket. konnyen telepithetoek, jol konfiguralhatoak, megbizhatoan mukodnek, biztonsagosak, bovithetoek az egyeni igenyeknek megfeleloen, gyors eredmenyt lehet veluk elerni

udv Zoli

én személy szerint jobban csípem a pf-et, úgyhogy hajrá pfsense/monowall!

persze ha nem vagy lusta, akkor lehet egyből openbsd, csak az iz igazi (én smoothwall-tól jutottam el hozzá), de emellett _igazán_ fapados is, úgyhogy kezdésnek talán nem bölcs döntés :-)

a smoothwall-lal nekem semmi gondom nem volt, de már nagyon öregecske (a stabil, az új meg alfa)

szerintem ezeket igazából nem lehet megítélni, csak akkor, amikor látod a felületüket. az alap nagyban úgysem tér el (persze platformonként változó), csak a körítés más, aztán vagy bejön neked, vagy nem

pfsense meg úgy látom, mindjárt 1.0 lesz, addig gondolom érdemes lesz várni

Köszönöm mindenkinek a válaszokat. Egyenlőre csak a netet akarom megosztani, semmi extra pl. tűzfal meg ilyenek.

"Csak annyit hogy megossza a netet. Azt mondták hogy két paranccsal meg lehet csinálni."

A netmegosztást igen, de kell valami "védelem" féle is!
Mindkettőhöz kell a "tűzfal", amit linuxban
iptables-ként emlegetnek!
Minden "firewall" nevű program eztetet cseszteteti. :)

----------------------------------------------------------------
"A megoldas mindeki kerdesere egyszeru.
OLVASSATOK DOKUMENTACIOT!"
by thuglife

ez azért nem annyira pontos. A linux kernelben van egy iptables nevű csomagszűrő, ami alapban mindent átenged, az iptables paranccsal lehet csesztetni. Az iptables által szűrni bírt dolgokat azért egy komoly tűzfal programmal/megoldással még tovább lehet szűrni. Szóval én azt mondanám, nem árt a biztonság erősítése legalább iptables-szel így:

SZABÁLY 1
SZABÁLY 2
SZABÁLY 3
STB.
és a végén
iptables -P INPUT DROP

Vagyis megadjuk, miket engedünk, amik pedig ezeknek nem feleltek meg, azokat dobjuk.

Nem kell, de érdemes

Akkor SZVSZ ne Debiant tegyél, hanem a korábban már említett erre a feledatra kihegyezett disztribek valamelyikét. Ezekkel egyből meg tudod osztani netet, lesz tűzfalad, meg még egy csomó minden. Sokkal hamarabb célhoz érsz, és jóval biztonságosabb lesz a rendszered, mintha ~0 linuxos ismerettel te lapátolnál össze valamit. (Ez utóbbi félmondatot nem sértésnek szántam.)

Hmm ha csak alap netmegosztast akarsz....

Nincs tapasztalatom a micro-s nettel, igy nem tudom hogyan kapod az IP-t tole, de vegyuk az egyszeru esetet, azaz DHCPvel. Ebben az esetben a


vi /etc/network/interfaces

parancssal editalhatod a halokartyak beallitasait, amit tudni kell:
"i" betut leutve tudsz irni, torolni nem tudsz, csak ha "ESC"-et nyomsz, utana azt a karaktert amin allsz "x"-el torlod. "i" vel ujra tudsz irni.
Ha vegeztel, nyomj "ESC"-et majd ":"-ot , utana "w" majd "q" majd "ENTER". Igy menti.
A filenak valahogy igy kellen kineznie:


# /etc/network/interfaces -- configuration file for ifup(8), ifdown(8)

# The loopback interface
auto lo
iface lo inet loopback

# The first network card - this entry was created during the Debian installation
# (network, broadcast and gateway are optional)
auto eth1
iface eth1 inet static
        address xxx.xxx.xxx.xxx
        netmask xxx.xxx.xxx.xxx
        network xxx.xxx.xxx.xxx
        broadcast xxx.xxx.xxx.xxx
        gateway xxx.xxx.xxx.xxx
auto eth0
iface eth0 inet dhcp

Arra persze figyelj, hogy eth0, eth1 kozul (ezek a halokartyat jelolik)
melyik kapja DHCProl az IP-t (azaz melyik kapcsolat megy az internet fele...)

Ha ezzel megvagy:


echo "net.inet.ip.forward=1" >> /etc/sysctl.conf

Ha ezt is kiadtad, akkor:


iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

Itt is figyelj az eth0-ra!!!

Majd:


iptables-save
ifdown eth0
ifdown eth1
ifup eth0
ifup eth1

Ha leallna ujraindulna a gep, es emiatt nemmegy a net akkor:


iptables-restore

Ha kerdesed van kerdezz. De javaslom a:

szabilinux.hu

weboldal bongeszeset es olvasasat.

Nem akar jó lenni. Nem dhcp netem van. Ip-t,maszkot,átjárót, dns-t kell állítani. Ezeket kitöltöttem értelemszerűen. Megcsináltam amásik két parancsot is. De amikor beírom hogy ifdown eth0 akkor azt írja ki hogy:
ifdown: interface eth0 not configured. Egyik ismerősö mondta hogy próbáljam meg az ifupot. Arra meg azt írja hogy
Don't seem to be have all variables for eth0/inet.
Failed to bring up eth1.
Leírom hogy mit írtam be az interface-be. Mindent kitöröltem és a következő van bent.
# /etc/network/interfaces -- configuration file for ifup(8), ifdown(8)

# The loopback interface
auto lo
iface lo inet loopback

# The first network card - this entry was created during the Debian installation
# (network, broadcast and gateway are optional)
auto eth1
iface eth0 inet static
address 192.168.2.2
netmask 255.255.255.0
network 192.168.2.0
broadcast 192.168.2.255
gateway 192.168.1.2
auto eth0
iface eth1 inet static
address 192.168.1.2
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
gateway 192.168.1.1

eth1-en keresztül jön a net.

Hali!

Az előttem szólók már sokat leírtak, ezeket nézd végig, próbáld megérteni, a negatívkodó hozzászólásokkal meg ne törődj. :) Az persze igaz, hogy sok doksiolvasásra lesz szükséged. A Google mellett ajánlom a man oldalakat is, parancssorból elérhetők, pl.

man 5 interfaces

Debian nem rossz, nálam lassan egy éve megy egy P100 ugyanilyen munkakörben; miért ne állhatnál neki (nekem se menne mai napig sem, ha nem kezdtem volna el).

Milyen módon jön be a mikró? DHCP-szerver van a kütyüben? Mert ha igen, akkor általában nem kell a DNS-sel meg az átjáró címével törődnöd, azt szokott adni az eszköz DHCP-n keresztül. Ha kézzel kell beállítani, csak akkor kell szerkesztened a resolv.conf-ot, meg az /etc/network/interfaces-ben az IP-címet, maszkot és az átjáró címét.

iptables sem olyan bonyolult, kézzel is lehet iptables-szkriptet írni. Arra kell figyelni, hogy több szempont szerint kell szabályokat adni. Pl.

- irány szerint 6 lehetőség:

  • szerverre kintről: -A INPUT -i $KULSO_ESZKOZ
  • szerverre bentről: -A INPUT -i $BELSO_ESZKOZ
  • kintről be: -A FORWARD -i $KULSO_ESZKOZ -o $BELSO_ESZKOZ
  • bentről ki: -A FORWARD -i $BELSO_ESZKOZ -o $KULSO_ESZKOZ
  • szerverről ki: -A OUTPUT -o $KULSO_ESZKOZ
  • szerverről be: -A OUTPUT -o $BELSO_ESZKOZ

- szolgáltatás szerint:

  • pl. ftp: -p tcp --dport 20:21
  • ssh: -p tcp --dport 22
  • http: -p tcp --dport 80

- kapcsolat állapota szerint (2.4-es kerneltől):

  • kapcsolat létesítése: -m state --state NEW
  • létező kapcsolat: -m state --state ESTABLISHED,RELATED
  • érvénytelen csomagok: -m state --state INVALID
    Ez utóbbit mindentől függetlenül célszerű dobni, sőt, meg se kell adni, ha úgy csinálod, hogy mindent letiltasz (-P XXX DROP), és csak bekapcsolod a szükséges irányokat, szolgáltatásokat és állapotokat (NEW vagy ESTABLISHED,RELATED).

Aztán amelyiknek a végén ,,-j ACCEPT''-et mondasz, az mehet.

Igyekezz annyit olvasni, hogy minél konkrétabb kérdéseket tudj feltenni.

Jó mulatást!

Nem akar jó lenni. Nem dhcp netem van. Ip-t,maszkot,átjárót, dns-t kell állítani. Ezeket kitöltöttem értelemszerűen. Megcsináltam amásik két parancsot is. De amikor beírom hogy ifdown eth0 akkor azt írja ki hogy:
ifdown: interface eth0 not configured. Egyik ismerősö mondta hogy próbáljam meg az ifupot. Arra meg azt írja hogy
Don't seem to be have all variables for eth0/inet.
Failed to bring up eth1.
Leírom hogy mit írtam be az interface-be. Mindent kitöröltem és a következő van bent.
# /etc/network/interfaces -- configuration file for ifup(8), ifdown(8)

# The loopback interface
auto lo
iface lo inet loopback

# The first network card - this entry was created during the Debian installation
# (network, broadcast and gateway are optional)
auto eth1
iface eth0 inet static
address 192.168.2.2
netmask 255.255.255.0
network 192.168.2.0
broadcast 192.168.2.255
gateway 192.168.1.2
auto eth0
iface eth1 inet static
address 192.168.1.2
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
gateway 192.168.1.1

eth1-en keresztül jön a net.

Nem, a szolgáltató ip címe 192.168.1.2. Újraraktam a Debiant. Most kikötöttem a routert mert addig azon keresztül akpta a netet így dhcp-val ment. Beállítottam a szolgáltatóm adtatit. Beírtam az /etc/network/interfaces-be a szükséges dolgokat a másik kártyával kapcsolatban. És amikor le akarom állítani ifdown-nal akkor amin bejön a net az leáll. Amit utólag konfigoltam annál meg kiírja hogy nincs konfigurálva. Beírom mi van beírva az interfaces-be.

# This file describes the network interfaces available on your system
# and show to active them. For more information, see interfaces(5).

# /etc/network/interfaces -- configuration file for ifup(8), ifdown(8)

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto eth1
iface eth1 inet static
address 192.168.1.2
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
gateway 192.168.1.1
# dns-* options are implemented by the resolvconf package, if installed
dns-search .bc
auto eth0
iface eth0 inet static
adress 192.168.2.2
netmask 255.255.255.0
network 192.168.2.0
boradcast 192.168.2.255
gateway 192.168.1.2

Miért nem jó az eth0?

Szia!

Nem, a szolgáltató ip címe 192.168.1.2 ...

auto eth1
iface eth1 inet static
address 192.168.1.2
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
gateway 192.168.1.1

Szerintem a szolgáltatód IP címét gateway-nek kéne beállítani, és nem a hálózati kártya címének, mert egy hálózaton két azonos című gép nem lehet egyszerre. Szerintem nézd meg a router beállításait és az alapján próbáld meg beállítani a gépen a hálókártyát.

Amennyire nézem, az eth1-es kártyádnak adtad a szolgáltató címét. Az eth1-es kártyád DHCP-n kapja az IP-t, tehát ne írd át a beállításokat, ne adj neki saját kútfőből IP-t, mert úgysem fog menni. Sőt, igazából az /etc/network/interfaces fájlban az eth1-hez igazából ennek a két sornak kell tartoznia:
auto eth0
iface eth0 inet dhcp
(Minden beállítást a szolgáltató megad a DHCP-szerveren keresztül, még a DNS-szerverek IP-címeit is!)

Szerintem:
- első lépésben húzd ki a belső hálózat kártyájából a kábelt (hogy még véletlenül se keverhesd össze a két csatolót), majd csiholj rá netet;
- másodszor a belső hálózat lássa az átjáród (és csak azt, tehát mással ne is próbálkozz!);
- s harmadszor megcsinálhatod a netmegosztást a köv. két paranccsal (feltételezem, hogy az eth1 a net felé néző kártyád):
iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE
echo 1 > /proc/sys/net/ipv4/ip_forward

S ami a lényeg, olvasd el a http://www.szabilinux.hu/iptables/index.html címen található leírást, hogy egy alap(vető) tűzfalat össze tudj rakni. A fórumon is található néhány olvasgatásra, s biztos lesz, aki segít, ha valamit nem értesz vagy nem tudsz megoldani.

"Most kikötöttem a routert mert addig azon keresztül akpta a netet így dhcp-val ment."

Ha van router, minek görcsölsz a net megosztással?!
Inkább olvasd el! http://szabilinux.hu
---------------------------------------------------------------
"A megoldas mindeki kerdesere egyszeru.
OLVASSATOK DOKUMENTACIOT!"
by thuglife

Ez van alpból az interfaces-ben. Nem tudom hol lehet bekapcsolni a másik hálókártyát?

# This file describes the network interfaces available on your system
# and show to active them. For more information, see interfaces(5).

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto eth1
iface eth1 inet static
address 192.168.1.2
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
gateway 192.168.1.1
# dns-* options are implemented by the resolvconf package, if installed
dns-nameservers 193.110.59.25 82.77.103.100

Na haladtam egy kicsit. A bejövő jel az működik. Az az eth1. A kifelé menö jel az eth0 hálókártyán menne, de ez nincs beállítva. Hogy tudok egy hálókártyát beállítani linux alatt? Találtam egy leírást de az nem akar működni.

"A hálózat konfigurálását a visszacsatoló eszköz (loopback device) beállításával kell kezdened:

ifconfig lo 127.0.0.1
route add -net 127.0.0.0

Ezután következhet a hálózati kártya beállítása:

ifconfig eth0 $IP_cím netmask $hálózati_maszk broadcast $broadcast_cím
route add -net $hálózati_cím
[ "$gateway_IP_cím" ] && route add default gw $gateway_IP_cím metric 1

A változók helyére természetesen a megfelelő értékeket kell behelyettesítened."

gateway nem kell?
Ez van beleírva.

# This file describes the network interfaces available on your system
# and show to active them. For more information, see interfaces(5).

# /etc/network/interfaces -- configuration file for ifup(8), ifdown(8)

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto eth1
iface eth1 inet static
address 192.168.1.2
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
gateway 192.168.1.1
# dns-* options are implemented by the resolvconf package, if installed
dns-nameservers 193.110.59.25 82.77.103.100
auto eth0
iface eth0 inet static
adress 192.168.2.2
netmask 255.255.255.0
network 192.168.2.0
boradcast 192.168.2.255
gateway 192.168.1.2

De akkor most ahhoz, hogy az ISP-től netet kaphass, ahhioz hogyan állítottad be a rendszert?
Egyébként javaslom, hogy a belső (LAN) interface legyen 10.0.0.1, netmask 255.255.255.0 és 10.0.0.255 broadcasttal, átjáró nem kell. Sokkal egyszerűbben fog menni, mert én pl. már belekavarodtam a sok 192.168-ba.

Mi van vele? úgy értem, mi a pontos hibaüzenet? Még mindig az, hogy az ifdown-nál közli, nincs mit leállítania? Akkor az eth0 el sem indult, tehát egy "ifup eth0" paranccsal el kellene indítani és a hibaüzenetet írd meg (lehet, hogy fentebb volt, csak én nem találtam meg, elnézést).

# The primary network interface
auto eth1
iface eth1 inet static
address 192.168.1.2
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
gateway 192.168.1.1
# dns-* options are implemented by the resolvconf package, if installed
dns-nameservers 193.110.59.25 82.77.103.100
auto eth0
iface eth0 inet static
adress 10.0.0.1
netmask 255.255.255.0
network 10.0.0.0
broadcast 10.0.0.255

Annyit tennék hozzá, hogy nagyon vigyázz, és ne írj broadcast helyett boradcast-ot, mert nem lesz jó. :-)

Azért mert nem lyól konfigoltad!

Írd már be amit bástya-tovaris javasolt!
Hiába kapsz tanácsot, csak mész a saját fejed után!?
Így soha sem fog menni.

----------------------------------------------------------------
"A megoldas mindeki kerdesere egyszeru.
OLVASSATOK DOKUMENTACIOT!"
by thuglife

Csináltam egy proxy szervert ez alapján. http://aboutdebian.com/proxy.htm
Na most be kellene állítani az eddig is hibát kiíró eth0-t. A /etc/network/interfaces-be beírtam azt amit mondtatok, de nem akar jó lenni. Beírtam hogy ifconfig eth0, és nem írja ki a címket, de ha beírom hogy ifconfig eth, oda kiírja a kártya címeit.

Na működik a net:D Köszi a segítséget. Úgy oldottam meg hogy beállítottam ifconfiggal az eth0 kártyát.
ifconfig 10.0.0.1 netmask 255.255.255.0 broadcast 10.0.0.255

Az /etc/network/interfaces-ben pedig beállítottam ugyanezt kiegészítve networkkel. A kliens gépeken pedig Az ip 10.0.0.X maszk 255.255.255.0 átjáró 10.0.0.1 dns pedig a szolgálatóé. Szerintem majd fejlesztem egy tűzfallal. De majd később.

Akkor végül is úgy csináltad, ahogy mondtam. Jól van akkor, most kezdj el vele játszani. Ja igen: ha az ISP eleve 192.168-as IP-t ad, akkor a portforwardingot el is felejtheted, mert már a külső interface-t sem éri el az inbound packet. Ezt csak azért írom, mert gondolok a jövőre. :-)

Mégsem működik rendesen. Amikor újraindítom a gépet akkor be kell jelentkeznem és beírni megint az ifconfigos sort az eth0-ra. Ha nem írom be és újraindítom csak a hálót ezt írja ki.
Don't seem to be have all variables for eth0/inet.
Failed to bring up eth0.

bootmisc.sh végére beraktam de úgy se működik. Szerintetek mi a gondja?

"Szerintetek mi a gondja?"
interfaces fájl tartalma? de módosítások nélkül!
Ja és nem reinstalld addig! :)

----------------------------------------------------------------
"A megoldas mindeki kerdesere egyszeru.
OLVASSATOK DOKUMENTACIOT!"
by thuglife

auto lo
iface lo inet loopback

auto eth1
iface eth1 inet static
adress 192.168.1.2
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
gateway 192.168.1.1
# dns-* are implemented by the resolvconf package, if isntalled
dns-nameservers 193.110.59.25 82.77.103.100

ez változtatások nélkül én még ezt írtam hozzá

azto eth0
iface eth0 inet static
adress 10.0.0.1
netmask 255.255.255.0
network 10.0.0.0
broadcast 10.0.0.255

Itt írtam el véletlenül. a gépen rendesen van beírva. meoldottam a problémát. Csináltam neki indító szrikptet.
csináltam egy eth0.txt fájlt. Abba beleírtam a ifconfigos szöveget. Majd bemásoltam az /etc/init.d mapáába eth0.sh néven
Majd ezzel a parancsal elindítottam.
ln -s /etc/init.d/eth0.sh /etc/rc2.d/S95eth0

Így működik rendesen.

Majd ezzel a parancsal elindítottam.
ln -s /etc/init.d/eth0.sh /etc/rc2.d/S95eth0

ezzel max linkelted!
/etc/init.d/eth0.sh parancs indítaná!

----------------------------------------------------------------
"A megoldas mindeki kerdesere egyszeru.
OLVASSATOK DOKUMENTACIOT!"
by thuglife