WiFi Enterprise. FreeRadius + FreeIPA + Ubiquiti

WiFi Enterprise. FreeRadius + FreeIPA + Ubiquiti

Oleme juba kirjeldanud mĂ”ningaid nĂ€iteid ettevĂ”tte WiFi korraldamiseks. Siin ma selgitan, kuidas selline lahendus ellu viia ja millised probleemid olid seoses erinevate seadmetega ĂŒhendamisega. Kasutame juba olemasolevat LDAP koos registreeritud kasutajatega, seadistame FreeRadiusi ja konfigureerime WPA2-Enterprise Ubnt kontrolleris. NĂ€ib, et kĂ”ik on lihtne. Vaadake


Natuke EAP meetoditest

Enne ĂŒlesande tĂ€itmise alustamist tuleb otsustada, millist autentimismeetodit meie lahenduses kasutada.

Vikipeediast:

EAP on autentimisraamistik, mida kasutatakse sageli traadita vĂ”rkudes ja punkt-punkt ĂŒhendustes. Formaat kirjeldati esmakordselt RFC 3748-s ja uuendati RFC 5247-s.
EAP-d kasutatakse autentimismeetodi valimiseks, vÔtmete edastamiseks ja nende vÔtmete töötlemiseks, mida tehakse EAP meetoditeks nimetatud moodulite kaudu. EAP meetodeid on palju, nii neid, mis on mÀÀratletud koos EAP-iga, kui ka eraldi tootjate poolt vÀlja antud. EAP ei mÀÀratle kanalitaset, see mÀÀratleb ainult sÔnumite formaadi. Igal EAP-d kasutaval protokollil on oma EAP sÔnumite kapseldamise protokoll.

Meetodid ise:

  • LEAP on CISCO loodud patenteeritud protokoll. Leitud on turvaauke. Praegu ei soovitata kasutada.
  • EAP-TLS on hĂ€sti toetatud traadita ĂŒhenduste pakkujate seas. See on turvaline protokoll, kuna on SSL-standardite jĂ€reltulija. Kliendi seadistamine on ĂŒsna keeruline. Vajalik on klientsertifikaat koos parooliga. Toetatakse paljudes sĂŒsteemides.
  • EAP-TTLS on laialdaselt toetatud paljudes sĂŒsteemides, pakkudes head turvalisust, kasutades PKI sertifikaate ainult autentimisseervas.
  • EAP-MD5 on teine avatud standard. Pakkuda minimaalset turvalisust. On haavatav, ei toeta vastastikust autentimist ja vĂ”tmete genereerimist.
  • EAP-IKEv2 pĂ”hineb Internet Key Exchange Protokollil versioon 2. Tagab vastastikuse autentimise ja seansivĂ”tme loomise kliendi ja serveri vahel.
  • PEAP on CISCO, Microsofti ja RSA Security ĂŒhislahendus, millel on avatud standard. Laialdaselt saadaval toodetes, tagades vĂ€ga hea turvalisuse. Sarnane EAP-TTLS-iga, nĂ”udes ainult sertifikaati serveripoolses osas.
  • PEAPv0/EAP-MSCHAPv2 — pĂ€rast EAP-TLS on see teine laialdaselt kasutatav standard maailmas. Kasutatakse kliendi-serveri suhet Microsoftis, Ciscos, Apple'is ja Linuxis.
  • PEAPv1/EAP-GTC — loodud Cisco poolt alternatiivina PEAPv0/EAP-MSCHAPv2-le. Ei kaitse autentimisandmeid mingil juhul. Windows OS-is ei toetata.
  • EAP-FAST — meetod, mille on vĂ€lja töötanud Cisco, et parandada LEAP-i puudusi. Kasutab Protected Access Credential (PAC). Pole tĂ€ielikult arendatud.

KÔikidest neist valikutest ei ole valik siiski lai. Autentimismeetodilt nÔuti: head turvalisust, tuge erinevates seadmetes (Windows 10, macOS, Linux, Android, iOS) ja lihtsust. Seega langes valik EAP-TTLS kasuks koos PAP-protokolliga.
VĂ”ib tekkida kĂŒsimus — miks siis kasutada PAP-i? kas see ei edasta paroole avatud kujul?

