Linux fəaliyyətdə kitab

Linux fəaliyyətdə kitab Salam, Khabro sakinləri! Kitabda Devid Klinton 12 real həyat layihəsini təsvir edir, o cümlədən ehtiyat nüsxə və bərpa sisteminizin avtomatlaşdırılması, Dropbox tipli şəxsi fayl buludunun qurulması və öz MediaWiki serverinizin yaradılması. Maraqlı nümunə araşdırmaları vasitəsilə virtuallaşdırma, fəlakətin bərpası, təhlükəsizlik, ehtiyat nüsxə, DevOps və sistem problemlərinin həllini araşdıracaqsınız. Hər bir fəsil ən yaxşı təcrübələrin nəzərdən keçirilməsi, yeni terminlərin lüğəti və məşqlərlə bitir.

Çıxarış “10.1. OpenVPN tunelinin yaradılması"

Mən artıq bu kitabda şifrələmə haqqında çox danışmışam. SSH və SCP uzaq bağlantılar vasitəsilə ötürülən məlumatları qoruya bilər (Fəsil 3), fayl şifrələməsi məlumatları serverdə saxlanarkən qoruya bilər (Fəsil 8) və TLS/SSL sertifikatları saytlar və müştəri brauzerləri arasında ötürülən məlumatları qoruya bilər (Fəsil 9) . Lakin bəzən məlumatlarınız daha geniş əlaqələr diapazonunda qorunmalıdır. Məsələn, komanda üzvlərinizdən bəziləri ictimai qaynar nöqtələr vasitəsilə Wi-Fi-a qoşularkən yolda işləyirlər. Siz qətiliklə bütün bu cür giriş nöqtələrinin təhlükəsiz olduğunu düşünməməlisiniz, lakin sizin adamlarınız şirkət resurslarına qoşulmaq üçün bir yola ehtiyac duyurlar və VPN kömək edə bilər.

Düzgün dizayn edilmiş VPN tuneli, etibarlı olmayan şəbəkə üzərindən keçərkən məlumatları gizlədən şəkildə uzaq müştərilər və server arasında birbaşa əlaqə təmin edir. Nə olsun? Şifrələmə ilə bunu edə biləcək bir çox alətləri artıq görmüsünüz. VPN-nin əsl dəyəri ondan ibarətdir ki, tunel açmaqla siz uzaq şəbəkələri sanki hamısı yerli kimi birləşdirə bilərsiniz. Müəyyən mənada siz bypassdan istifadə edirsiniz.

Bu genişləndirilmiş şəbəkədən istifadə edərək, administratorlar öz serverlərində işlərini istənilən yerdən yerinə yetirə bilərlər. Lakin daha da vacibi odur ki, bir çox yerlərdə yayılmış resursları olan şirkət, harada olmalarından asılı olmayaraq, onları görünən və ehtiyacı olan bütün qruplar üçün əlçatan edə bilər (Şəkil 10.1).

Tunelin özü təhlükəsizliyə zəmanət vermir. Ancaq şifrələmə standartlarından biri şəbəkə strukturuna daxil edilə bilər ki, bu da təhlükəsizlik səviyyəsini əhəmiyyətli dərəcədə artırır. Açıq mənbəli OpenVPN paketindən istifadə edərək yaradılan tunellər, artıq oxuduğunuz TLS/SSL şifrələməsindən istifadə edir. OpenVPN mövcud olan yeganə tunel seçimi deyil, lakin ən yaxşı tanınanlardan biridir. IPsec şifrələməsindən istifadə edən alternativ Layer 2 tunel protokolundan bir qədər daha sürətli və daha təhlükəsiz hesab olunur.

Yolda olarkən və ya müxtəlif binalarda işləyərkən komandanızdakı hər kəsin bir-biri ilə təhlükəsiz əlaqə saxlamasını istəyirsiniz? Bunun üçün proqramların paylaşılmasına və serverin yerli şəbəkə mühitinə daxil olmasına icazə vermək üçün OpenVPN serveri yaratmalısınız. Bunun işləməsi üçün sizə lazım olan tək şey iki virtual maşın və ya iki konteyner işlətməkdir: biri server/host, digəri isə müştəri kimi fəaliyyət göstərməkdir. VPN qurmaq sadə bir proses deyil, buna görə də böyük mənzərəni nəzərə almaq üçün bir neçə dəqiqə vaxt ayırmağa dəyər.

