Hirdetés

2019. november 20., szerda

Gyorskeresés

Hozzászólások

(#1) kmisi99


kmisi99
(addikt)

Ismét jó leírás, bár nekem még így is annyira komplikált, hogy nincs kedvem belevágni, pedig marha jó lenne távolról hozzáférni a fájljaimhoz. Van a fiókban egy régebbi tplink routerem, lehet azt megpróbálom felokosítani így.

(#2) btz válasza kmisi99 (#1) üzenetére


btz
(addikt)

Ezzel kevesebbet szenvedtem, mint az Openvpn-el. Igaz eddig csak ez az egy leírás alapján működött a dolog. Most próbálok egy másik konfigot EAP-TLS-el, de az nem akar működni.
Lényegében csak 3-4 fájlba kell beleírni, a saját adatainkal behelyettesíteni, ott ahol a saját adatunk kell (pl a tanúsítványoknál) és működik a dolog. Plusz a tűzfal beállítása, de az evidens minden szerver programnál, hogy portot kell neki nyitni.

ⓑⓣⓩ

(#3) kmisi99 válasza btz (#2) üzenetére


kmisi99
(addikt)

Ja, nem tűnik túl bonyolultnak, de soha életemben nem foglalkoztam openwrt-vel.
Gondolom mindenek előtt, egy fix openwrt bekonfigolt rendszer kell, utána kell a VPN-es dolgokat konfigolni.
Szóval egy hétvégét lehet rászánok, és akkor végre tökéletes lesz a hálózatom.

[ Szerkesztve ]

(#4) btz válasza kmisi99 (#3) üzenetére


btz
(addikt)

Valahol el kell kezdeni :D
Ehhez a VPN-hez kell pendrive is a csomagokhoz, mert 12MB-t foglal. 4MB van kb egy átlagos soho routeren. Egy régi 500MB-s pen is megteszi ~500 forintért lehet kapni.

ⓑⓣⓩ

(#5) kmisi99 válasza btz (#4) üzenetére


kmisi99
(addikt)

Na szép, akkor a másik fiók routeremmel ki se tudom vitelezni, mert azon nincs USB. A 1041nd-t pedig féltem kihúzni a szolgálat alól. Bár a fiók routerrel játszogathatok, hogy az alap beállításokat megcsináljam, és ha jól működik akkor jöhet a rendes router.

(#6) btz válasza kmisi99 (#5) üzenetére


btz
(addikt)

Ha nincs rajta USB, akkor ez a VPN módszet felejtős rá, de lehet, hogy az Openvpn is.

ⓑⓣⓩ

(#7) kmisi99 válasza btz (#6) üzenetére


kmisi99
(addikt)

Igen, de a 1043nd-n van USB, csak, arra értettem, hogy a ratyi routeren gyakorlom be az openwrt alapjait, hogy ne azzal csesszem az időt, mikor a 1043nd alól kirántom a forgalmat.
Ezzel a VPN-el amúgy totál olyan mintha belső LAN ban lennék? Azaz a fájl szerveremet ugyan úgy elérem, és nyitogathatnék meg fájlokat?

Bár a ~10mbit feltöltési sebességem nem tudom mennyire lenne elég, hogy nézzem róla távolról a sorozataimat. Ha úgy számolok, hogy egy sorozat rész 1GB és 1 óra hosszú, akkor 1024MB/3600 másodperc=~280KB/S sávszélesség kell, hogy le tudja játszani folyamatosan a videót, bár gondolom a gyakorlatban ez másképp megy. :DDD

Ilyesmit próbáltál már, hogy pl egy távoli wifiről, otthon lévő szerveren lévő filmet sorozatot megnézed?

[ Szerkesztve ]

(#8) btz válasza kmisi99 (#7) üzenetére


btz
(addikt)

Nekem SFTP van, így érem el a szükséges fájlokat, ma voltam épp a helyi pláza wifin keresztül leteszteltem, mindent elérek, akár videót is megnézhetnék.

ⓑⓣⓩ

(#9) btz válasza btz (#8) üzenetére


btz
(addikt)

Dlna-t, Samba-t nem próbáltam, de annak is mennie kell.

ⓑⓣⓩ

(#10) kmisi99 válasza btz (#9) üzenetére


kmisi99
(addikt)

Köszi a válaszokat, akkor lehet bele vágok, ha lesz rá hangulatom, marha jó lenne, ha össze jönne, már csak valami szar pendrive-ot kell túrnom, itthon csak 16GB-os van. :DDD
Bár valahol valamelyik régi telefonban van egy 256mb os micro sd, egy gagyi olvasó meg 1-2$ kínából.

(#11) btz válasza kmisi99 (#10) üzenetére


btz
(addikt)

Az is tökéletesen megfelelő a célnak.

ⓑⓣⓩ

(#12) btz


btz
(addikt)

Ipv6-os probléma megoldva.

Volt egy olyan problémám, hogy ha a bejegyzésemben említett kiens mobilomnak ipv6 címet is ad a szolgáltató, akkor az nem megy keresztül a vpn-en.
Erre a problémára találtam meg a megoldást a StrongSwan kliens profilbeállításainak advanced részében
Egyszerűen be kell jelölni a képen látható nényzetet.

Ezzel blokkoljuk az IPv6 forgalmat, ha a VPN kapcsolat aktív.

ⓑⓣⓩ

(#13) btz válasza btz (#12) üzenetére


btz
(addikt)

"IKEv2 Certificate + EAP (Username/Password)" kombinált bejelentkezés probléma, szintén megoldva!

Ehhez az alábbira kellett módosítani az eredeti leíráshoz képest az ipsec.conf tartalmát:

conn %default
# Dead Peer Discovery
dpdaction=clear
dpddelay=300s

# Do not renegotiate a connection
#if it is about to expire
rekey=no

#server side
leftauth=pubkey
leftfirewall=yes
#leftid=btzdomainje.com
leftcert=eapSERVER_CERT.pem
leftsubnet=0.0.0.0/0

#client side
right=%any
rightdns=8.8.8.8,8.8.4.4
rightsourceip=%dhcp,%dhcp6

conn IPSec-IKEv2
keyexchange=ikev2
auto=add

conn VPN0
also="IPSec-IKEv2"
rightsendcert=never
#rightauth=eap-tls
rightauth=pubkey
rightauth2=eap-md5
eap_identity=%any
leftsendcert=always

Közben a SERVER CERT-et is módosítottam, de ez most mellékes, az eredeti leírással is működne.

Ez a levelezés itt sokat segített. Megértettem az also paraméter lényegét, amit eddig csak sejtettem.

ⓑⓣⓩ

(#14) btz válasza btz (#13) üzenetére


btz
(addikt)

Csak egy kis jegyzet, a linkelt oldal tartalmából.

The important bit is rightauth2 which configures a second authentication
round using EAP after doing a first round with certificate authentication.

You can simplify the whole config by putting the shared options in a
single section and using the also keyword:

conn rw-base
left=172.16.254.200
leftsubnet=0.0.0.0/0
leftcert=pi-peer.der
leftid=my-fqdn.example.com
rightsourceip=172.16.254.0/24
right=%any

conn rw-cert
also=rw-base
auto=add

conn rw-eap
also=rw-base
rightauth=eap-md5
rightsendcert=never
auto=add

conn rw-cert-eap
also=rw-base
rightauth2=eap-md5
auto=add

'pubkey' is the default so rightauth does not have to be specified
explicitly.

ⓑⓣⓩ

(#15) btz válasza btz (#13) üzenetére


btz
(addikt)

Legújabb ipsec.conf beállításom.
Ebben a beállításban csak IKEv2 Certificate+EAP (Username/Password) módban lehet belépni, sima IKEv2 Certificate módban nem.

config setup
#charondebug="ike 2, knl 2, cfg 2, net 2, esp 2, dmn 2, mgr 2"
#uniqueids=never
charondebug="cfg 2, dmn 2, ike 2, net 2"

conn %default
# Dead Peer Discovery
dpdaction=clear
dpddelay=300s

# Do not renegotiate a connection
#if it is about to expire
rekey=no

conn BASE
#server side
leftauth=pubkey
leftfirewall=yes
#leftid=btzdomainje.com
leftcert=eapSERVER_CERT.pem
leftsubnet=0.0.0.0/0

#client side
right=%any
rightdns=8.8.8.8,8.8.4.4
rightsourceip=%dhcp

keyexchange=ikev2
auto=add

#rightsendcert=never
rightauth=pubkey
rightauth2=eap-md5
#rightauth2=eap-tls
eap_identity=%any
leftsendcert=always

Fontos, hogy a rightsendcert=never ki legyen kommentelve (vagy törölve). Nekem okozott némi fejtörést, hogy mi miatt nem működik. Ez az érték volt az.
A későbbiekben ezt a konfigot fogom kiegészíteni ipv6-al.

ⓑⓣⓩ

(#16) btz válasza btz (#15) üzenetére


btz
(addikt)

Újabb konfiguráció módosítás.
Ezzel a konfiggal CERTIFICATION ONLY módban nem lehet belépni, de CERT+EAP (Username/Password) módban és EAP-TLS (Certificate) módban belehet.
A módokhoz külön lehet állítani az IP módokat is. Ezt e konfigot fogom ipv6-al kiegészíteni.

config setup
#charondebug="ike 2, knl 2, cfg 2, net 2, esp 2, dmn 2, mgr 2"
#uniqueids=never
charondebug="cfg 2, dmn 2, ike 2, net 2"

conn %default
# Dead Peer Discovery
dpdaction=clear
dpddelay=300s

# Do not renegotiate a connection
#if it is about to expire
rekey=no

conn BASE
#server side
leftfirewall=yes
#leftid=btzdomainje.com
leftcert=eapSERVER_CERT.pem
leftsubnet=0.0.0.0/0

#client side
#rightsendcert=never

keyexchange=ikev2
auto=add

conn EAP0
also="BASE"
rightauth=pubkey
leftauth=pubkey
rightauth2=eap-md5
eap_identity=%any
leftsendcert=always
right=%any
rightdns=8.8.8.8,8.8.4.4
rightsourceip=%dhcp

conn EAP1
also="BASE"
leftauth=pubkey
rightauth=eap-tls
eap_identity=%any
leftsendcert=always
right=%any
rightdns=8.8.8.8,8.8.4.4
rightsourceip=%dhcp

ⓑⓣⓩ

(#17) btz válasza btz (#16) üzenetére


btz
(addikt)

...és akkor az előző konfig ipv6-os változata.
Ezzel már kap IPv6-os IP címet a kliens

config setup
#charondebug="ike 2, knl 2, cfg 2, net 2, esp 2, dmn 2, mgr 2"
#uniqueids=never
charondebug="cfg 2, dmn 2, ike 2, net 2"

conn %default
# Dead Peer Discovery
dpdaction=clear
dpddelay=300s

# Do not renegotiate a connection
#if it is about to expire
rekey=no

conn BASE
#server side
leftfirewall=yes
#leftid=btzdomainje.com
leftcert=eapSERVER_CERT.pem
leftsubnet=0.0.0.0/0,::/0

#client side
#rightsendcert=never

keyexchange=ikev2
auto=add

conn EAP0
also="BASE"
rightauth=pubkey
leftauth=pubkey
rightauth2=eap-md5
eap_identity=%any
leftsendcert=always
right=%any
rightdns=8.8.8.8,8.8.4.4
rightsourceip=%dhcp,2001:1:2:3500::/56

conn EAP1
also="BASE"
leftauth=pubkey
rightauth=eap-tls
eap_identity=%any
leftsendcert=always
right=%any
rightdns=8.8.8.8,8.8.4.4
rightsourceip=%dhcp,2001:1:2:3700::/56

Az IPv6 címek helyére helyettesítse be mindenki a saját szolgáltatója által nyújtott prefixeket.
Én itt két különböző subnetes /56-os prefixeket használtam a két különböző EAP konnekcióhoz, de lehetne ugyan az is.

[ Szerkesztve ]

ⓑⓣⓩ

(#18) btz


btz
(addikt)

Titkosítási kulcsok létrehozása

CA Root Certificate/Key
cd etc/ipsec.d
ipsec pki --gen --type rsa --size 4096 --outform pem > private/CA_KEY.pem
chmod 600 private/CA_KEY.pem
ipsec pki --self --ca --lifetime 3650 --in private/CA_KEY.pem --type rsa --dn "C=CA, O=nicktamm.com, CN=vpn.nicktamm.com Root CA" --outform pem > cacerts/CA_CERT.pem

Server (router) Certificate/Key
ipsec pki --gen --type rsa --size 2048 --outform pem > private/SERVER_KEY.pem
chmod 600 private/SERVER_KEY.pem
ipsec pki --pub --in private/SERVER_KEY.pem --type rsa | ipsec pki --issue --lifetime 730 --cacert cacerts/CA_CERT.pem --cakey private/CA_KEY.pem --dn "C=CA, O=nicktamm.com, CN=vpn.nicktamm.com" --san vpn.nicktamm.com --flag serverAuth --flag ikeIntermediate --outform pem > certs/SERVER_CERT.pem

Client Certificate/Key
ipsec pki --gen --type rsa --size 2048 --outform pem > private/CLIENT_KEY.pem
chmod 600 private/CLIENT_KEY.pem
ipsec pki --pub --in private/CLIENT_KEY.pem --type rsa | ipsec pki --issue --lifetime 730 --cacert cacerts/CA_CERT.pem --cakey private/CA_KEY.pem --dn "C=CA, O=nicktamm.com, CN=CLIENT@vpn.nicktamm.com" --san CLIENT@vpn.nicktamm.com --outform pem > certs/CLIENT_CERT.pem

PKCS12 Certificate
openssl pkcs12 -export -inkey private/CLIENT_KEY.pem -in certs/CLIENT_CERT.pem -name "vpn.nicktamm.com VPN Certificate" -certfile cacerts/CA_CERT.pem -caname "vpn.nicktamm.com Root CA" -out CLIENT.p12

Forrás

ⓑⓣⓩ

Copyright © 2000-2019 PROHARDVER Informatikai Kft.