Jah, kĂ”ik on Ă”ige. Suhtlemine FreeRadius ja FreeIPA vahel toimub just nii. Vigade jĂ€lgimise reĆŸiimis saab jĂ€lgida, kuidas edastatakse kasutajanimi ja parool. Ja olgu saadetud, kuid teil on ju juurdepÀÀs FreeRadius serverile.

Lisainfot EAP-TTLS töö kohta saab lugeda. siit

FreeRADIUS

TĂ”stame FreeRadius ĂŒles CentOS 7.6-l. Siin pole midagi keerulist, installeerime tavapĂ€rasel viisil.

yum install freeradius freeradius-utils freeradius-ldap -y

Pakettidest installitakse versioon 3.0.13. Viimast saab vÔtta aadressilt. https://freeradius.org/

PÀrast seda töötab FreeRadius juba. Failis /etc/raddb/users saab kommenteerida rea.

steve   Cleartext-Password := "testing"

KĂ€ivita server silumise reĆŸiimis.

freeradius -X

Ja teeme katseĂŒhenduse localhostiga.

radtest steve testing 127.0.0.1 1812 testing123

Saime vastuse. Received Access-Accept Id 115 from 127.0.0.1:1812 to 127.0.0.1:56081 length 20, see tÀhendab, et kÔik on korras. JÀtkame edasi.

Ühendame mooduli. ldap.

ln -s /etc/raddb/mods-available/ldap /etc/raddb/mods-enabled/ldap

Ja muudame seda kohe. Me vajame, et FreeRadius saaks rÀÀkida FreeIPA-ga.

mods-enabled/ldap

