Ubuntu Suomen keskustelualueet
Ubuntun käyttö => Ohjelmointi, palvelimet ja muu edistyneempi käyttö => Aiheen aloitti: jersky2 - 02.09.09 - klo:23.58
-
Hei,
Asensin ubuntu-serverin ja sain internet yhteyden pelaamaan mokkulan kautta WVDIAL-ohjelmalla. Palomuuriin puukotin reiät iptablesista ja asensin SSH ja FTP palvelimet. Ne toimivat ja yhteys ulkoa onnistuu. DynDns hoitaa dynaamisen IP:n ongelman. Nyt tarkoitus on kytkeä koneeseen kamera, jossa on sisäänrakennettuna linux-pohjainen web-palvelin. Tässä kohtaa meneekin sitten sormi suuhun tai en nyt keksi millä taikasanoilla googlettaa.
Serverin pitäisi ohjata tietyn portin X liikenteen kameralle porttiin Y. Haluan siis, että kamera näkyy serverin jossain portissa. Mitä kaikkea tässä pitäisi asentaa ja konffata? Arvelisin, että termit DHCP ja NAT-taulu liittyvät asiaan, mutta jotain ohjeenpoikasta tarvitsisin kuitenkin.
Laitetaan vielä ifconfigin tuloste, jos siitä on jotain iloa:
eth0 Link encap:Ethernet HWaddr xx:xx:xx:xx:xx:xx
UP BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
Interrupt:10 Base address:0xf800
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:78 errors:0 dropped:0 overruns:0 frame:0
TX packets:78 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:15464 (15.1 KB) TX bytes:15464 (15.1 KB)
ppp0 Link encap:Point-to-Point Protocol
inet addr:xx.xx.xx.xxx P-t-P:10.64.64.64 Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 Metric:1
RX packets:195 errors:0 dropped:0 overruns:0 frame:0
TX packets:162 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:3
RX bytes:18639 (18.2 KB) TX bytes:15717 (15.3 KB)
-
Lainaanpas tätä, kun on noin hyvä otsikko.
Eli mokkulaserveriä olen myös pykäämässä pystyyn. Siis tarvitaan DHCP-palvelinta, niin kysäisempä viisaammilta:"onko tämä hyvä ohje?"
http://myy.helia.fi/~karte/ubuntu_dhcp.html
En tosiaan ole tarvinnut aikaisemmin kyseistä.
-
Lainaanpas tätä, kun on noin hyvä otsikko.
Eli mokkulaserveriä olen myös pykäämässä pystyyn. Siis tarvitaan DHCP-palvelinta, niin kysäisempä viisaammilta:"onko tämä hyvä ohje?"
http://myy.helia.fi/~karte/ubuntu_dhcp.html
En tosiaan ole tarvinnut aikaisemmin kyseistä.
Aika selkeältähän nuo näyttivät. Jo "jonkin aikaa" on ollut tuollainen ajossa.
Ja ainoa tiedosto kun piti puukottaa, oli /etc/dhcp*/dhcpd.conf
Tuo kohta kesti hetken tajuta:
# If this DHCP server is the official DHCP server for the local
# network, the authoritative directive should be uncommented.
authoritative;
Moisella asetuksella saa modemin dhcp -palvelin olla myös käynnissä mutta se odottaa vuoroaan eikä koetakaan osallistua jos ko. oma palvelin on elossa.
-
Täällä on hyvä ohje nettiyhteyttäjakamaan koneen konffaus, tosin eth0 ja eth1.
Mut eiköhän tosta kaikki muu selviä.
http://www.howtoforge.com/nat-gateway-iptables-port-forwarding-dns-and-dhcp-setup-ubuntu-8.10-server (http://www.howtoforge.com/nat-gateway-iptables-port-forwarding-dns-and-dhcp-setup-ubuntu-8.10-server)
-
Täältä löytyy mun 10 rivin skripti, jolla tuo mokkulajako onnistuu yksinkertaisesti: http://forum.ubuntu-fi.org/index.php?topic=26049.msg198599#msg198599 .
Perus DHCP/DNS-palvelinten sijasta tuossa käytetään dnsmasq-ohjelmaa, joka on juuri tähän tarkoitukseen sovitettu yksinkertainen DHCP-palvelin / DNS relay.
-
Tein tuon jakovirityksen kerran testauskäyttööni (soitin VOIP -testipuheluita mokkulan läpi) hieman toisella tavalla, käytin vakio DHCP-palvelinta. Tuolla on valmis DHCP-konffaustiedosto liitteenä jos joku haluaa tehdä sen sillä.
http://forum.ubuntu-fi.org/index.php?topic=31654.msg245574#msg245574 (http://forum.ubuntu-fi.org/index.php?topic=31654.msg245574#msg245574)
Koko ideassa voi tulla vastaan yksi pieni asia: Se oma DHCP palvelin tyrkyttää osoitetta molemmille korteille tasapuolisesti, ehkä tuo yllämainittu "authoritave" -määritys ratkaisee sen asian (?) tai sitten se pitää ratkaista muulla tavalla koska ip pitää saada tietysti operaattorilta siellä mokkulan puolella.
Teknisestihän idea on sama kaikissa tapauksissa, sallitaan reititys korttien välillä, viritetään NAT väliin ja toteutetaan ip-osoitteiden jakelu paikallisverkkoon (=DHCP-palvelin], mokkulapuolen verkon pitää edelleen hakea osoitteensa DHCP-client: in kautta operaattorilta ---- tuossa se oli. Toteutuksen voi tehdä monin eri tavoin mutta tuo "veekoo": n scriptit on kätevä idea, ei tarvitse tietää teknisiä detaljeja.
-
Ehkä ei kannata tehdä kaikkea vaikeamman kautta, kun netcat ohjailee portit helposti suuntaan ja toiseen.
http://www.g-loaded.eu/2006/11/06/netcat-a-couple-of-useful-examples/
Jos siis oli tarkoitus saada portti uudelleenohjattua.
-
Ehkä ei kannata tehdä kaikkea vaikeamman kautta, kun netcat ohjailee portit helposti suuntaan ja toiseen.
http://www.g-loaded.eu/2006/11/06/netcat-a-couple-of-useful-examples/
Jos siis oli tarkoitus saada portti uudelleenohjattua.
Anteeksi nyt vaan, mutta miten tuolla netcat:illa muka saa aikaiseksi mitään tähän tapaukseen liittyvää?
Voi tietty olla että minä en vaan ymmärrä, joten pistä jokin hyvä esimerkki.
-
Serverin pitäisi ohjata tietyn portin X liikenteen kameralle porttiin Y. Haluan siis, että kamera näkyy serverin jossain portissa.
Tämän ymmärsin portin edelleenohjauksena, joka onnistuu netcatillä.
-
Serverin pitäisi ohjata tietyn portin X liikenteen kameralle porttiin Y. Haluan siis, että kamera näkyy serverin jossain portissa.
Tämän ymmärsin portin edelleenohjauksena, joka onnistuu netcatillä.
Sorry, nyt minäkin ymmärrän. Sinä vastasit ketjun alkuperäisen aloittajan "jersky2":n ongelmaan ja nämä dhcp/dns/nat-jutustelut ovat vastauksia "peran" ongelmaan, joka ei liity lainkaan ketjun alkuperäiseen aiheeseen. Tällainen peran tekemä ketjun kaappaus taitaa itse asiassa olla jopa nettietiketin vastainen temppu. Ei nyt niin suuri rikos, mutta aiheuttaa silloin tällöin pientä hämminkiä.
-
Serverin pitäisi ohjata tietyn portin X liikenteen kameralle porttiin Y. Haluan siis, että kamera näkyy serverin jossain portissa.
Tämän ymmärsin portin edelleenohjauksena, joka onnistuu netcatillä.
Sorry, nyt minäkin ymmärrän. Sinä vastasit ketjun alkuperäisen aloittajan "jersky2":n ongelmaan ja nämä dhcp/dns/nat-jutustelut ovat vastauksia "peran" ongelmaan, joka ei liity lainkaan ketjun alkuperäiseen aiheeseen. Tällainen peran tekemä ketjun kaappaus taitaa itse asiassa olla jopa nettietiketin vastainen temppu. Ei nyt niin suuri rikos, mutta aiheuttaa silloin tällöin pientä hämminkiä.
Kiitos ymmärryksestä.
Tosiaan vastasin ketjun alkukyssäriin.
nc on se työkalu, jolla helpoiten saadaan porttiohjauksia tehtyä.
Seuraava vaihe voisi tietenkin olla ssh tunneloinnilla, mutta helpoiten tuo aloitusongelma menisi nc:llä.
-
Sorry, nyt minäkin ymmärrän. Sinä vastasit ketjun alkuperäisen aloittajan "jersky2":n ongelmaan ja nämä dhcp/dns/nat-jutustelut ovat vastauksia "peran" ongelmaan, joka ei liity lainkaan ketjun alkuperäiseen aiheeseen. Tällainen peran tekemä ketjun kaappaus taitaa itse asiassa olla jopa nettietiketin vastainen temppu. Ei nyt niin suuri rikos, mutta aiheuttaa silloin tällöin pientä hämminkiä.
Hups, nyt tarkemmin luettuna, olisikin pitänyt tehdä oma säie.
Mutta tosiaan omaan ongelmaani. Nyttemmin olen saanut DHCP:n toimimaan, mutta samasta koneesta en ole onnistunut yhdistämään vwdialilla nettiin.
Sähläsin varmaan joissakin asetuksissa, joten saattaisi auttaa perinteinen uudelleenasennus. :P
-
Kokeilin hieman tuota netcat: ia esimerkin mukaisesti. Jostain syystä käy lähettävässä päässä näin:
nc 192.168.1.3 3333
(UNKNOWN) [192.168.1.3] 3333 (?) : Connection refused
Samantekevää yritänkö samalla koneella vai koneesta toiseen yhteyttä. Vastaanottava pää kyllä lähtee sitä ennen käyntiin ok ja jää odottamaan.
-
Kokeilin hieman tuota netcat: ia esimerkin mukaisesti. Jostain syystä käy lähettävässä päässä näin:
nc 192.168.1.3 3333
(UNKNOWN) [192.168.1.3] 3333 (?) : Connection refused
Samantekevää yritänkö samalla koneella vai koneesta toiseen yhteyttä. Vastaanottava pää kyllä lähtee sitä ennen käyntiin ok ja jää odottamaan.
Tässä esimerkki. Kone 1 kuuntelee porttia 9999 ja ohjaa koneelle 2 (192.168.100.29) porttiin 22.
Kone 1:
nc -l -p 9999 -c 'nc 192.168.100.29 22'
tämän voi testata koneella 1
ssh -p 9999 localhost
ohjautuu koneen 2 porttiin 22 (ssh portti)
-
Kokeilin hieman tuota netcat: ia esimerkin mukaisesti. Jostain syystä käy lähettävässä päässä näin:
nc 192.168.1.3 3333
(UNKNOWN) [192.168.1.3] 3333 (?) : Connection refused
Samantekevää yritänkö samalla koneella vai koneesta toiseen yhteyttä. Vastaanottava pää kyllä lähtee sitä ennen käyntiin ok ja jää odottamaan.
Tässä esimerkki. Kone 1 kuuntelee porttia 9999 ja ohjaa koneelle 2 (192.168.100.29) porttiin 22.
Kone 1:
nc -l -p 9999 -c 'nc 192.168.100.29 22'
tämän voi testata koneella 1
ssh -p 9999 localhost
ohjautuu koneen 2 porttiin 22 (ssh portti)
Itse hoidan porttiohjaukset ssh:n läpi tunneloimalla.
Palvelin1 on ssh portti auki maailmalle palvelin.osoite.fi
Palvelin2 on windows kone, jossa rdp portti kuntelulla (3389) 192.168.100.10
Etäkone on jossain ulkoverkossa
etätyöpöytäyhteys Palvelin2:lle onnistuu seuraavasti:
Etäkone:
ssh -L 9999:192.168.100.10:3389 user@palvelin.osoite.fi
Sitten etäkoneella Terminal server clientiin osoitteeksi localhost:9999
menee palvelin1:n läpi koneen palvelin2 rdp porttiin ja windowsin etätyöpöytä aukeaa.
Omassa blogissani samanlainen esimerkki:
http://someubuntutips.blogspot.com/2009/12/ssh-tunnel-to-rdp-on-home-network-this.html
-
Tuo ok mutta toimiiko sinulla chat-esimerkki jonka annnoit ensimmäisessä viestissäsi:
[ylläpito on poistanut liitteen]
-
Tuo ok mutta toimiiko sinulla chat-esimerkki jonka annnoit ensimmäisessä viestissäsi:
Kokeiles:
nc -l -p 3333
eli -p niinkuin portti ja homma toimii.
-
Ei ongelmana ollut tuo "-l" -pää vaan se toinen (joka yritäisi sen jälkeen ottaa yhteyttä tuohon). Kokeilenpa vielä hieman lisää...
PING 192.168.1.2 (192.168.1.2) 56(84) bytes of data.
64 bytes from 192.168.1.2: icmp_seq=1 ttl=64 time=0.119 ms
64 bytes from 192.168.1.2: icmp_seq=2 ttl=64 time=0.451 ms
nc 192.168.1.2 3333
(UNKNOWN) [192.168.1.2] 3333 (?) : Connection refused
Eli toinen kone kyllä näkyy mutta ei pääse / päästä kiinni.