Linux fəaliyyətdə kitab

10.1.1. OpenVPN Server Konfiqurasiyası

Başlamazdan əvvəl sizə faydalı məsləhətlər verəcəyəm. Əgər bunu özünüz edəcəksinizsə (və bunu sizə çox tövsiyə edirəm), çox güman ki, iş masanızda hər biri fərqli bir maşına qoşulmuş bir neçə terminal pəncərəsi ilə işləyəcəksiniz. Bir anda pəncərəyə səhv əmr daxil etməyiniz riski var. Bunun qarşısını almaq üçün siz hostname əmrindən istifadə edərək komanda sətirində göstərilən maşın adını sizə harada olduğunuzu aydın şəkildə bildirən bir şeyə dəyişdirə bilərsiniz. Bunu etdikdən sonra yeni parametrlərin qüvvəyə minməsi üçün serverdən çıxmalı və yenidən daxil olmalısınız. Bu belə görünür:

Linux fəaliyyətdə kitab
Bu yanaşmaya riayət etməklə və işlədiyiniz maşınların hər birinə uyğun adlar verməklə, harada olduğunuzu asanlıqla izləyə bilərsiniz.

Host adından istifadə etdikdən sonra, sonrakı əmrləri yerinə yetirərkən zəhlətökən Host OpenVPN-Serveri həll etmək mümkün olmayan mesajları ilə qarşılaşa bilərsiniz. /etc/hosts faylını müvafiq yeni host adı ilə yeniləmək problemi həll etməlidir.

Serverinizi OpenVPN üçün hazırlayır

OpenVPN-ni serverinizdə quraşdırmaq üçün sizə iki paket lazımdır: openvpn və easy-rsa (şifrələmə açarının yaradılması prosesini idarə etmək üçün). CentOS istifadəçiləri zərurət yaranarsa, əvvəlcə 2-ci Fəsildə etdiyiniz kimi, epel-release repozitoriyasını quraşdırmalıdırlar. Server proqramına girişi sınaqdan keçirmək üçün siz həmçinin Apache veb serverini (Ubuntu-da apache2 və CentOS-da httpd) quraşdıra bilərsiniz.

Serverinizi qurarkən, 22 (SSH) və 1194 (OpenVPN-in defolt portu) istisna olmaqla, bütün portları bloklayan təhlükəsizlik duvarını aktivləşdirməyi tövsiyə edirəm. Bu nümunə ufw-nin Ubuntu-da necə işlədiyini göstərir, lakin əminəm ki, 9-cu Fəsildəki CentOS firewalld proqramını hələ də xatırlayırsınız:

# ufw enable
# ufw allow 22
# ufw allow 1194

Serverdə şəbəkə interfeysləri arasında daxili marşrutlaşdırmanı aktivləşdirmək üçün /etc/sysctl.conf faylında bir sətri (net.ipv4.ip_forward = 1) şərhdən çıxarmalısınız. Bu, uzaqdan gələn müştərilərə qoşulduqdan sonra lazım olduqda onları yönləndirməyə imkan verəcək. Yeni seçimin işləməsi üçün sysctl -p əmrini işlədin:

# nano /etc/sysctl.conf
# sysctl -p

Server mühitiniz artıq tam konfiqurasiya olunub, lakin hazır olmadan əvvəl hələ bir iş görməlisiniz: aşağıdakı addımları tamamlamalısınız (onları daha sonra ətraflı şəkildə əhatə edəcəyik).

  1. Easy-rsa paketi ilə təmin edilmiş skriptlərdən istifadə edərək serverdə açıq açar infrastrukturu (PKI) şifrələmə açarları dəsti yaradın. Əslində, OpenVPN serveri həm də öz sertifikat orqanı (CA) kimi fəaliyyət göstərir.
  2. Müştəri üçün müvafiq açarları hazırlayın
  3. Server üçün server.conf faylını konfiqurasiya edin
  4. OpenVPN müştərinizi qurun
  5. VPN-inizi yoxlayın