ldap {
server="ldap://ldap.server.com"
port=636
start_tls=yes
identity="uid=admin,cn=users,dc=server,dc=com"
password=**********
base_dn="cn=users,dc=server,dc=com"
set_auth_type=yes
...
user {
base_dn="${..base_dn}"
filter="(uid=%{%{Stripped-User-Name}:-%{User-Name}})"
}
...

TaaskĂ€ivitage radius-server ja kontrollige LDAP kasutajate sĂŒnkroonimist:

radtest user_ldap password_ldap localhost 1812 testing123

Toimetame eap-d mods-enabled/eap
Siia lisame kaks eksemplari eap-d. Need erinevad ainult sertifikaatide ja vÔtmete poolest. Veidi allpool selgitan, miks just nii.

mods-enabled/eap

eap eap-client {                                                                                                                                                                                                                           default_eap_type = ttls                                                                                                                                                                                                                 timer_expire = 60                                                                                                                                                                                                                       ignore_unknown_eap_types = no                                                                                                                                                                                                          cisco_accounting_username_bug = no                                                                                                                                                                                                      max_sessions = ${max_requests}
           tls-config tls-common {
           private_key_file = ${certdir}/fisrt.key
           certificate_file = ${certdir}/first.crt
           dh_file = ${certdir}/dh
           ca_path = ${cadir}
           cipher_list = "HIGH"
           cipher_server_preference = no
           ecdh_curve = "prime256v1"
           check_crl = no
           }
                                                                                                                                                                                                                                                                                                                                                                                                                                                 
           ttls {
           tls = tls-common
           default_eap_type = md5
           copy_request_to_tunnel = no
           use_tunneled_reply = yes
           virtual_server = "inner-tunnel"
           }
}
eap eap-guest {
default_eap_type = ttls                                                                                                                                                                                                                 timer_expire = 60                                                                                                                                                                                                                       ignore_unknown_eap_types = no                                                                                                                                                                                                          cisco_accounting_username_bug = no                                                                                                                                                                                                      max_sessions = ${max_requests}
           tls-config tls-common {
           private_key_passwotd=blablabla
           private_key_file = ${certdir}/server.key
           certificate_file = ${certdir}/server.crt
           dh_file = ${certdir}/dh
           ca_path = ${cadir}
           cipher_list = "HIGH"
           cipher_server_preference = no
           ecdh_curve = "prime256v1"
           check_crl = no
           }
                                                                                                                                                                                                                                                                                                                                                                                                                                                 
           ttls {
           tls = tls-common
           default_eap_type = md5
           copy_request_to_tunnel = no
           use_tunneled_reply = yes
           virtual_server = "inner-tunnel"
           }
}

JĂ€tkame redigeerimist site-enabled/default. Huvi pakuvad jaotised authorize ja authenticate.

site-enabled/default

authorize {
  filter_username
  preprocess
  if (&User-Name == "guest") {
   eap-guest {
       ok = return
   }
  }
  elsif (&User-Name == "client") {
    eap-client {
       ok = return 
    }
  }
  else {
    eap-guest {
       ok = return
    }
  }
  ldap
  if ((ok || updated) && User-Password) {
    update {
        control:Auth-Type := ldap
    }
  }
  expiration
  logintime
  pap
  }

authenticate {
  Auth-Type LDAP {
    ldap
  }
  Auth-Type eap-guest {
    eap-guest
  }
  Auth-Type eap-client {
    eap-client
  }
  pap
}

Jaotis authorize loobime kÔik moodulid, mida me ei vaja. JÀtame alles ainult ldap. Lisame kliendi kontrolli kasutajanime jÀrgi. Just selleks lisasime varem kaks eksemplari eap.

Multi EAPTegelikult, kui ĂŒhendame mĂ”ned seadmed, kasutame sĂŒsteemi sertifikaate ja mĂ€rkime domeeni. Meil on sertifikaat ja vĂ”ti usaldusvÀÀrselt sertifitseerimiskeskuselt. Minu arvates on see ĂŒhendumisprotseduur lihtsam, kui visata igale seadmele iseallkirjastatud sertifikaat. Kuid ka ilma iseallkirjastatud sertifikaatideta me ei saanud hakkama. Samsungi seadmed ja Android < 6 versioon ei oska kasutada sĂŒsteemi sertifikaate. SeetĂ”ttu loome neile eraldi eksemplari eap-guest iseallkirjastatud sertifikaatidega. KĂ”ikidele teistele seadmetele kasutame eap-client usaldusvÀÀrse sertifikaadiga. User-Name mÀÀratakse Anonymous vĂ€ljast ĂŒhendamisel. Lubatud on kasutada ainult 3 vÀÀrtust: Guest, Client ja tĂŒhi vĂ€li. KĂ”ik muu jĂ€etakse kĂ”rvale. See seadistatakse poliitikates. Toome nĂ€ite natuke hiljem.

Redigeerime jaotised authorize ja authenticate site-enabled/inner-tunnel

site-enabled/inner-tunnel

authorize {
  filter_username
  filter_inner_identity
  update control {
   &Proxy-To-Realm := LOCAL
  }
  ldap
  if ((ok || updated) && User-Password) {
    update {
        control:Auth-Type := ldap
    }
  }
  expiration
  digest
  logintime
  pap
  }

authenticate {
  Auth-Type eap-guest {
    eap-guest
  }
  Auth-Type eap-client {
    eap-client
  }
  Auth-Type PAP {
    pap
  }
  ldap
}

JĂ€tkamiseks peame poliitikates mÀÀrama, milliseid nimesid saab kasutada anonĂŒĂŒmseks sisenemiseks. Redigeerime policy.d/filter.

Peame leidma read, mis nÀevad vÀlja sellised:

if (&outer.request:User-Name !~ /^(anon|@)/) {
  update request {
    Module-Failure-Message = "User-Name ei ole anonymiseeritud"
  }
  reject
}

Ja allpool elsif lisama vajalikud vÀÀrtused:

elsif (&outer.request:User-Name !~ /^(guest|client|@)/) {
  update request {
    Module-Failure-Message = "User-Name ei ole anonymiseeritud"
  }
  reject
}

NĂŒĂŒd peame liikuma katalooge certs. Siia tuleb panna vĂ”ti ja sertifikaat usaldusvÀÀrselt sertifitseerimiskeskuselt, mis meil juba on, ja genereerida iseallkirjastatud sertifikaadid eap-guest jaoks.

Muudame parameetreid failis ca.cnf.

ca.cnf


...
default_days = 3650
default_md = sha256
...
input_password = blablabla
output_password = blablabla
...
countryName = EE
stateOrProvinceNmae = Osariik
localityNmae = Linn
organizationName = NONAME
emailAddress = admin@admin.ee
commonName = "CA FreeRadius"

Samad vÀÀrtused kirjutame failis server.cnf. Muudame ainult
commonName:

server.cnf


...
default_days = 3650
default_md = sha256
...
input_password = blablabla
output_password = blablabla
...
countryName = EE
stateOrProvinceNmae = Osariik
localityNmae = Linn
organizationName = NONAME
emailAddress = admin@admin.ee
commonName = "Server Certificate FreeRadius"

Loomeme:

tee

Valmis. Saadud server.crt ja server.key on meil juba soovitud eap-guest failis.

Ja viimane, lisame meie juurdepÀÀsupunktid faili client.conf. Mul on neid 7. Selleks, et mitte iga punkti eraldi lisada, kirjutame lihtsalt vÔrgu, kuhu nad kuuluvad (minu juurdepÀÀsupunktid asuvad eraldi VLAN-is).

client APs {
ipaddr = 192.168.100.0/24
password = password_AP
}

Ubiquiti kontroller

Kontrolleris loome eraldi vÔrgu. Olgu see 192.168.2.0/24
Liigume seadetesse -> profiil. Loome uue:

WiFi Enterprise. FreeRadius + FreeIPA + Ubiquiti

Kiresime radius-serveri aadressi ja portaad ja parooli, mille me failis oleme mÀÀranud clients.conf:

WiFi Enterprise. FreeRadius + FreeIPA + Ubiquiti

Loome uue juhtmeta vÔrgu nime. Autentimise meetodina valime WPA-EAP (Enterprise) ja osutame loodud radius-profiilile:

WiFi Enterprise. FreeRadius + FreeIPA + Ubiquiti

Kinnitame kÔik, rakendame ja liigume edasi.

Kliendi seadistamine

Alustame kÔige keerulisemast!

ja Android. Ja kuigi sageli ei toimind need sĂŒsteemid eriti hĂ€sti, on huvitav, et see on ĂŒldse vĂ”imalik.

Raskus seisneb selles, et Windows ei oska veel domeeni kaudu ettevĂ”tte WiFi-iga ĂŒhenduda. SeetĂ”ttu peame kĂ€sitsi oma sertifikaadi usaldusvÀÀrsete sertifikaatide salvestusse lisama. Siin saab kasutada kas ise allkirjastatud vĂ”i sertifitseerimiskeskusest.

SeejĂ€rel tuleb luua uus ĂŒhendus. Selleks liikume vĂ”rgu- ja Interneti seadete juurde -> VĂ”rgu ja jagamise juhtimiskeskus -> Uue ĂŒhenduse vĂ”i vĂ”rgu loomine ja seadistamine:

WiFi Enterprise. FreeRadius + FreeIPA + Ubiquiti

WiFi Enterprise. FreeRadius + FreeIPA + Ubiquiti

WiFi Enterprise. FreeRadius + FreeIPA + Ubiquiti

KĂ€sitsi kirjutame vĂ”rgu nime ja muudame turvatĂŒĂŒpi. SeejĂ€rel vajutame muuda ĂŒhenduse seadeid ja turvalisuse vahekaardil valime vĂ”rgu autentimise - EAP-TTLS.

WiFi Enterprise. FreeRadius + FreeIPA + Ubiquiti

WiFi Enterprise. FreeRadius + FreeIPA + Ubiquiti

WiFi Enterprise. FreeRadius + FreeIPA + Ubiquiti

Siseneme seadetele, mÀÀrame autentimise konfidentsiaalsuse - client. UsaldusvÀÀrse sertifitseerimiskeskuse valimisel valime lisatud sertifikaadi, mĂ€rkime kasti "Ärge kuvage kasutajale kutset, kui serveri autentimine ebaĂ”nnestub" ja autentimise meetodina valime - krĂŒpteerimata parooli (PAP).

WiFi Enterprise. FreeRadius + FreeIPA + Ubiquiti

JĂ€tkame lisaseadete juurde, paneme mĂ€rgi "MÀÀrake autentimise reĆŸiim". Valime "Kasutaja autentimine" ja vajutame salvesta sisselogimisandmed. Siia tuleb sisestada username_ldap ja password_ldap

WiFi Enterprise. FreeRadius + FreeIPA + Ubiquiti

WiFi Enterprise. FreeRadius + FreeIPA + Ubiquiti

WiFi Enterprise. FreeRadius + FreeIPA + Ubiquiti

Salvestame kĂ”ik, rakendame, sulgeme. Saame hakata uude vĂ”rku ĂŒhenduma.

Linux

Olen testinud Ubuntu 18.04, 18.10, Fedora 29, 30.

Alustuseks laadime alla sertifikaadi. Ma ei leidnud Linuxist, kas on vĂ”imalik kasutada sĂŒsteemi sertifikaate ja kas seal on ĂŒldse selline hoidla.

Ühendume domeeni kaudu. SeetĂ”ttu on vajalik sertifikaat sertifitseerimisasutuselt, kellelt meie sertifikaat on soetatud.

Kogu ĂŒhendamine toimub ĂŒhes aknas. Valime meie vĂ”rgu:

WiFi Enterprise. FreeRadius + FreeIPA + Ubiquiti

anonĂŒĂŒmne — klient
domeen — domeen, millele sertifikaat on vĂ€lja antud

Android

non-Samsung

Alates versioonist 7 on WiFi ĂŒhendamisel vĂ”imalik kasutada sĂŒsteemi sertifikaate, mĂ€rkides ainult domeeni:

WiFi Enterprise. FreeRadius + FreeIPA + Ubiquiti

domeen — domeen, millele sertifikaat on vĂ€lja antud
anonĂŒĂŒmne — klient

Samsung

Nagu juba eespool mainisin, ei oska Samsungi seadmed WiFi ĂŒhendamisel kasutada sĂŒsteemi sertifikaate ja neil pole domeeni kaudu ĂŒhendamise vĂ”imalust. SeetĂ”ttu tuleb kĂ€sitsi lisada sertifitseerimiskeskuse juureskirjastus (ca.pem, saame Radius serverilt). Siin kasutatakse iseallkirjastatud sertifikaati.

Laadime sertifikaadi oma seadmesse ja installime selle.

Sertifikaadi installimineWiFi Enterprise. FreeRadius + FreeIPA + Ubiquiti

WiFi Enterprise. FreeRadius + FreeIPA + Ubiquiti

WiFi Enterprise. FreeRadius + FreeIPA + Ubiquiti

WiFi Enterprise. FreeRadius + FreeIPA + Ubiquiti

Selleks tuleb installida ekraanilukustuse muster, PIN-kood vÔi parool, kui see pole veel seadistatud:

WiFi Enterprise. FreeRadius + FreeIPA + Ubiquiti

WiFi Enterprise. FreeRadius + FreeIPA + Ubiquiti

Kusin keerukat sertifikaadi installimise varianti. Enamikus seadmetes piisab lihtsalt allalaaditud sertifikaadile klikkimisest.

Kui sertifikaat on installitud, saame liikuda ĂŒhendamise juurde:

WiFi Enterprise. FreeRadius + FreeIPA + Ubiquiti

sertifikaat — nĂ€itame seda, mida oleme installinud
anonĂŒĂŒmne kasutaja — kĂŒlaline

macOS

Apple'i seadmed saavad kohe ĂŒhenduda ainult EAP-TLS-iga, kuid sertifikaat tuleb ikka neile edastada. Teise ĂŒhendamismeetodi valimiseks tuleb kasutada Apple Configurator 2. SeetĂ”ttu tuleb see eelnevalt Macile alla laadida, luua uus profiil ja lisada kĂ”ik vajalikud WiFi seaded.

Apple ConfiguratorWiFi Enterprise. FreeRadius + FreeIPA + Ubiquiti

WiFi Enterprise. FreeRadius + FreeIPA + Ubiquiti

Siin mÀrkige oma vÔrgu nimi
TurbetĂŒĂŒp — WPA2 Enterprise
Aktsepteeritud EAP tĂŒĂŒbid — TTLS
Kasutajanimi ja parool — jĂ€tame tĂŒhjaks
Siseautentimine — PAP
VĂ€line identiteet — klient

UsaldusvÀÀrsuse vahekaart. Siin mÀrgime oma domeeni

KÔik. Profiili saab salvestada, allkirjastada ja jagada seadmetele

Kui profiil on valmis, tuleb see mac-ile alla laadida ja installida. Installimise kÀigus tuleb sisestada kasutaja ldap ja parool ldap.

WiFi Enterprise. FreeRadius + FreeIPA + Ubiquiti

WiFi Enterprise. FreeRadius + FreeIPA + Ubiquiti

WiFi Enterprise. FreeRadius + FreeIPA + Ubiquiti

iOS

Protsess on samasugune nagu macOS-is. Tuleb kasutada profiili (seda vĂ”ib kasutada sama, mis macOS-i jaoks). Kuidas profiili luua Apple Configuratoris, vaata ĂŒlalpool).

