Kirjoittaja Aihe: OpenVPN ja kiinteä IP [RATKAISTU]  (Luettu 3373 kertaa)

Jagster

  • Käyttäjä
  • Viestejä: 90
    • Profiili
OpenVPN ja kiinteä IP [RATKAISTU]
« : 15.07.20 - klo:22.19 »
Operaattorit vaihtelevat IP-osoitteita säännöllisen epäsäännöllisesti, tuttua kaikille. Elisa/Saunalahti pyöräyttää (ainakin meidän suunnalla) uuden IP:n noin viikon välein. Tuossa ei olisi muutoin mitään sen suurempaa, mutta minulla on aika paljon asioita ja valvontaa rakennettu IP-osoitteelle, kun muutakaan tapaa ei ole; Fail2banin whitelisting, lupa käyttää xmlrpc:tä jne.

Joka kerran kun IP vaihtuu, niin joudun käsin vaihtamaan sen. Ärsyttävä 10 minuutin duuni. Siksi asensin DigitalOceanin dropletille oman OpenVPN-palvelimen - oikeastaan kaksi. Yhden yksinään pienelle serverille ja yhden samalle missä minulla on sivustot. Mitään sen vahvempaa perustelua tehdä kaksi ei ollut. Kunhan ajattelin tehdä ns. viralliset työt sivustoserverin VPN:n kautta ja sitten epävirallisemmat tuolla, josta ei löydy sen kummallisempia host-tietoja.

Aivan riippumatta kumman kautta otan yhteyden, niin kotilaitteet huutavat IP-osoitteeksi sen virtuaaliserverin IP:n, jonka kautta yhteys on otettu - kuten kuuluukin. Mutta jos menen millä tahansa tavalla (https, ssh...) sille serverillä mitä kautta VPN on tehty, niin serverin logit huutavat aitoa Elisan IP-osoitetta. Muualla sen sijaan VPN:n IP näkyy.

