Üdv,
Adoot egy Ubuntu 12.04 lts, amelyen van egy futó OpenVPN szerver. Ez a szerver Redirect-Gateway ként küldi tovább kifelé a klienseket, így a szerveren megy keresztül minden forgalma kliensnek. A célom az lenne, hogy csak openvpn kapcsolaton keresztül lehessen csatlakozini SSH-al a szerveremre nagyobb biztonság érdekében.
Tűzfalon kellene gondolom állítani, de bármit próbáltam eddig az nem sikerült. A tűzfal beállításokat vissza vettem minimumra.
*nat
:PREROUTING ACCEPT
:INPUT ACCEPT
:OUTPUT ACCEPT
:POSTROUTING ACCEPT
-A POSTROUTING -s 172.18.200.0/24 -j SNAT --to-source **.***.**.***
COMMIT
*filter
:INPUT DROP
:FORWARD DROP
:OUTPUT DROP
-A INPUT -p tcp -m tcp --dport 22 -j ACCEPT
-A INPUT -p icmp -j DROP
-A INPUT -p tcp -m tcp --dport 443 -j ACCEPT
-A INPUT -i tun0 -j ACCEPT
-A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -m state --state INVALID -j DROP
-A FORWARD -s 172.18.200.0/24 -j ACCEPT
-A FORWARD -o tun0 -j ACCEPT
-A OUTPUT -p tcp -m tcp --sport 22 -j ACCEPT
-A OUTPUT -p tcp -m tcp --dport 22 -j ACCEPT
-A OUTPUT -p tcp -m tcp --sport 443 -j ACCEPT
-A OUTPUT -o tun0 -j ACCEPT
COMMIT
172.18.200.0/24 tartomány az amelyet az OpenVPN szerver készít a klienseknek.
A segítséget és értelmes hozzászólásokat előre is köszönöm !!
- 4651 megtekintés
Hozzászólások
- A hozzászóláshoz be kell jelentkezni
Üdv.
Az a NAT :) Lejebb ha megnézed INPUT DROP-ra van állítva, de amúgy látszik a tűzfalból fix ip címem. A post routing miatt kell beslőleg, hozzá csatolnom az OpenVPN forgalmát a saját hálózat forgalmához, a redirect-gateway végett :)
- A hozzászóláshoz be kell jelentkezni
Na én valahogy így csinálnám:
# csak valasz csomagokat fogadok el
/sbin/iptables -t nat -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
# SSH port ezt lehet esetleg szukiteni IP cimekre, tartomanyokra
/sbin/iptables -t nat -A INPUT -i eth0 -p TCP --dport 22 -s 80.77.123.67 -j ACCEPT
# Itt a -i kapcsolo amin be tudod allitani a tun device -odat, pl.: tun0
Azért azt ne felejtsd el, hogy ha (ezt lejjebb is írják) lerohad az openvpn -ed akkor ki vagy zárva a gépedből. Ergó legyen failover és/vagy más bejárat.
----
올드보이
http://molnaristvan.eu/
- A hozzászóláshoz be kell jelentkezni
érdekes, bár szerintem kifejezetten rossz stratégia két okból is:
1. az ssh eleve "biztonságos", attól nem lesz jobb, hogy bedugod egy vpn tunnelbe is
2. ha esetleg meghal az openvpn, akkor csak helyi terminálon tudsz vele bármit is kezdeni.
Ha jobb biztonságot akarsz 2 dolgot javasolnék inkább:
1. tedd el az ssh-t a 22-es portról
2. használj port-knockingot a belépéshez
- A hozzászóláshoz be kell jelentkezni
+1
- A hozzászóláshoz be kell jelentkezni
3. használjon OPIE-t (one time password megoldás), ezzel tovább tudja szivatni magát :-P
- A hozzászóláshoz be kell jelentkezni
Továbbá:
- rendes jelszó, esetleg kulcs
- n hibás próbálkozások után az adott IP-t bannolni 1 órára
- A hozzászóláshoz be kell jelentkezni
Üdv,
Az ideális megoldás nekem az lenne, ha az ssh-t nem is tudnák támadni, az az elérhetetlenné tenni. így eléggé kézenfekvő lenne a megdoldás amit igyekszem elérni.
- A hozzászóláshoz be kell jelentkezni
Üdv, Crayon.
1. Az ssh annyira biztonságos mint amennyire (heartbleed)féle hibák. Egyenlőre ennél biztonságosabb módszert nem ismerek még. Bár másol nem is láttam még ezt, de attól még tuti használják.
2. Attól nem kell tartanom, hogy meghal az OpenVPN. De ha meg is történne akkor is 1 percbe kerülne vissza állítanom a szervert egészében, működő állapotába :)
1. Most csak azért van 22 porton mert vissza húztam alap állapotba a tűzfalam (első lépés ssh beállítások álltalába nekem)
2. Port knockingot nem ismerem, de megnézem. :)
Összeségében még mindig egyszerűbb tűzfalas megoldást keresek :)
- A hozzászóláshoz be kell jelentkezni
Fogtam két, egyenlőre levágott deszkát - könyvespolc helyett egyelőre jó lesz.
- A hozzászóláshoz be kell jelentkezni
Üdv,
Most ide egy olyan "szkeccset" képzeltem, mikor Peter Griffin beszélget a bevándorló indiaival, és az ömlengve áradozik Peter vicces irónikus mondatain :)
- A hozzászóláshoz be kell jelentkezni
Bevándorló indiaiként egészen tűrhetően megtanultad a magyar nyelvet, de az egyelőre/egyenlőre dolgot még gyakorold egy picit.
- A hozzászóláshoz be kell jelentkezni
Bár megjegyzendő, hogy a "magyar" szó nálam így irandó "Magyar". Trollkodáson kívül értesz is valamihez ? :)
- A hozzászóláshoz be kell jelentkezni
Akkor ezt is rosszul tudod, de indiai bevándorlóknak talán el lehet nézni :-P
- A hozzászóláshoz be kell jelentkezni
Üj le fiam 1-es :)
- A hozzászóláshoz be kell jelentkezni
Sajnos nem, a "* nyelv" kisbetűvel írandó.
- A hozzászóláshoz be kell jelentkezni
A nyelv is, a nemzetiség is (mivel jelző).
Azt csak néhány nagyon-nagyon magyarkodó hiszi, hogy nagy M. Mert ők annyira magyarok, hogy rájuk a nyelvtani szabályok sem vonatkoznak ;)
- A hozzászóláshoz be kell jelentkezni
Hofi forog a sírjában...
- A hozzászóláshoz be kell jelentkezni
Na igen. Ő még tudott magyarul is. :)
- A hozzászóláshoz be kell jelentkezni
- A hozzászóláshoz be kell jelentkezni
- A hozzászóláshoz be kell jelentkezni
Ezt tőled vártam volna a legkevésbé... ;)))
Néha érnek meglepetések. :)
- A hozzászóláshoz be kell jelentkezni
- A hozzászóláshoz be kell jelentkezni
Az ssh annyira biztonságos mint amennyire (heartbleed)féle hibák
Te is kevered az OpenSSL-t az OpenSSH-val...
- A hozzászóláshoz be kell jelentkezni
+1
De hogy a kérdésedre is legyen válasz:
-A INPUT -p tcp -m tcp --dport 22 -j ACCEPT --> -A INPUT -i tun0 -p tcp -m tcp --dport 22 -j ACCEPT
- A hozzászóláshoz be kell jelentkezni
Üdv, Junior013
Köszi a választ, de sajnos nem használt. Annyiból nem ilyen egyszerű az eset, hogy most ami az OpenVPN keresztül jön be minden forgalom postroutingolva van a fix ip címemre.
- A hozzászóláshoz be kell jelentkezni
Pedig valami ilyesmi kéne neked.
Én is ezt javasoltam volna, hogy szűrj az interfészre.
A postroutingban az IP cím átírás az interfészt nem változtatja meg.
Az, hogy nem használt, az azt jelenti, hogy továbbra is be tudsz lépni máshonnan is? Mert akkor a túl engedékeny szabályt kéne először megkeresned és kigyomlálnod.
Én azt mondanám, hogy mivel VPN-ről mindent beengedsz amúgy is, az INPUT csatornád első sorát:
-A INPUT -p tcp -m tcp --dport 22 -j ACCEPT
töröld ki!
- A hozzászóláshoz be kell jelentkezni
Üdv,
az interface-re való szűréssel az a gond, hogy mikor beérkeznek a csomagok már a gépen belül egyből átadódnak a eth0-nak a postrouting miatt. Az eth0 ra meg hiába szűrök, mert akkor kizárom magam. IP címre úgyszint hiába szűrtem, mivel önmagamat a saját ipcímemmel látom a netről. **.***.53.104.
- A hozzászóláshoz be kell jelentkezni
Ellenőrizted, vagy csak feltételezed?
Én úgy tudom (de most nem tudom ellenőrizni), hogy a nat IP címet változtat, de interfészt nem.
másfelől, ha olyan csomagról beszélünk, ami VPN-en keresztül jön be, és a gép saját maga feldolgozza, arra szerintem a postrouting nem aktiválódik.
man iptables:
nat:
This table is consulted when a packet that creates a new connection is encountered. It consists of three built-ins: PREROUTING (for altering packets as soon as they come in), OUTPUT (for altering locally-generated packets before routing), and POSTROUTING (for altering packets as they are about to go out).
A bejövő csomagokra ennek alapján csak a PREROUTING ugrik.
Mindenesetre ha a VPN felől érkező csomagok ugyanolyan IP címről és ugyanolyan interfészről jönnek, mint a nem VPN felől érkezők, akkor egyszerűen nem tudod őket szétválasztani.
Viszont akkor nem értem, hogy minek szivatod magad a VPN felől érkező csomagok natolásával.
Talán érdemes lenne azokat, amik a VPN interfészéről jönnek, nem natolni, és akkor nem lenne semmi gondod.
- A hozzászóláshoz be kell jelentkezni
+kulcs alapú auth
+root login tiltva default
+22, 2222 portokat hanyagolni
+allowusers-et használni az sshd configban
+ha lehet, source ip alapján megadni, honnan lehet belépni
+fail2ban (bekonfigolva az új portra). Paranoid szinten 1 fail login, 24 óra ban a címre.
Ovpn-en keresztül cseppet sem biztonságosabb...
- A hozzászóláshoz be kell jelentkezni
Az nem megoldás, hogy amikor kell SSH, akkor VPN-en belépsz a *router konfigjába, kinyitsz egy tetszőleges portot SSH-nak, majd dolgod végeztével azt bezárod?
Szvsz az a port a legkevésbé támadható, ami nincs nyitva. :)
*ha a géped a router, akkor a megfelelő tűzfalszabályt alkalmazod a port ideiglenes nyitására.
openSUSE 13.1 x86_64.- A hozzászóláshoz be kell jelentkezni
Üdv,
Sajnos nem. A tűzfal egyben a szerver is. ezért van szükség arra, hogy innen szabályozzam be. Sajnos ha bezárnám a ssh elérést, utána hogyan nyitnám ki ?:)
- A hozzászóláshoz be kell jelentkezni
- A hozzászóláshoz be kell jelentkezni
Üdv,
De a szervernek teljesen át van adva forgalom. :) Csak helyből lehetne, akkor elérni a konzolos felületet.
- A hozzászóláshoz be kell jelentkezni
/etc/ssh/sshd_config
ListenAddress tun_interface_ip_cime
- A hozzászóláshoz be kell jelentkezni
Hoppá, megelőztél ;)
<= Powered By Ubuntu & Gentoo Linux =>
'Software is like sex: It's better when it's free!'
By Linus Torvalds
- A hozzászóláshoz be kell jelentkezni
Üdv,
Kipróbáltam azt is sajnos nem működött. A Postrouting miatt szerintem.
Ezekkel próbáltam ki.
ListenAddress tun1 172.18.200.0/24
ListenAddress 172.18.200.0/24
ListenAddress 172.18.200.6
- A hozzászóláshoz be kell jelentkezni
-A POSTROUTING -s 172.18.200.0/24 -j SNAT --to-source **.***.**.***
miért natolsz mindent? saját háló forgalma maradhat saját a címen.
javít
-A POSTROUTING -s 172.18.200.0/24 -d !172.18.200.0/24 -j SNAT --to-source **.***.**.***
ListenAddress 172.18.200.6 - így jó volna, ha ez a vpn ip cime.
utána: ssht -csak a vpn hálóról engeded a vpc címre...
IPTABLES -I INPUT -s !172.18.200.0/24 -d 172.18.200.6 -j DROP
- A hozzászóláshoz be kell jelentkezni
Üdv,
Ez jó megoldás lenne, ha kilensen nem redirect-gateway lenne. Ez azt jelenti hogy minden forgalmat a cliens benyom a vpnbe és a server gépen keresztül lép ki. Ez lenne a route -n
Destination-----Gateway---------Genmask---------Flags-Metric-Ref----Use-Iface
0.0.0.0---------**.***.53.1-----0.0.0.0---------UG----100----0---------0 eth0
**.***.53.0----0.0.0.0----------255.255.255.0---U-----0------0---------0 eth0
169.254.0.0-----0.0.0.0----------255.255.0.0-----U-----1000---0---------0 eth0
172.18.200.0----172.18.200.2----255.255.255.0---UG----0------0---------0 tun1
172.18.200.2----0.0.0.0----------255.255.255.255-UH----0------0--------0 tun1
A fix címe a servernek pedig: **.***.53.104
- A hozzászóláshoz be kell jelentkezni
Kliensőrl pedig így néz ,ki a route
Active Routes:
Network Destination--------Netmask----------Gateway-------Interface--Metric
----------0.0.0.0----------0.0.0.0--------192.168.1.1-----192.168.1.12----10
----------0.0.0.0--------128.0.0.0-------172.18.200.5-----172.18.200.6----30
----**.***.53.104--255.255.255.255------192.168.1.1-----192.168.1.12----10
- A hozzászóláshoz be kell jelentkezni
Szerintem a legjobb megoldás, ha az ssh configban a ListenAdresses -hez beírod a vpn beli interface ip-jét ;). A tűzfalon meg tilts mindent (kivéve a vpn-t ugye :P ).
<= Powered By Ubuntu & Gentoo Linux =>
'Software is like sex: It's better when it's free!'
By Linus Torvalds
- A hozzászóláshoz be kell jelentkezni
Üdv,
Sajnos ez azért nem járható út mert az OpenVPN-ben vagy egy opció amit használok, amely a redirect-gateway opció. Ez a felépült csatornába nyomja a kliens minden forgalmát. Emiatt Postroutingolni kell, hogy átadja a szervernek minden kilépő forgalmat. Ez azt jelenti hogy hiába szürném a tun1-et ha úgy is az eth0 lépek ki és az is kapja teljes forgalmat egyből.
- A hozzászóláshoz be kell jelentkezni
Üdv, mindenkinek aki hozzászólt!
Sikerült megoldanom a dolgot. A megközelítés jó volt a kivétel kezelésnél. Csak az ssh kliens felül routingolta magát ha server IP címéhez csatlakoztam közvetlenül... **.***.53.104. A trükk az lett végül, hogy mikor felépül az OpenVPN kapcsolat SSH kliensnek (putty) azt mondtam az OpenVPN szerver címéhez kapcsolódjon 172.18.200.1. Innentől kezdve az alagutat használja az SSH is.
netstat -n --protocol inet | grep ':22'
tcp 0 64 172.18.200.1:22 172.18.200.6:50877 ESTABLISHED
tcp 0 0...172.18.200.1:22 172.18.200.6:50886 ESTABLISHED
tcp 0 0...**.***.53.104:22 84.206.40.98:3765 ESTABLISHED
Ettől kezdve meg egyszerű tűzfal szabály volt a --dport után hogy -s 172.18.200.0/24 és működik is. Most csak ha megy az OpenVPN akkor lehet SSH használni és csak a belső címre való csatlakozáson keresztül.
Köszönöm mindenkinek az építő jellegű hozzászolását!
- A hozzászóláshoz be kell jelentkezni