Laadi profiil alla, installi see, sisesta kasutajatunnused ja ĂŒhenda:

WiFi Enterprise. FreeRadius + FreeIPA + Ubiquiti

WiFi Enterprise. FreeRadius + FreeIPA + Ubiquiti

WiFi Enterprise. FreeRadius + FreeIPA + Ubiquiti

WiFi Enterprise. FreeRadius + FreeIPA + Ubiquiti

WiFi Enterprise. FreeRadius + FreeIPA + Ubiquiti

WiFi Enterprise. FreeRadius + FreeIPA + Ubiquiti

Sellega on kĂ”ik. Oleme seadistanud Radius-serveri, sĂŒnkrooninud selle FreeIPA-ga ja mÀÀranud Ubiquiti juurdepÀÀsupunktidele kasutama WPA2-EAP.

VĂ”imalikud kĂŒsimused

K: kuidas edastada profiil/sertifikaat töötajale?

V: KĂ”ik sertifikaadid/profiilid hoian FTP-s, millele pÀÀseb ligi lĂ€bi veebi. Olen seadistanud kĂŒlalisjao, kus juurdepÀÀs on piiratud kiirusest ja ainult internetti, vĂ€lja arvatud FTP.
Autentimine kestab 2 pĂ€eva, pĂ€rast mida see kustutatakse ja klient jÀÀb ilma internetita. Seega, kui töötaja soovib WiFi-ga ĂŒhendada, peab ta esmalt ĂŒhendama kĂŒlalisse vĂ”rku, minema FTP-sse, laadima alla soovitud sertifikaadi vĂ”i profiili, installima need ja pĂ€rast seda saab ta ĂŒhendada ettevĂ”tte vĂ”rku.