Toki saan haluamani kiinteän IP-osoitteen sivustojen serverille käyttämällä erillistä VPN-serveriä, ja sillä virtuaalipalvelimella ei ole muuta "IP-sidottua" kuin Fail2bannin whitelist, ja pystyn elämään sen asian kanssa, mutta miksi noin käy? Kun yhdistän kotikoneella VPN:n, niin tehdään se hieno putki serverille, joka kiertänee OpenVPN:n kautta ennenkuin SSH-yhteys pääsee jonkun ympyrän kautta localhostille, eikö? Tippuuko siinä vaiheessa VPN:n antama IP jotenkin? Ja ei, en myöskään ymmärrä 10.* osoitteiden roolia - ja jos ei ole vielä selvinnyt, niin on aika paljonkin asioita joita en tiedä IP-osoitteista, porteista ja pakettien kulkemisista  :-[

OpenVPN on community versio, ei Access Server, jos sillä mitään merkitystä tässä on. Asennus on käytännössä pakasta vedetty eli mitään erikoissäätöjä ei sen suuremmin ole (paitsi logit ja duplicate-cn)

Asennus on tehty tällä road warrior skriptillä: https://github.com/Nyr/openvpn-install

Täällä on kuvattu mitä olen tehnyt, mutta kuten sanottua, en sinänsä mitään defaulttien hyväksymistä kummallisempaa ja sisältökin on vain another OpenVPN installing joita on netti piukassa, mutta suomeksi: https://www.eksis.one/ohjeet/openvpn/kiintea-ip-lahes-ilmaiseksi-oma-vpn/

Joten kysymykset ovat lyhyesti:
  • Miksi en saa VPN:n antamaa serverin IP:tä käyttöön, kun yhteys otetaan samalle serverille?
  • Jos sen saa niin miten (Access Serverissä saa asetettua käyttäjälle IP-osoitteen, mitä se tarkoittaa)?
  • Onko toteutus kiinteän IP:n saamiseksi huonompi kuin joku muu?

« Viimeksi muokattu: 19.07.20 - klo:12.50 kirjoittanut Jagster »

Jagster

  • Käyttäjä
  • Viestejä: 90
    • Profiili
Vs: OpenVPN ja kiinteä IP
« Vastaus #1 : 15.07.20 - klo:22.46 »
Droplet kertoo kirjautumisen jälkeen kaksi eth0 IP:tä, toinen on 10-osoite eli privaattia ja toinen sitten julkinen. Mutta voiko eth0 olla kahdella IP:llä? Toki sieltä löytyy myös OpenVPN:n asettama tun0, joka pitäisi googlettaa että mikä se ylipäätään on.

nm

  • Käyttäjä
  • Viestejä: 16232
    • Profiili
Vs: OpenVPN ja kiinteä IP
« Vastaus #2 : 16.07.20 - klo:00.54 »
Operaattorit vaihtelevat IP-osoitteita säännöllisen epäsäännöllisesti, tuttua kaikille. Elisa/Saunalahti pyöräyttää (ainakin meidän suunnalla) uuden IP:n noin viikon välein. Tuossa ei olisi muutoin mitään sen suurempaa, mutta minulla on aika paljon asioita ja valvontaa rakennettu IP-osoitteelle, kun muutakaan tapaa ei ole; Fail2banin whitelisting, lupa käyttää xmlrpc:tä jne.

Onko dynaaminen DNS jostain syystä poissuljettu vaihtoehto? Tietääkseni fail2banin whitelist ja xmlrpc-rajaukset tukevat domain-nimen selvittämistä.


Miksi en saa VPN:n antamaa serverin IP:tä käyttöön, kun yhteys otetaan samalle serverille?

Veikkaan että johtuu asiakaskoneen reititystaulun säännöistä, eli siellä on erikseen rivi VPN-palvelimen IP-osoitteelle VPN-yhteyden liikenteen ohjaamista varten. Tällöin kaikki kyseiseen osoitteeseen kohdistuva liikenne reitittyy normaalia tietä nettiin, eikä kulje VPN-tunnelin läpi.

Voit tutkia reititystaulua komennoilla:

Koodia: [Valitse]
route -n
Koodia: [Valitse]
ip route list
En nyt tähän hätään keksi ongelmaan muuta yksinkertaisempaa ratkaisua kuin sen, ettei sijoita VPN-palvelimelle muita julkisia palveluita kuin VPN:n. Netfilterin/iptablesin avulla lienee mahdollista reitittää liikenne sisällön tai prosessin perusteella oikeaan paikkaan, mutta kikkailuksi sekin menee.

Jagster

  • Käyttäjä
  • Viestejä: 90
    • Profiili
Vs: OpenVPN ja kiinteä IP
« Vastaus #3 : 16.07.20 - klo:02.34 »
Lainaus
Onko dynaaminen DNS jostain syystä poissuljettu vaihtoehto?

On, koska en osaa.

Miten saan Fail2banin, Nginxin tai minkään muun selvittämään, että IP on nimenomaan minun? En pysty edes kuvittelemaan miten se olisi teknisesti mahdollista. Toki jos joka kerta lähetetään jokin pyyntö takaisin ja meikäläisen systeemi vastaa ja varmistaa jollain tavalla, niin sitten ehkä. Mutta sehän vaatisi, että minulla on jonkinsortin serveri sitten vastaamassa.

nm

  • Käyttäjä
  • Viestejä: 16232
    • Profiili
Vs: OpenVPN ja kiinteä IP
« Vastaus #4 : 16.07.20 - klo:11.30 »
Dynaaminen DNS tarkoittaa siis sitä, että hankit kotikoneellesi domain-nimen, jota käytetään IP-osoitteen sijaan. Koneen vaihtuva IP-osoite päivitetään DNS-tarjoajan rekisteriin aina, kun se muuttuu, jolloin domain-nimi osoittaa pienellä viiveellä jälleen oikeaan paikkaan. Eli IP-osoitteen sijaan käytät sitten Fail2banin asetuksissa ja vastaavissa paikoissa domain-nimeä.

Dy.fi on ilmainen, yleinen ja hyvin toimiva palvelu, mutta muitakin vaihtoehtoja on kyllä olemassa.

https://www.dy.fi/page/faq
https://wiki.ubuntu-fi.org/Dynaaminen_DNS

Jagster

  • Käyttäjä
  • Viestejä: 90
    • Profiili
Vs: OpenVPN ja kiinteä IP
« Vastaus #5 : 16.07.20 - klo:13.28 »
Oukkei. Joka päivä jotain uutta... se on hyvä  ;D

Täytyypä penkoa tuota. Se poistaisi viimeisenkin harmistuksen aiheen vaihtuvasta IP:stä.

Jagster

  • Käyttäjä
  • Viestejä: 90
    • Profiili
Vs: OpenVPN ja kiinteä IP
« Vastaus #6 : 16.07.20 - klo:13.30 »
Ahaa. Eli tuo on perusidealtaan sama kuin mailien iki-osoitteet.

Jagster

  • Käyttäjä
  • Viestejä: 90
    • Profiili
Vs: OpenVPN ja kiinteä IP
« Vastaus #7 : 16.07.20 - klo:14.22 »
Paitsi että en ymmärtänytkään...

Miten näin ilmeisen simppeli juttu voi olla näin hankala. Jokaiselle netissä olevalla on IP-osoite. DNS sitten antaa sille haluttaessa nimen ja ohjaa sen oikeaan IP-osoitteeseen. Tästähän lienee vaan kysymys.

Mutta kun en ylipäätään pääse maailmalta kotikoneelleni IP-osoitteella, niin ei sitä host nimen asettaminen miksikään muuta - näin olettaisin. Joten ilmeisesti minun pitäisi ostaa Elisalta julkinen IP-osoite, joka sitten asennetaan tuohin nettiboksiin/routeriin? Ja koska se on vaihtuva (dynaamisen merkitys näämmä muuttuu hieman kontekstistä toiseen  :o ) niin sitten tarvitaan joku DynDNS säätö kuten vinkattu dy.fi, että saadaan IP-osoitteelle nimi ja sitten tehdään pääsy tsekataan host-nimellä - jolloin tulee snadi mutka; ensin IP, sitten tsekataan onko sillä host ja jos on, niin katsotaan kuuluuko se sallittujen listaan.

Joka tietysti ratkaisin aiemmin serveri-ryhmässä kysymäni SSH-ongelman vituaaliserveriltä kotikoneen winniessä pyörivään Ubuntu-appsiin ilman sitä tarjottua reverse-ssh-tunneli-jotain juttua?

Saa keskeyttää kun mene vikaan...

dy.fi on ilmainen ja taatusti helpoin ratkaisu, mutta sen voi tehdä itsekin - ainakin löysin melkoisesti ohjeita ja skriptejä miten DigitalOceanissa tehdään A-tietue dynaamiseksi.

Jolloin tietysti herää kysymys, että kuinka suuret riskit moisesta on kotiverkon suhteen ja miten sen palomuuri tietää kuka on tulossa? Itseasiassa, kun tuli puheeksi, niin en minä tiedä nytkään miten se tietää  :-\

AimoE

  • Käyttäjä
  • Viestejä: 2707
    • Profiili
Vs: OpenVPN ja kiinteä IP
« Vastaus #8 : 16.07.20 - klo:14.34 »
dy.fi on ilmainen ja taatusti helpoin ratkaisu, mutta sen voi tehdä itsekin - ainakin löysin melkoisesti ohjeita ja skriptejä miten DigitalOceanissa tehdään A-tietue dynaamiseksi.

Voiko tehdä itse? Jotta sinun koneellesi pääsee jostain muualta, tulijalla täytyy olla käytössään DNS-palvelin joka antaa sinun koneesi osoitteen. Millä tavalla sinä viet sinne serverille sen A-tietueen? dy.fi on sellainen ulkoinen serveri, jota sinä et itse hallitse, mutta joka tarjoaa yhteysosoitteen juuri sinun koneellesi.

Jagster

  • Käyttäjä
  • Viestejä: 90
    • Profiili
Vs: OpenVPN ja kiinteä IP
« Vastaus #9 : 16.07.20 - klo:15.05 »
Esimerkiksi näin, jos olen edes hiukkasen ymmärtänyt oikein:

https://surdu.me/2019/07/28/digital-ocean-ddns.html

Disclaimer: linkki oli vain ensimmäinen hitti useista, muuta kantaa en ota asiaan

nm

  • Käyttäjä
  • Viestejä: 16232
    • Profiili
Vs: OpenVPN ja kiinteä IP
« Vastaus #10 : 16.07.20 - klo:15.38 »
Miten näin ilmeisen simppeli juttu voi olla näin hankala. Jokaiselle netissä olevalla on IP-osoite. DNS sitten antaa sille haluttaessa nimen ja ohjaa sen oikeaan IP-osoitteeseen. Tästähän lienee vaan kysymys.

Jep.

Käyttötapauksessasi fail2banissa tai vastaavissa whitelistauksissa asetetaan asiakaskoneen domain-nimi IP-osoitteen tilalle. Fail2ban selvittää nimen IP-osoitteeksi DNS-tietueen TTL-arvon määräämin väliajoin kysymällä nimeä vastaavan osoitteen DNS-palvelimelta. Esimerkiksi dy.fi:ssä TTL on 30 sekuntia. Eli kun kotikoneelta lähettämäsi IP-paketti päätyy fail2baniin, ja whitelistin domain-nimestä selvitetty IP-osoite täsmää paketin lähettäjän osoitteeseen, fail2ban päästää paketin läpi.

Mutta kun en ylipäätään pääse maailmalta kotikoneelleni IP-osoitteella

Sillä ei sinänsä ole merkitystä, jos tarkoituksena on tunnistaa koneelta lähetetyt paketit nettipalvelimella.

Joten ilmeisesti minun pitäisi ostaa Elisalta julkinen IP-osoite

Julkinen IP ei ole kuvaamassasi käytössä välttämätön, mutta se voi olla tarpeen, jos näyttää siltä, että liikenne ohjautuu ulos jatkuvasti vaihtuvasta osoitteesta. Tämä kannattaa varmistaa palvelimen lokeista tai jollain whats my IP -palvelulla.

Jos ulospäin näkyvä osoite kuitenkin pysyy samana ja vaihtuu vain silloin tällöin, kuten tuolla aloitusviestissä sanoit, ei ole kovin paljon väliä, onko se oma liittymäkohtainen osoite vai Elisan NAT-palvelimen osoite. Tietty siellä NAT-palvelimen takana on paljon muitakin koneita, jotka välttävät bannauksen palvelimillasi, mutta tämä menee jo jokseenkin vainoharhaiseksi.


joka sitten asennetaan tuohin nettiboksiin/routeriin?

Julkista IP:tä ei tarvitse erikseen konfiguroida reitittimeen. Se tulee voimaan automaattisesti, kun operaattori tekee muutoksen omissa järjestelmissään. Porttiohjausia täytyy sitten käydä asettamassa reitittimen palomuuriin, jos meinaat päästä netistä kotiverkon palveluihin.


Joka tietysti ratkaisin aiemmin serveri-ryhmässä kysymäni SSH-ongelman vituaaliserveriltä kotikoneen winniessä pyörivään Ubuntu-appsiin ilman sitä tarjottua reverse-ssh-tunneli-jotain juttua?

Joo, julkinen IP ja dynaaminen DNS ratkaisee tuon ongelman. Itse olen käyttänyt dynaamista DNS:ää kotipalvelimella ainakin viimeiset 15 vuotta, jotta pääsen netistä helposti SSH:lla kotiverkkoon.

dy.fi on ilmainen ja taatusti helpoin ratkaisu, mutta sen voi tehdä itsekin - ainakin löysin melkoisesti ohjeita ja skriptejä miten DigitalOceanissa tehdään A-tietue dynaamiseksi.

Jep, DigitalOcean tarjoaa myös vastaavan palvelun, joten sitä voi halutessaan hyödyntää. Oletuksena DO:n DNS-tietueen TTL taitaa olla 3600 tai 1800 sekuntia, mutta sen voi vaihtaa asetuksissa lyhyemmäksi: https://ideas.digitalocean.com/ideas/DO-I-2640


Jolloin tietysti herää kysymys, että kuinka suuret riskit moisesta on kotiverkon suhteen ja miten sen palomuuri tietää kuka on tulossa? Itseasiassa, kun tuli puheeksi, niin en minä tiedä nytkään miten se tietää  :-\

Dynaaminen DNS ja/tai julkinen IP ei kasvata riskiä. Nettiin avattujen palvelujen kuten SSH:n myötä riskit tietysti kasvavat, mutta SSH on kyllä varsin turvallinen, kun käytössä on avainpohjainen kirjautuminen tai hyvä salasana. Jos on tarvetta päästä SSH:lla sisään kotikoneelle vain sieltä DigitalOceanista, voit vastaavasti whitelistata kotikoneen palomuurissa tai SSH-palvelimessa dropletin osoitteen ja estää muut.
« Viimeksi muokattu: 16.07.20 - klo:15.44 kirjoittanut nm »

Jagster

  • Käyttäjä
  • Viestejä: 90
    • Profiili
Vs: OpenVPN ja kiinteä IP
« Vastaus #11 : 16.07.20 - klo:19.08 »
Olen joskus niin hidas, että (melkein) hävettää.

Lähdin rakentamaan systeemiä DigitalOceanille ja kun olin saanut sen valmiiksi, niin vasta silloin oivalsin aidon ongelman - eli edelleen se mitä en nyt ymmärrä, edes dy.fi kanssa.

Saan A-tietueen muuttumaan, joten siltä osin toimii (en aiemmin linkaamallani. Mutta jotta saisin sen muuttumaan  omaksi koti-IP:ksi, niin minunhan täytyy ajaa skripti kotiläppärissä - joka on ihan pikkuisen haastavaa Windows-koneessa, kai sen jollain tapaa ehkä saisi viritettyä. Ja ehkä Windowsistakin löytyy joku cronin tapainen (masentavaa - olen käyttänyt versiosta 3.0 asti, enkä noita tiedä). Ubuntun appsiin tietysti saa, mutta se pitäisi ymmärtääkseni olla sitten koko ajan käynnissä.

Mutta. Leikitään ajatuksella, että saan skriptin pyörimään cronilla Ubuntu-appsin kautta. Heti, eli usein, kun kirjaudun VPN:ään, niin silloin asettamani domainin IP:ksi muuttuu tietenkin VPN:n IP. Mutta kun olenkin iPadin kanssa liikkeellä, niin silloin olen taas tuntematon, koska tulen koti-IP:stä, jota ei tunnisteta luvalliseksi domainiksi, koska se on muuttunut VPN:n IP:ksi.

Mukana vielä vai tipahdinko minä?

Joten taas ollaan siinä, mikä vaivasi minua jo ihan alusta asti: mistä DynDNS saa tiedon mikä minun aito IP:ni kulloinkin on? Nyt ei ymmärrykseni mukaan ole mitään merkitystä tehdäänko hostin kysely omalla rakentamisella tai dy.fi:n kautta, sillä aina vaaditaan, että minun täytyy mennä käsin vaihtamaan oleva IP DNS-tietoihin. Sitä on mahdotonta automatisoida.

Googlen mukaan osa routereista osaa kertoa itse eteenpäin muuttuneen IP:n, mutta vajaan ymmärrykseni mukaan Elisan meille myymä antennit päässä oleva Huawei ei kuulu siihen sarjaan.

Ylipäätään koko homman mielekkyys taitaa rajoittua siihen, että täytyisi pyörittää jotain serveriä (kyllä, SSH-serveri olisi kiva läppärissä enkä tiedä miten saan ulkomaailman juttelemaan Ubuntu-appsin tai edes virtuaalikoneen Ubuntun kanssa - joten taas on edessä yksi yö Googlen parissa.

Mutta, taas yksi sellainen. Pyöräyttäminen host-kyselyn kautta suoran IP:n sijaan oli ihan hyvä vinkki. Tai niin ainakin luulen, koska en ole sitä vielä ehtinyt käytännössä kokeilemaan. Silloin ei vissiin tarvitse tehdä mitään muuta kuin pitää huolen, että alidomain viittaa aina koti-IP:hen, eikä siihen tarvita ensimmäistäkään skriptiä, koska sen täytyy loppujen lopuksi itse aina asettaa. Tai siis minä joudun, VPS:n takia, ilman sen jatkuvaa käyttöhän muuta ongelmaa ei ole kuin että täytyy pitää kotona linux-purkki 24/7 päällä. Tai ainakin riittävän paljon. Se pointti, jonka meinasin äsken hukata, on että muuttunut IP on paljon helpompi laittaa yhteen paikkaan kuin muokata kaikkien domainien konffitiedostoja.

Ja vieläkin mitä en ymmärrä, joka alkaa varmaan lipua offtopikkiin tai sitten ei.

Elisa (ja muut operaattorit) mainostavat julkista vaihtuvaa IP-osoitetta esim. riistakamerakäyttöön. Mutta koska sekin on muuttuva, niin silloinhan kamera hukkaa yhteyden heti kun IP muuttuu? Joten onko maksun kohteena julkisuus, eli saadaan kameran syöte kotikoneelle ja se ei onnistuisi ilman erillisenä veloitettavaa palvelua? Minulla on tuttavapiirissä aika paljonkin riista- ja IP-kameroiden käyttäjää ja olen aika varma siitä, että yksikään ei ole koskaan ostanut mitään ylimääräistä nettiin liittyvää.

IP-kamerat ovat tietysti oma maailmansa ja riistakamerat käyttävät yleensä puhelinliittymää, joten ehkä ero tuleekin siitä.

Jagster

  • Käyttäjä
  • Viestejä: 90
    • Profiili
Vs: OpenVPN ja kiinteä IP
« Vastaus #12 : 16.07.20 - klo:19.54 »
Miten ihmeessä tämä voi olla näin vaikeaa? Alan vähitellen epäillä omaa henkistä tasoani.

Elisa antaa minulle IP-osoitteen. Se IP yksilöi oman yhteyteni, oikeammin vissiin tuon nettilodjun. Jos (tai kun...) laitankin saman IP:n osoittamaan virtuaaliserverillä osoittavaa domainia, niin miten sama IP voi olla kahdessa paikassa? Tietysti ei voikaan ja jos leikitään, että kyseessä on vain hostin nimi, niin missä vaiheessa komennon host <ip-numero> tulos muuttuu Elisaan liittyvästä 84-231-XX-XX.elisa-mobile.fi hostista asettamakseni domainiksi? Ja kun se muuttuisi, niin sehän katkaisisi yhteydet Elisan serverin tipahtaessa?

Nyt täytyy olla jokin aivan perusasia, jota en tiedä enkä ymmärrä  :o

Tomin

  • Palvelimen ylläpitäjä
  • Käyttäjä / moderaattori+
  • Viestejä: 11433
    • Profiili
    • Tomin kotisivut
Vs: OpenVPN ja kiinteä IP
« Vastaus #13 : 16.07.20 - klo:23.52 »
Elisa antaa minulle IP-osoitteen. Se IP yksilöi oman yhteyteni, oikeammin vissiin tuon nettilodjun. Jos (tai kun...) laitankin saman IP:n osoittamaan virtuaaliserverillä osoittavaa domainia, niin miten sama IP voi olla kahdessa paikassa?

Öö..? Siis teet mitä? Et voi muuttaa IP:ä osoittamaan jonnekin muualle. Domainin voit muuttaa osoittamaan toiseen IP-osoitteeseen.

Tietysti ei voikaan ja jos leikitään, että kyseessä on vain hostin nimi, niin missä vaiheessa komennon host <ip-numero> tulos muuttuu Elisaan liittyvästä 84-231-XX-XX.elisa-mobile.fi hostista asettamakseni domainiksi? Ja kun se muuttuisi, niin sehän katkaisisi yhteydet Elisan serverin tipahtaessa?

Ei tuo IP-osoitteen käänteinen verkkonimi muutu tuosta elisa-mobile.fi-osoitteesta miksikään muuksi, vaikka käytätkin dynaamista DNS:ää. Ymmärsin, että tässä dynaamisen DNS:n tavoite on vain tarjota tapa kertoa sille virtuaalipalvelimelle tuo kotiverkkosi julkinen osoite (tai Elisan NATin julkinen osoite), jota voidaan sitten käyttää määrittämään siellä virtuaalipalvelimella esimerkiksi se sallittu kone fail2banille. Kyseiseen domainiin ei kuitenkaan ole tarvetta ottaa yhteyttä ja sinänsä on aivan sama vaikka tieto päivitettäisiin vain aina kun käynnistät tietokoneen, jolta yhdistät.

Se päivitys toimii yleensä niin, että palvelun palvelin katsoo, mistä osoitteesta tuo päivityspyyntö tuli. Siellä päässä se kyllä tiedetään. dy.fi on vähän tyhmempi siinä mielessä, että sille tuo osoite on aina kerrottava, mutta he tarjoavat myös sivun, jolla sen voi tarkastaa ja sen käyttö on kyllä automatisoitavissa. Toisaalta tuo mahdollistaa päivityksen myös muulta koneelta (jos sellaiselle nyt yleensä on mitään hyödyllistä käyttötarkoitusta).

Lisätietoja käytöstä ja päivitysohjelmista tältä sivulta: https://www.dy.fi/page/clients
Muistaakseni tuohon päivittämiseen oli joku parempikin Linux-ohjelma kuin tuo perl-skripti, mutta enpä muista enää, kun itse on tullut siirryttyä muihin palveluihin.
« Viimeksi muokattu: 16.07.20 - klo:23.55 kirjoittanut Tomin »
Automaattinen allekirjoitus:
Lisäisitkö [RATKAISTU] ketjun ensimmäisen viestin aiheeseen ongelman ratkettua, kiitos.

nm

  • Käyttäjä
  • Viestejä: 16232
    • Profiili
Vs: OpenVPN ja kiinteä IP
« Vastaus #14 : 17.07.20 - klo:00.12 »
Saan A-tietueen muuttumaan, joten siltä osin toimii (en aiemmin linkaamallani. Mutta jotta saisin sen muuttumaan  omaksi koti-IP:ksi, niin minunhan täytyy ajaa skripti kotiläppärissä - joka on ihan pikkuisen haastavaa Windows-koneessa, kai sen jollain tapaa ehkä saisi viritettyä. Ja ehkä Windowsistakin löytyy joku cronin tapainen (masentavaa - olen käyttänyt versiosta 3.0 asti, enkä noita tiedä). Ubuntun appsiin tietysti saa, mutta se pitäisi ymmärtääkseni olla sitten koko ajan käynnissä.

DigitalOceanin DNS:n tapauksessa joudut tosiaan virittelemään itse jonkun systeemin. Windowsissa se ei tule olemaan niin helppoa kuin Linuxissa, mutta netistä löytyy kyllä ohjeita ajastettujen taustapalvelujen kyhäämiseen.

dy.fi ja vastaavat valmiit palvelut tukevat päivitysprotokollia, joille löytyy myös Windows-asiakasohjelmia: https://www.dy.fi/page/clients

Mutta. Leikitään ajatuksella, että saan skriptin pyörimään cronilla Ubuntu-appsin kautta. Heti, eli usein, kun kirjaudun VPN:ään, niin silloin asettamani domainin IP:ksi muuttuu tietenkin VPN:n IP. Mutta kun olenkin iPadin kanssa liikkeellä, niin silloin olen taas tuntematon, koska tulen koti-IP:stä, jota ei tunnisteta luvalliseksi domainiksi, koska se on muuttunut VPN:n IP:ksi.

Niin ideana olisi saada sinne DNS:ään kotiverkkosi osoite eikä mitään VPN-osoitteita. Onnistuu helpoiten, jos kone, jolla dynaamisen DNS:n IP-osoite päivitetään ei ole koskaan kytkettynä VPN:ään. Sopivalla reitityssäännöllä VPN:n voi kyllä periaatteessa ohittaa siten, että viesti kulkee IP-osoitteen selvittämiseen käyttämällesi etäpalvelimelle suoraan eikä VPN:n kautta. En kuitenkaan sen tarkemmin tiedä miten tämä tehdään Windowsissa.

Tosiaan joissain reitittimissä on myös suoraan tuki dynaamisen IP:n päivittämiseen dy.fi:n tapaisiin palveluihin, joten sekin kannattaa tarkistaa ihan reititittimen asetusvalikoista. Jos ei onnistu reitittimen kautta, sinuna laittaisin kyllä vaikka Raspberry Pi:n sinne reitittimen kylkeen tällaisia hommia varten. Helpottaisi elämää huomattavan paljon. :)

Joten taas ollaan siinä, mikä vaivasi minua jo ihan alusta asti: mistä DynDNS saa tiedon mikä minun aito IP:ni kulloinkin on? Nyt ei ymmärrykseni mukaan ole mitään merkitystä tehdäänko hostin kysely omalla rakentamisella tai dy.fi:n kautta, sillä aina vaaditaan, että minun täytyy mennä käsin vaihtamaan oleva IP DNS-tietoihin. Sitä on mahdotonta automatisoida.

Kyllä tämä on täysin automatisoitavissa riippumatta dynaamisen DNS:n tarjoajasta ja käyttöjärjestelmästä. Kyse on vain siitä, paljonko haluat viritellä. Homma onnistuu helpoiten dy.fi:llä tai vastaavalla palvelulla ja kotiverkossa sijaitsevalla pikkupurkilla, joka päivittelee IP:n aina kun se vaihtuu. Jos välttämättä haluat saada toimimaan Windows-koneella VPN:n ollessa päällä, ulkoisen osoitteen selvittäminen on mutkikkaampaa, mutta ei silloinkaan mahdotonta,



Elisa (ja muut operaattorit) mainostavat julkista vaihtuvaa IP-osoitetta esim. riistakamerakäyttöön. Mutta koska sekin on muuttuva, niin silloinhan kamera hukkaa yhteyden heti kun IP muuttuu?

Oletettavasti noin kehittynyt riistakamera tukisi dynaamista DNS:ää. Yleensähän ne eivät toimi palvelimina, vaan lähettävät kuvia laitteen valmistajan keskitetyn palvelun kautta tai suoraan sähköpostiin tai MMS-viestinä. Etäohjaus toimii vastaavasti valmistajan palvelun kautta tai sähköpostilla tai tekstiviesteillä. Sama pätee halpoihin valvontakameroihin. Hieman erikoiselta kyllä kuulostaa julkisen IP:n tarjoaminen tuohon käyttöön, etenkin kun Elisan mobiiliverkossa se toimii vain IPv6-osoitteilla ja IPv4 on aina NAT-muurin takana.

Jagster

  • Käyttäjä
  • Viestejä: 90
    • Profiili
Vs: OpenVPN ja kiinteä IP
« Vastaus #15 : 17.07.20 - klo:11.36 »
Tutustun vastaukseesi hetken kuluttua, joten toivon että en tuplaa jotain asiaa. jonka jo selitit. Taatusti paistaa läpi, että olen eksyksissä aiheen kanssa. Kiitos muuten vaivasta!

Nyt kun on tullut nukuttua muutama tunti yön mentyä riidellessä asian kanssa, niin...

Alan olla entistä vakuuttunempi, että ongelman ydin on ympäristö. Tai sitten kopypeistaan toimimattomia ohjeita yrittämällä väärää asiaa, koska olen ymmärtänyt asian aivan pieleen. En nimittäin vain saa toimimaan. Se on selvinnyt minulle, että saan omiin tarpeisiini riittävän hyödyn VPN:llä (paitsi se perhanan iPad...). Ihan siksi, että kun perimmäinen tavoite on niin tylsän yksinkertainen kuin kiertää IP:hen perustuva valvonta ja estot. Fail2ban on suunnilleen ainoa, joka ymmärtää host nimen, kun taasen akselilla Varnish ja Nginx onnistuu vain IP.

Homma saattaisi varmaan toimia paremmin, jos käytössä olisi aito linux-boksi, mutta kun se on Ubuntun appi Windows 10 Home koneessa - ja noinkohan ongelman perusjuurta on se, että kyseessä ei ole mikään Server-Big-Enterprise. Tai sitten on edelleenkin joku välivaihe tekemättä.

Anteeksi, käytän tätä myös asioiden hahmottamiseen ja lisäksi kahdessa eri asiassa. Joten nyt on kohdallaan:
- DigitalOceanilla oleva alidomain muuttaa IP:nsä, kun koti-IP muuttuu, kunhan Ubuntu-app on käynnissä, sillä taustalla toimimista en vaan saanut toimimaan (tuon kanssa riidellessä meni aikansa, kun en oivaltanut, että cron ei ollut käynnistettynä)
- host <alidomain> kertoo oikean IP:n, jonkaa whois kertoo Elisan.
- Ubuntu-appissa on sshd käynnissä, käyttäjä määritelty ja salasanalla kirjautuminen sallittu
- portti 22 on nyt auki sisään ja ulos (tosin, ei se ulospääsemistä koskaan rajoittanut)

Nyt päästään siihen mitä en ymmärrä tämän dynaamisen jutun kanssa, vaikka käytettäessä Fail2bannia. Missä vaiheessa Fail2ban saa tiedon siitä sallitusta host nimestä (alidomainista). koska se näkee IP:n ja IP kertoo Elisan? Tuo voidaan kiteyttää aika masentavaan asiaan: en osaa käyttää DynDNS:ää ja tunnin googlettelun jälkeen en tullut hullua hurskaammaksi; joka lyö lyötyä, koska en pidä itseäni kuitenkaan maailman huonoimpana oppijana  8)

Sitten se toinen, asiaan liittyvä asiaan liittymätön.

Kun komennan ulkoa, eli DigitalOceanin VPS:ssä ssh tunnus@host-joka-on-se-alidomain niin hostin nimi tunnistetaan IP:ksi, joka tunnistaa Elisan kautta meidän tuvan ja sitten pääsenkin nettiboksi-routerin kautta läppärilleni. Paitsi että en pääse (eli taas ollaan siinä reverse tunneling kysymyksessä).

En pääse SSH:lla ulkoa Ubuntu-appsiin, vaan saan pelkän timeoutin. Olenko pahasti väärässä, jos kuvittelen sen johtuvan siitä, että Win Home ei suostu käyttäytymään kuin serveri eikä päästä paketteja Ubuntun appsiin, jonka takia koko koti-IP näyttää kuin serveriä ei olisi odottamassa? Tarkkaan ottaenhan ei olekaan, koska Ubuntun sshd on mutkan takana piilossa. Yritin PowerShellin kautta asentaa SSH-serverin, mutta sehän ei onnistu, ja johtuu nimenomaan versiosta. Edelleenkin toki saan asiat hoitumaan Ubuntun appissa, joten aito vaiva on ikkunan vaihtaminen - asiat kuitenkin haluaisi tehdä joustavasti.

Joten jos hieman karataan DynDNS-kysymyksestä, niin onko vaihtoehtoni
- laittaa joku vanha läppärin raato SSH-serveriksi, mutta osaako se sitten ottaa mitään vastaan, vai onko aito ongelma Huawein boksi?
- ostaa Raspberry ja alkaa opettelemaan totaalisen uutta maailmaa
- upgreidata wintoosa Serveriksi

Ja jos noin, niin silloin elämäni helpottuu siinä, että SSH:lla ei tarvitse antaa IP:tä, vaan menee hostilla (tosin, alias minulla noista kaikista kuitenkin on)

Minulle sopisi vaihtoehto, jossa työpöytä on edelleenkin Windows ja shell-puoli tapahtuu Ubuntussa samassa koneessa. En ole vaan niin varma, että noinkohan se on aidosti loppujen lopuksi mahdollista.

Jagster

  • Käyttäjä
  • Viestejä: 90
    • Profiili
Vs: OpenVPN ja kiinteä IP
« Vastaus #16 : 17.07.20 - klo:11.56 »
Ja nyt tulee pätkittäin, koska... no, kai tämä on ajettelun pätkäkävelyä. Ja ehkä joku toinenkin newu joskus saa asiat hahmotettu paremmin. Tai sitten ei.

Eli esim. dy.fi toimii idealla, että jollekin urlille tehdään ikäänkuin alias. Vaikka domainille eksis.one tehdään malliin eksis.dy.fi. Kun sitten menee urliin http://eksis.dy.fi niin se tekee käännön oikeaan eksis.one osoitteeseen, ja koska oma IP on asetettu eksis.dy.fi:lle, niin se näkyy sitten pyynnön tekevän hostin IP:nä, joka - minun tapauksessani - olisi whitelistattu?

Joo, rtfm ei ole koskaan väärin, edes silloin kun hyppää sameaan veteen pää edellä. Mutta alanko nyt olla edes sielläpäin?

Tuota - miten ihmeessä silloin tuo DO:n viritys ja subdomainin käyttäminen mitään lohduttaa paitsi jos haluaa yrittää ET phone home eli nimenomaan malliin SSH kotiinpäin?

Jatkokysymys tietysti kuuluu, että miten tuon pystyy tekemään itse? Koska nythän alkaa olla fiilis, että tuo DigitalOcean kuvio on aika turha.

(juuh... tiedän ihan pahuksen hyvin, että olisin tässä ajassa asentanut dy.fi:n jo tusinaan kertaan, mutta kaipa matkalla oppii)


Jagster

  • Käyttäjä
  • Viestejä: 90
    • Profiili
Vs: OpenVPN ja kiinteä IP
« Vastaus #17 : 17.07.20 - klo:13.55 »
Tunnen itseni tyhmäksi. Niin hemmetin tyhmäksi. Yritän lohduttaa itseäni sillä, että oppia ikä kaikki.

Saa pilkata, koska tässä oli ihan perusasiasta kyse: se hemmetin Huawein boksi. Kun sieltä avasi WAN:lle portin 22, ohjasi sen LANissa 2222 (kai senkin olisi 22 voinut laittaa menemään, eikö nuo ole kuitenkin ns. eri portteja, kun toinen on ulos ja toinen sisäverkon?), kertoi missä sisäverkon IP:ssä SSH kuuntelee ja muutti Ubuntu appissa SSH:n asdetujsista portin 2222:lle, niin hupsista keikkaa pääsin SSH:lla sisälle. Myös sillä host-nimellä, jota nyt DigitalOceanilla alidomainin A-tietue ohjaa.

Ja koska oma osaaminen on näin pohjamudissa, niin...
- eihän tässä ole nyt suora läpi maailmalle auki - tosin, minuutin päästä sisälle ei enää pääse kuin avaimella?
- mihin ihmeeseen Windowsin palomuurissa tarvittiin portin 22 aukaisemista?
- ja miten muutoin ihan rautalankatasolla hyödynnän tätä DynDNS säätöä?

nm

  • Käyttäjä
  • Viestejä: 16232
    • Profiili
Vs: OpenVPN ja kiinteä IP
« Vastaus #18 : 17.07.20 - klo:18.33 »
Fail2ban on suunnilleen ainoa, joka ymmärtää host nimen, kun taasen akselilla Varnish ja Nginx onnistuu vain IP.

Varnishin ACL toimii myös domain-nimellä, mutta palvelin taitaa selvittää nimeä vastaavan IP-osoitteen vain konfiguraation lataamisen yhteydessä. Pitäisi siis tehdä cron-skripti, joka tarkkailee osoitteen vaihtumista, ja komentaa Varnishia lataamaan konfiguraation uudelleen aina tarvittaessa.

Nginxin allow ja deny -säännöt toimivat tosiaan vain IP-osoitteella. Vaihtoehtoina on skriptien virittely tai Nginx HTTP rDNS module, joka on kehitetty juuri tämän ongelman ratkaisuksi.

https://github.com/flant/nginx-http-rdns
https://stackoverflow.com/a/19087970

Tässä vielä esimerkki skriptivaihtoehdosta: https://stackoverflow.com/a/52628286
Googlaamalla löytyy lisää esimerkkejä.


Nyt päästään siihen mitä en ymmärrä tämän dynaamisen jutun kanssa, vaikka käytettäessä Fail2bannia. Missä vaiheessa Fail2ban saa tiedon siitä sallitusta host nimestä (alidomainista). koska se näkee IP:n ja IP kertoo Elisan?

Lähtötilanne on siis se, että Fail2banin konfiguraatiossa on rivi:

Koodia: [Valitse]
ignoreip = omakone.esimerkki.org
Kyseisen domainin DNS-tietueessa on määritelty TTL:ksi 60 sekuntia, jotta sovellukset ymmärtävät selvittää IP:n uudelleen minuutin välein.
Oletetaan myös, että domainin omakone.esimerkki.org IP on onnistuneesti päivitetty ja vastaa oman kotikoneen ulospäin näkyvää osoitetta, joka olkoon vaikka 88.77.66.55. Nimi on myös propagoitunut palvelinkoneen nimipalvelimelle asti, eli fail2ban pystyy selvittämään nimeä vastaavan oikean IP-osoitteen. Tässä voi joskus olla havaittavissa viivettä.

1. Avaat kotikoneella yhteyden palveluun, jota Fail2ban suojaa.
2. Fail2ban vastaanottaa IP-paketin ja näkee sen headerissa lähdeosoitteen 88.77.66.55
3. Fail2ban vertaa lähdeosoitetta ignoreip-listaan. Siellä oleva nimi omakone.esimerkki.org selvitetään IP-osoitteeksi. (Tämä on mahdollisesti tehty jo aiemmin, ja osoite on ennestään muistissa, mutta jos edellisestä osoitteenselvityksestä on kauemmin kuin DNS-tietueen määrittämä 60 sekuntia, osoite selvitetään uudelleen). Kun nimelle on saatu DNS:stä osoite 88.77.66.55, fail2ban havaitsee, että tutkittavan IP-paketin osoite täsmää sen kanssa. Paketin voi siis päästää läpi.
4. Paketti, samoin kuin sitä seuraavat, vastaavasti prosessoidut paketit pääsevät etenemään kohdepalveluun ja yhteys toimii.

Homma toimii, kunnes jossain vaiheessa kotikoneen IP-osoite muuttuu. Silloin domain-nimen päivittämisestä vastaava ohjelma/skripti pyörähtää käyntiin ja kertoo esimerkki.org:n nimipalvelusta vastaavalle palvelulle omakone.esimerkki.org-domainin uuden IP-osoitteen. Osoite propagoituu globaaliin DNS-järjestelmään. Kun otat jälleen asiakaskoneelta yhteyden fail2banin suojaamaan palveluun (tai jos yhteys on ennestään kesken ja paketteja viuhuu edestakaisin), fail2ban selvittää taas omakone.esimerkki.org:n osoitteen ja saa DNS:ltä uuden päivittyneen IP:n. Tässä ilmenee pieni, tai joskus hieman suurempikin viive, johtuen DNS-tietueessa määritellystä TTL:stä, DNS-päivityksen propagoitumisesta ja Fail2banin sisäisestä toteutuksesta. Päivittymisen aikana Fail2ban saattaa siis väliaikaisesti blokata uuden IP-osoitteen.

Saa pilkata, koska tässä oli ihan perusasiasta kyse: se hemmetin Huawein boksi. Kun sieltä avasi WAN:lle portin 22, ohjasi sen LANissa 2222 (kai senkin olisi 22 voinut laittaa menemään, eikö nuo ole kuitenkin ns. eri portteja, kun toinen on ulos ja toinen sisäverkon?)

Reitittimen porttiohjaus tehdään ulkoisesta WAN-portista suoraan sisäverkon tietyn koneen tiettyyn porttiin. Eli vaikka WAN-portti 22 -> 192.168.1.11:22
Porttinumero saa olla molemmissa sama.


Ja koska oma osaaminen on näin pohjamudissa, niin...
- eihän tässä ole nyt suora läpi maailmalle auki - tosin, minuutin päästä sisälle ei enää pääse kuin avaimella?

Salasana-autentikointikin riittää kyllä pitkälle, kunhan salasana ei ole luokkaa kissa tai qwerty.

- mihin ihmeeseen Windowsin palomuurissa tarvittiin portin 22 aukaisemista?

Ei varmaan mihinkään, jos SSH-palvelimesi kuuntelee portissa 2222.

Jos haluat rajoittaa bottien kolkuttelua, ulkoisen WAN-puolen SSH-portin voi vaihtaa joksikin satunnaiseksi isommaksi luvuksi.


- ja miten muutoin ihan rautalankatasolla hyödynnän tätä DynDNS säätöä?

Sen avulla voit missä tahansa maailman kolkassa ja millä tahansa nettiin kytketyllä koneella selvittää kotiverkkosi IP-osoitteen ilman muita apuvälineitä. Ihan kätevää minusta monessakin hommassa. :)
« Viimeksi muokattu: 17.07.20 - klo:18.38 kirjoittanut nm »

Jagster

  • Käyttäjä
  • Viestejä: 90
    • Profiili
Vs: OpenVPN ja kiinteä IP [RATKAISTU]
« Vastaus #19 : 19.07.20 - klo:12.59 »
Summataan koko homma.

Ongelmani perustui hyvin pitkälle siihen, että yritin ratkaista kiinteän IP:n ongelmaani väärällä työkalulla, koska kuvittelin jotain epämääräisen virheellistä dynaamisen DNS:n käytöstä. DDNS on siis vain kiinteä nimi (domain) vaihtuvalle IP:lle eli toimii maailmalta kotiin (vaikka sitä toki voi käyttää mysö redirectinä hankalille urleillekin).

Kiinteä IP taasen kannattaa tehdä itsehostatulla VPN:llä ja se taasen vaikuttaa kotoa maailmalle.

Tekninen puoli taasen lähti toimimaan ihan sillä, että tajusi avata routerista portit.

Yritin tehdä ohjeet dynaamisen DNS:n käyttöönotosta omin voimin. Koskee vain DigitalOceania, koska itse käytän sitä - mutta nopea googletus esitti aika paljonkin ohjeita muille pilvi/virtuaaliserveri-ympäristöille.

https://www.eksis.one/ohjeet/muut-palvelut/dynaaminen-dns-ja-julkinen-ip-osoite/

(Jos/kun jutussa on jotain pielessä, niin saa huomauttaa - parempi korjata ennenkuin kuukkeli indeksoi sen)