Şifrələmə açarlarının yaradılması

Hər şeyi sadə saxlamaq üçün əsas infrastrukturunuzu OpenVPN serverinin işlədiyi eyni maşında qura bilərsiniz. Bununla belə, təhlükəsizlik üzrə ən yaxşı təcrübələr adətən istehsal yerləşdirmələri üçün ayrıca CA serverindən istifadə etməyi təklif edir. OpenVPN-də istifadə üçün şifrələmə açarı resurslarının yaradılması və paylanması prosesi Şəkil 10.2-də təsvir edilmişdir. XNUMX.

Linux fəaliyyətdə kitab
Siz OpenVPN quraşdırdığınız zaman /etc/openvpn/ kataloqu avtomatik olaraq yaradıldı, lakin orada hələ heç nə yoxdur. Openvpn və easy-rsa paketləri konfiqurasiyanız üçün əsas kimi istifadə edə biləcəyiniz nümunə şablon faylları ilə gəlir. Sertifikatlaşdırma prosesinə başlamaq üçün easy-rsa şablon kataloqunu /usr/share/-dən /etc/openvpn-ə köçürün və easy-rsa/ qovluğuna dəyişin:

# cp -r /usr/share/easy-rsa/ /etc/openvpn
$ cd /etc/openvpn/easy-rsa

Easy-rsa qovluğunda indi kifayət qədər skript olacaq. Cədvəldə 10.1 düymələri yaratmaq üçün istifadə edəcəyiniz alətləri sadalayır.

Linux fəaliyyətdə kitab

Yuxarıdakı əməliyyatlar kök imtiyazları tələb edir, ona görə də siz sudo su vasitəsilə root olmalısınız.

İşləyəcəyiniz ilk fayl vars adlanır və açarları yaradan zaman easy-rsa-nın istifadə etdiyi mühit dəyişənlərini ehtiva edir. Artıq mövcud olan standart dəyərlər əvəzinə öz dəyərlərinizdən istifadə etmək üçün faylı redaktə etməlisiniz. Mənim faylım belə görünəcək (Siyahı 10.1).

Siyahı 10.1. Faylın əsas fraqmentləri /etc/openvpn/easy-rsa/vars

export KEY_COUNTRY="CA"
export KEY_PROVINCE="ON"
export KEY_CITY="Toronto"
export KEY_ORG="Bootstrap IT"
export KEY_EMAIL="[email protected]"
export KEY_OU="IT"

Vars faylının işlədilməsi onun dəyərlərini yeni açarlarınızın məzmununa daxil ediləcəyi qabıq mühitinə ötürəcək. Niyə sudo əmri özü işləmir? Çünki ilk addımda vars adlı skripti redaktə edirik və sonra tətbiq edirik. Tətbiq və vars faylının öz dəyərlərini yeni açarlarınızın məzmununa daxil ediləcəyi qabıq mühitinə ötürməsi deməkdir.

Bitməmiş prosesi başa çatdırmaq üçün yeni qabıqdan istifadə edərək faylı yenidən işə saldığınızdan əmin olun. Bu edildikdə, skript /etc/openvpn/easy-rsa/keys/ qovluğundakı hər hansı məzmunu silmək üçün başqa bir skripti, təmiz-hamısını işə salmağı təklif edəcək:

Linux fəaliyyətdə kitab
Təbii ki, növbəti addım, kök sertifikatı yaratmaq üçün pkitool skriptindən istifadə edən build-ca-nın ardınca təmiz bütün skripti işə salmaqdır. Sizdən vars tərəfindən təmin edilən şəxsiyyət parametrlərini təsdiqləməyiniz xahiş olunacaq:

# ./clean-all
# ./build-ca
Generating a 2048 bit RSA private key

Daha sonra build-key-server skripti gəlir. Yeni kök sertifikatı ilə birlikdə eyni pkitool skriptindən istifadə etdiyi üçün açar cütünün yaradılmasını təsdiqləmək üçün eyni sualları görəcəksiniz. Düymələr verdiyiniz arqumentlərə əsasən adlandırılacaq, bu maşında birdən çox VPN işlətməsəniz, nümunədə olduğu kimi adətən server olacaq:

# ./build-key-server server
[...]
Certificate is to be certified until Aug 15 23:52:34 2027 GMT (3650 days)
Sign the certificate? [y/n]:y
1 out of 1 certificate requests certified, commit? [y/n]y
Write out database with 1 new entries
Data Base Updated

OpenVPN, yeni bağlantılar üçün autentifikasiya danışıqlarını aparmaq üçün Diffie-Hellman alqoritmi (Build-dh istifadə edərək) tərəfindən yaradılan parametrlərdən istifadə edir. Burada yaradılmış faylın məxfi olmasına ehtiyac yoxdur, lakin hazırda aktiv olan RSA açarları üçün build-dh skripti ilə yaradılmalıdır. Gələcəkdə yeni RSA açarları yaratsanız, Diffie-Hellman faylını da yeniləməlisiniz:

# ./build-dh

Server tərəfindəki açarlarınız indi /etc/openvpn/easy-rsa/keys/ qovluğuna düşəcək, lakin OpenVPN bunu bilmir. Varsayılan olaraq, OpenVPN açarları /etc/openvpn/ daxilində axtaracaq, ona görə də onları kopyalayın:

# cp /etc/openvpn/easy-rsa/keys/server* /etc/openvpn
# cp /etc/openvpn/easy-rsa/keys/dh2048.pem /etc/openvpn
# cp /etc/openvpn/easy-rsa/keys/ca.crt /etc/openvpn

Müştəri Şifrələmə Açarlarının Hazırlanması

Artıq gördüyünüz kimi, TLS şifrələməsi uyğun gələn cüt açarlardan istifadə edir: biri serverdə, digəri isə uzaq müştəridə quraşdırılır. Bu o deməkdir ki, müştəri açarlarına ehtiyacınız olacaq. Köhnə dostumuz pkitool bunun üçün sizə lazım olan şeydir. Bu misalda, proqramı /etc/openvpn/easy-rsa/ qovluğunda işə saldığımız zaman ona client.crt və client.key adlı faylları yaratmaq üçün müştəri arqumentini ötürürük:

# ./pkitool client

İki müştəri faylı, hələ də açarlar/kataloqda olan orijinal ca.crt faylı ilə birlikdə müştərinizə təhlükəsiz şəkildə ötürülməlidir. Sahiblik və giriş hüquqlarına görə bu o qədər də asan olmaya bilər. Ən sadə yanaşma, mənbə faylın məzmununu (və bu məzmundan başqa heç nəyi) kompüterinizin iş masasında işləyən terminala əl ilə köçürməkdir (mətni seçin, üzərinə sağ klikləyin və menyudan Kopyalayın). Sonra bunu müştərinizə qoşulmuş ikinci terminalda yaratdığınız eyni adlı yeni fayla yapışdırın.

Ancaq hər kəs kəsə və yapışdıra bilər. Bunun əvəzinə, bir idarəçi kimi düşünün, çünki kəsmə/yapışdırma əməliyyatlarının mümkün olduğu GUI-yə həmişə daxil ola bilməyəcəksiniz. Faylları istifadəçinizin ev qovluğuna köçürün (uzaqdan scp əməliyyatı onlara daxil ola bilsin) və sonra uzaq scp əməliyyatını yerinə yetirmək üçün faylların sahibliyini kökdən adi qeyri-root istifadəçiyə dəyişdirmək üçün chown istifadə edin. Bütün fayllarınızın hazırda quraşdırılmış və əlçatan olduğundan əmin olun. Onları bir az sonra müştəriyə daşıyacaqsınız:

# cp /etc/openvpn/easy-rsa/keys/client.key /home/ubuntu/
# cp /etc/openvpn/easy-rsa/keys/ca.crt /home/ubuntu/
# cp /etc/openvpn/easy-rsa/keys/client.crt /home/ubuntu/
# chown ubuntu:ubuntu /home/ubuntu/client.key
# chown ubuntu:ubuntu /home/ubuntu/client.crt
# chown ubuntu:ubuntu /home/ubuntu/ca.crt