K: miks mitte kasutada MSCHAPv2 skeemi? see on ju turvalisem!

V: Esiteks töötab see skeem hĂ€sti NPS-is (Windows Network Policy System), meie rakenduses on vajalik tĂ€iendavate LDAP (FreeIpa) seadistamine ja paroolide rĂ€si hoidmine serveris. TĂ€iendavate seadistuste tegemine pole soovitatav, kuna see vĂ”ib pĂ”hjustada erinevaid sĂŒnkroonimisprobleeme. Teiseks, rĂ€si on MD4, seega ei tĂ”sta see eriti turvalisust.

K: kas seadmeid saab autoriseerida MAC-aadresside jÀrgi?

V: EI, see ei ole turvaline, hÀkker vÔib MAC-aadresse petta ja autoriseerimine MAC-aadresside jÀrgi ei ole paljude seadmete poolt toetatud.

K: miks ĂŒldse neid sertifikaate kasutada? saab ju ka ilma nendeta ĂŒhendada.

V: sertifikaate kasutatakse serveri autoriseerimiseks. See tĂ€hendab, et seade kontrollib ĂŒhendamisel, kas see on usaldusvÀÀrne server vĂ”i mitte. Kui on, siis autentimine jĂ€tkub, kui ei, siis ĂŒhendus sulgetakse. Ühenduda on vĂ”imalik ka sertifikaatideta, kuid kui pahatahtlik isik vĂ”i naaber seab endale kodus radius-serveri ja juurdepÀÀsupunkti sama nimega nagu meil, saab ta kergesti tabada kasutaja autentimistunnuseid (Ă€rgem unustagem, et need edastatakse avatud kujul). Kui aga sertifikaati kasutatakse, nĂ€eb vaenlane oma logides vaid meie vĂ€ljamĂ”eldud User-Name'id — kĂŒlaline vĂ”i klient ja veateadet, nagu Unknown CA Certificate.

veel natuke macOS-istTavaliselt toimub macOS-i uuesti installimine interneti kaudu. TaastereĆŸiimis peab mac olema ĂŒhendatud WiFi-ga, ja siin ei tööta ei meie ettevĂ”tte WiFi ega kĂŒlaliste vĂ”rk. Isiklikult seadsin ĂŒles veel ĂŒhe vĂ”rgu, tavalise WPA2-PSK vĂ”rgu, peidetud, ainult tehniliste operatsioonide jaoks. VĂ”i siis on vĂ”imalik eelnevalt teha sĂŒsteemiga kĂ€ivitatav USB-mĂ€lupulk. Kuid kui mac on pĂ€rast 2015. aastat, tuleb veel leida adapter selle mĂ€lupulga jaoks.)

Allikas: habr.com

Osta usaldusvÀÀrne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid đŸ”„ Osta usaldusvÀÀrne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid | ProHoster