Şifrələmə açarlarının tam dəsti işə hazır olduqda, VPN-i necə yaratmaq istədiyinizi serverə bildirməlisiniz. Bu server.conf faylından istifadə etməklə edilir.

Klaviatura vuruşlarının sayının azaldılması

Çox yazı var? Mötərizədə genişlənmə bu altı əmri ikiyə endirməyə kömək edəcək. Əminəm ki, siz bu iki nümunəni öyrənə və nə baş verdiyini anlaya bilərsiniz. Daha da əhəmiyyətlisi, siz bu prinsipləri onlarla və hətta yüzlərlə elementi əhatə edən əməliyyatlara necə tətbiq edəcəyinizi anlaya biləcəksiniz:

# cp /etc/openvpn/easy-rsa/keys/{ca.crt,client.{key,crt}} /home/ubuntu/
# chown ubuntu:ubuntu /home/ubuntu/{ca.crt,client.{key,crt}}

server.conf faylının qurulması

server.conf faylının necə görünəcəyini necə bilmək olar? /usr/share/-dən kopyaladığınız easy-rsa kataloq şablonunu xatırlayırsınız? OpenVPN quraşdırdığınız zaman sizə /etc/openvpn/-ə kopyalaya biləcəyiniz sıxılmış konfiqurasiya şablon faylı qaldı. Şablonun arxivləşdirilməsi faktına əsaslanaraq sizi faydalı alətlə tanış edəcəyəm: zcat.

Faylın mətn məzmununu cat əmrindən istifadə edərək ekrana çap etmək haqqında artıq bilirsiniz, bəs fayl gzip istifadə edərək sıxılırsa nə olacaq? Siz həmişə faylı aça bilərsiniz və sonra pişik onu məmnuniyyətlə çıxaracaq, lakin bu, lazım olandan bir və ya iki addım artıqdır. Bunun əvəzinə, təxmin etdiyiniz kimi, paketdən çıxarılan mətni bir addımda yaddaşa yükləmək üçün zcat əmrini verə bilərsiniz. Aşağıdakı nümunədə mətni ekrana çap etmək əvəzinə onu server.conf adlı yeni fayla yönləndirəcəksiniz:

# zcat 
  /usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz 
  > /etc/openvpn/server.conf
$ cd /etc/openvpn

Faylla birlikdə gələn geniş və faydalı sənədləri bir kənara qoyaq və redaktəni bitirdikdən sonra onun necə görünə biləcəyinə baxaq. Qeyd edək ki, nöqtəli vergül (;) OpenVPN-ə növbəti sətri oxumamağı və ya icra etməməyi bildirir (Siyahı 10.2).

Linux fəaliyyətdə kitab
Bu parametrlərdən bəzilərini nəzərdən keçirək.

  • Varsayılan olaraq, OpenVPN 1194 portunda işləyir. Siz bunu, məsələn, fəaliyyətlərinizi daha da gizlətmək və ya digər aktiv tunellərlə münaqişələrdən qaçmaq üçün dəyişə bilərsiniz. 1194 müştərilərlə minimal koordinasiya tələb etdiyi üçün bunu bu şəkildə etmək yaxşıdır.
  • OpenVPN məlumat ötürmək üçün ya Transmission Control Protocol (TCP) və ya User Datagram Protocol (UDP) istifadə edir. TCP bir az yavaş ola bilər, lakin o, daha etibarlıdır və tunelin hər iki ucunda işləyən proqramlar tərəfindən daha çox başa düşülə bilər.
  • Siz məlumat məzmununu və başqa heç nə daşıyan daha sadə, daha səmərəli IP tunel yaratmaq istədiyiniz zaman dev tun təyin edə bilərsiniz. Digər tərəfdən, Ethernet körpüsü yaradaraq, birdən çox şəbəkə interfeysini (və onların təmsil etdiyi şəbəkələri) birləşdirməlisinizsə, dev tap seçməlisiniz. Bütün bunların nə demək olduğunu başa düşmürsənsə, tun arqumentindən istifadə edin.
  • Növbəti dörd sətir OpenVPN-ə serverdəki üç autentifikasiya faylının və əvvəllər yaratdığınız dh2048 seçim faylının adlarını verir.
  • Server xətti daxil olduqdan sonra müştərilərə IP ünvanlarını təyin etmək üçün istifadə ediləcək diapazonu və alt şəbəkə maskasını təyin edir.
  • Əlavə təkan parametri "marşrut 10.0.3.0 255.255.255.0" uzaq müştərilərə serverin arxasındakı şəxsi alt şəbəkələrə daxil olmaq imkanı verir. Bu işi görmək həm də serverin özündə şəbəkənin qurulmasını tələb edir ki, özəl alt şəbəkə OpenVPN alt şəbəkəsi (10.8.0.0) haqqında bilsin.
  • Port-paylaşımlı localhost 80 xətti sizə 1194-cü portda gələn müştəri trafikini 80-ci portu dinləyən yerli veb serverə yönləndirməyə imkan verir. (VPN-i sınamaq üçün veb serverdən istifadə edəcəksinizsə, bu faydalı olacaq.) Bu yalnız işləyir. sonra tcp protokolu seçildikdə.
  • İstifadəçi heç kim və qrup noqrup xətləri nöqtəli vergülləri (;) silməklə aktivləşdirilməlidir. Uzaq müştəriləri heç kim və heç bir qrup kimi işləməyə məcbur etmək serverdəki sessiyaların imtiyazsız olmasını təmin edir.
  • log bildirir ki, hər dəfə OpenVPN işə salındıqda cari jurnal qeydləri köhnə qeydlərin üzərinə yazılacaq, log-append isə mövcud jurnal faylına yeni qeydlər əlavə edir. Openvpn.log faylının özü /etc/openvpn/ qovluğuna yazılır.

Bundan əlavə, konfiqurasiya faylına müştəri-müştəri dəyəri də əlavə edilir ki, OpenVPN serverinə əlavə olaraq birdən çox müştəri bir-birini görə bilsin. Konfiqurasiyanızdan razısınızsa, OpenVPN serverini işə sala bilərsiniz:

# systemctl start openvpn

OpenVPN və systemd arasındakı əlaqənin dəyişən təbiətinə görə, bəzən xidmətə başlamaq üçün aşağıdakı sintaksis tələb oluna bilər: systemctl start openvpn@server.

Serverinizin şəbəkə interfeyslərini siyahıya almaq üçün ip ünvanını işə salmaq indi tun0 adlı yeni interfeysə keçid çıxarmalıdır. OpenVPN onu gələn müştərilərə xidmət etmək üçün yaradacaq:

$ ip addr
[...]
4: tun0: mtu 1500 qdisc [...]
      link/none
      inet 10.8.0.1 peer 10.8.0.2/32 scope global tun0
          valid_lft forever preferred_lft forever

Hər şey tam işləməyə başlamazdan əvvəl serveri yenidən yükləməli ola bilərsiniz. Növbəti dayanacaq müştəri kompüteridir.

10.1.2. OpenVPN müştərisinin konfiqurasiyası

Ənənəvi olaraq tunellər ən azı iki çıxışla tikilir (əks halda biz onları mağara adlandırardıq). Serverdə düzgün konfiqurasiya edilmiş OpenVPN trafiki bir tərəfdən tunelin içərisinə və xaricinə yönəldir. Ancaq müştəri tərəfində, yəni tunelin digər ucunda işləyən bəzi proqram təminatına da ehtiyacınız olacaq.

Bu bölmədə mən bir növ Linux kompüterinin OpenVPN müştərisi kimi fəaliyyət göstərməsi üçün əl ilə qurulmasına diqqət yetirəcəyəm. Lakin bu, bu fürsəti əldə etməyin yeganə yolu deyil. OpenVPN Windows və ya macOS ilə işləyən masaüstü kompüterlərdə və noutbuklarda, həmçinin Android və iOS smartfon və planşetlərində quraşdırıla və istifadə edilə bilən müştəri proqramlarını dəstəkləyir. Ətraflı məlumat üçün openvpn.net-ə baxın.

OpenVPN paketi serverdə quraşdırıldığı kimi müştəri maşınında quraşdırılmalıdır, baxmayaraq ki, burada asan-rsa-ya ehtiyac yoxdur, çünki istifadə etdiyiniz açarlar artıq mövcuddur. Siz client.conf şablon faylını yeni yaratdığınız /etc/openvpn/ qovluğuna köçürməlisiniz. Bu dəfə fayl sıxışdırılmayacaq, ona görə də adi cp əmri işi yaxşı görəcək:

# apt install openvpn
# cp /usr/share/doc/openvpn/examples/sample-config-files/client.conf 
  /etc/openvpn/

Client.conf faylınızdakı parametrlərin çoxu özünü izah edəcək: onlar serverdəki dəyərlərə uyğun olmalıdır. Aşağıdakı nümunə fayldan göründüyü kimi, unikal parametr müştəriyə serverin IP ünvanını bildirən uzaqdan 192.168.1.23 1194-dür. Yenə də əmin olun ki, bu sizin server ünvanınızdır. Siz həmçinin mümkün adam-in-the-middle hücumunun qarşısını almaq üçün müştəri kompüterini server sertifikatının həqiqiliyini yoxlamağa məcbur etməlisiniz. Bunun bir yolu remote-cert-tls server xəttini əlavə etməkdir (Siyahı 10.3).

Linux fəaliyyətdə kitab
İndi /etc/openvpn/ qovluğuna gedə və sertifikat açarlarını serverdən çıxara bilərsiniz. Nümunədə serverin IP ünvanını və ya domen adını dəyərlərinizlə əvəz edin:

Linux fəaliyyətdə kitab
Siz müştəridə OpenVPN-i işə salana qədər maraqlı heç nə baş verməyəcək. Bir neçə arqument ötürməli olduğunuz üçün bunu əmr satırından edəcəksiniz. --tls-client arqumenti OpenVPN-ə müştəri kimi çıxış edəcəyinizi və TLS şifrələməsi ilə qoşulacağınızı bildirir və --config konfiqurasiya faylınıza işarə edir:

# openvpn --tls-client --config /etc/openvpn/client.conf

Düzgün qoşulduğunuzdan əmin olmaq üçün əmr çıxışını diqqətlə oxuyun. İlk dəfə bir şey səhv olarsa, bu, server və müştəri konfiqurasiya faylları arasında parametrlərdə uyğunsuzluq və ya şəbəkə bağlantısı/firewall problemi ilə bağlı ola bilər. Problemləri həll etmək üçün bəzi məsləhətlər.

  • Müştəridə OpenVPN əməliyyatının çıxışını diqqətlə oxuyun. O, tez-tez tam olaraq nəyin edilə bilməyəcəyi və nəyə görə dəyərli məsləhətləri ehtiva edir.
  • Serverdəki /etc/openvpn/ qovluğunda openvpn.log və openvpn-status.log fayllarında səhv mesajlarını yoxlayın.
  • OpenVPN ilə əlaqəli və vaxtı təyin edilmiş mesajlar üçün server və müştəridəki sistem qeydlərini yoxlayın. (journalctl -ce ən son qeydləri göstərəcək.)
  • Server və müştəri arasında aktiv şəbəkə bağlantınız olduğundan əmin olun (bu barədə daha ətraflı Fəsil 14-də).

Müəllif haqqında

David Klinton - sistem administratoru, müəllim və yazıçı. O, Linux sistemləri, bulud hesablamaları (xüsusilə AWS) və Docker kimi konteyner texnologiyaları da daxil olmaqla bir çox mühüm texniki fənlər üçün tədris materiallarını idarə edib, onlar haqqında yazıb və yaradıb. O, “Amazon Veb Xidmətlərini Nahar Ayında Öyrən” kitabını yazdı (Manning, 2017). Onun video təlim kurslarının bir çoxunu Pluralsight.com saytında tapa bilərsiniz və onun digər kitablarına (Linux administrasiyası və serverin virtuallaşdırılmasına dair) keçidləri burada mövcuddur. bootstrap-it.com.

» Kitab haqqında ətraflı məlumat üçün müraciət edin nəşriyyat saytı
» Mündəricat
» Çıxarış

Khabrozhiteli üçün kuponda 25% endirim - Linux
Kitabın kağız versiyasının ödənişi edildikdən sonra elektron kitab e-poçta göndərilir.

Mənbə: www.habr.com

Добавить комментарий