Mengatur saluran antara pejabat menggunakan OpenVPN dengan perlindungan kata laluan tambahan

OpenVPN ialah salah satu pilihan VPN (rangkaian persendirian maya atau rangkaian maya persendirian) yang membenarkan penghantaran data melalui saluran yang disulitkan khas. Dengan cara ini, anda boleh menyambungkan dua komputer atau membina rangkaian berpusat dengan pelayan dan beberapa pelanggan. Dalam artikel ini kita akan belajar cara membuat pelayan sedemikian dan mengkonfigurasinya.

Seperti yang dinyatakan di atas, dengan bantuan teknologi yang dimaksudkan, kami boleh menghantar maklumat melalui saluran komunikasi yang selamat. Ini boleh jadi perkongsian fail atau akses Internet selamat melalui pelayan yang berfungsi sebagai get laluan kongsi. Untuk menciptanya, kami tidak memerlukan peralatan tambahan atau pengetahuan khusus - semuanya dilakukan pada komputer yang dirancang untuk digunakan sebagai pelayan VPN.

Untuk kerja selanjutnya, ia juga perlu untuk mengkonfigurasi bahagian klien pada mesin pengguna rangkaian. Semua kerja adalah untuk mencipta kunci dan sijil, yang kemudiannya dipindahkan kepada pelanggan. Fail ini membolehkan anda mendapatkan alamat IP apabila menyambung ke pelayan dan mencipta saluran yang disulitkan yang disebutkan di atas. Semua maklumat yang dihantar melaluinya hanya boleh dibaca jika kuncinya tersedia. Ciri ini boleh meningkatkan keselamatan dengan ketara dan memastikan keselamatan data.

Memasang OpenVPN pada mesin pelayan

Pemasangan adalah prosedur standard dengan beberapa nuansa, yang akan kami bincangkan dengan lebih terperinci.


Menyediakan bahagian pelayan

Anda harus berhati-hati sebaik mungkin apabila melakukan langkah-langkah berikut. Sebarang ralat akan membawa kepada ketidakupayaan pelayan. Prasyarat lain ialah akaun anda mesti mempunyai hak pentadbir.

  1. Jom ke katalog "mudah-rsa", yang dalam kes kami terletak di

    C:\OpenVPN\easy-rsa

    Mencari fail vars.bat.sample.

    Namakan semula kepada vars.bat(buang perkataan "sampel" bersama-sama dengan tempoh).

    Buka fail ini dalam editor. Ini penting, kerana pad nota inilah yang membolehkan anda mengedit dan menyimpan kod dengan betul, yang membantu mengelakkan ralat semasa melaksanakannya.

  2. Pertama sekali, kami memadamkan semua komen yang diserlahkan dalam warna hijau - ia hanya akan mengganggu kami. Kami mendapat perkara berikut:

  3. Seterusnya, tukar laluan ke folder "mudah-rsa" kepada yang kami tentukan semasa pemasangan. Dalam kes ini, kami hanya memadam pembolehubah %Fail program% dan tukar kepada C:.

  4. Kami membiarkan empat parameter seterusnya tidak berubah.

  5. Baris yang tinggal diisi secara rawak. Contoh dalam tangkapan skrin.

  6. Simpan fail.

  7. Anda juga perlu mengedit fail berikut:
    • build-ca.bat
    • build-dh.bat
    • bina-kunci.bat
    • bina-kunci-laluan.bat
    • bina-kunci-pkcs12.bat
    • build-key-server.bat

    Mereka perlu menukar pasukan

    ke laluan mutlak ke fail yang sepadan openssl.exe. Jangan lupa simpan perubahan.

  8. Sekarang buka folder "mudah-rsa", pengapit SHIFT dan klik kanan pada ruang kosong (bukan pada fail). Dalam menu konteks, pilih item "Buka tetingkap arahan".

    Akan bermula "Barisan arahan" dengan peralihan ke direktori sasaran sudah selesai.

  9. Masukkan arahan di bawah dan klik MASUK.

  10. Seterusnya, kami melancarkan fail kelompok lain.

  11. Kami mengulangi arahan pertama.

  12. Langkah seterusnya ialah membuat fail yang diperlukan. Untuk melakukan ini kami menggunakan arahan

    Selepas pelaksanaan, sistem akan menggesa anda untuk mengesahkan data yang kami masukkan ke dalam fail vars.bat. Hanya tekan beberapa kali MASUK sehingga baris asal muncul.

  13. Buat kunci DH dengan menjalankan fail

  14. Kami sedang menyediakan sijil untuk bahagian pelayan. Terdapat satu perkara penting di sini. Ia perlu diberi nama yang kami tulis vars.bat dalam barisan "KEY_NAME". Dalam contoh kita ini Ketulan. Perintahnya kelihatan seperti ini:

    build-key-server.bat Lumpics

    Di sini anda juga perlu mengesahkan data menggunakan kunci MASUK, dan juga masukkan huruf itu dua kali "y"(ya), jika perlu (lihat tangkapan skrin). Anda boleh menutup baris arahan.

  15. Dalam katalog kami "mudah-rsa" folder baru telah muncul dengan nama "kunci".

  16. Kandungannya mesti disalin dan ditampal ke dalam folder "ssl", yang mesti dibuat dalam direktori akar program.

    Lihat folder selepas menampal fail yang disalin:

  17. Sekarang mari pergi ke katalog

    C:\OpenVPN\config

    Buat dokumen teks di sini (RMB – Baharu – Dokumen Teks), namakan semula kepada pelayan.ovpn dan bukanya dalam Notepad++. Kami masukkan kod berikut:

    pelabuhan 443
    proto udp
    lagu dev
    dev-node "VPN Lumpics"
    dh C:\\OpenVPN\\ssl\\dh2048.pem
    ca C:\\OpenVPN\\ssl\\ca.crt
    sijil C:\\OpenVPN\\ssl\\Lumpics.crt
    kunci C:\\OpenVPN\\ssl\\Lumpics.key
    pelayan 172.16.10.0 255.255.255.0
    pelanggan maksimum 32
    keepalive 10 120
    pelanggan ke pelanggan
    comp-lzo
    gigih-kunci
    gigih-tun
    sifir DES-CBC
    status C:\\OpenVPN\\log\\status.log
    log C:\\OpenVPN\\log\\openvpn.log
    kata kerja 4
    bisu 20

    Sila ambil perhatian bahawa nama sijil dan kunci mesti sepadan dengan nama yang terdapat dalam folder "ssl".

  18. Seterusnya kita buka "Panel kawalan" dan pergi ke "Pusat Kawalan Rangkaian".

  19. Klik pada pautan "Tukar tetapan penyesuai".

  20. Di sini kita perlu mencari sambungan yang dibuat "TAP-Windows Adapter V9". Ini boleh dilakukan dengan mengklik kanan pada sambungan dan pergi ke sifatnya.

  21. Namakan semula kepada "Ketulan VPN" tanpa petikan. Nama ini mesti sepadan dengan parameter "dev-node" dalam fail pelayan.ovpn.

  22. Peringkat terakhir adalah memulakan perkhidmatan. Tekan kombinasi kekunci Win+R, masukkan baris di bawah dan klik MASUK.

  23. Kami mencari perkhidmatan dengan nama "OpenVpnService", klik kanan dan pergi ke sifatnya.

  24. Tukar jenis permulaan kepada "Secara automatik", mulakan perkhidmatan dan klik "Mohon".

  25. Jika kami melakukan semuanya dengan betul, maka salib merah akan hilang berhampiran penyesuai. Ini bermakna sambungan sedia untuk digunakan.

Menyediakan bahagian pelanggan

Sebelum anda mula menyediakan klien, anda perlu melakukan beberapa tindakan pada mesin pelayan - menjana kunci dan sijil untuk menyediakan sambungan.


Kerja yang perlu dilakukan pada mesin pelanggan:


Ini melengkapkan konfigurasi pelayan dan klien OpenVPN.

Kesimpulan

Mengatur rangkaian VPN anda sendiri akan membolehkan anda melindungi maklumat yang dihantar sebanyak mungkin, serta menjadikan pelayaran Internet lebih selamat. Perkara utama adalah untuk lebih berhati-hati apabila menyediakan bahagian pelayan dan klien; dengan tindakan yang betul, anda akan dapat menikmati semua faedah rangkaian maya peribadi.

— pelaksanaan percuma teknologi Rangkaian Peribadi Maya (VPN) dengan kod sumber terbuka untuk mencipta saluran titik-ke-titik atau pelayan-pelayan yang disulitkan antara komputer. Ia membolehkan anda mewujudkan sambungan antara komputer di belakang tembok api NAT tanpa perlu menukar tetapannya. OpenVPN dicipta oleh James Yonan dan dilesenkan di bawah GNU GPL.

Dalam artikel ini, dalam bentuk yang mudah dan boleh diakses, kami akan cuba memberitahu anda cara menyediakan pelayan OpenVPN anda sendiri. Kami tidak berhasrat bahawa pada akhir membaca artikel ini anda akan memahami sepenuhnya semua prinsip "cara ia berfungsi" atau memahami selok-belok rangkaian, tetapi kami mahu bahawa sebagai hasilnya anda akan dapat menyediakan pelayan OpenVPN daripada calar. Oleh itu, anda boleh menganggap artikel ini sebagai panduan langkah demi langkah untuk pengguna. Sebenarnya, terdapat banyak dokumentasi dan manual di Internet yang didedikasikan untuk penggunaan OpenVPN, tetapi ia sama ada ditujukan kepada pengguna terlatih atau pentadbir sistem, atau sistem Linux digunakan sebagai contoh untuk demonstrasi. Kami akan pergi ke arah lain dan memberitahu anda cara menyediakan OpenVPN pada komputer pengguna biasa, i.e. stesen kerja dengan OS Windows dipasang. Mengapa anda mungkin memerlukan maklumat ini? Nah, sebagai contoh, anda ingin bermain permainan dengan rakan yang tidak menyokong bermain melalui Internet, tetapi hanya melalui rangkaian tempatan, atau, sebagai contoh, anda terlibat dalam sokongan pengguna jauh, tetapi atas sebab tertentu anda tidak mahu untuk menggunakan perisian seperti TeamViewer atau Ammyy Admin , kerana Anda tidak mahu pelayan pihak ketiga terlibat dalam proses pemindahan data anda atau mewujudkan sambungan. Walau apa pun, pengalaman praktikal dalam menganjurkan anda sendiri rangkaian peribadi maya(VPN) akan berguna untuk anda.

Penalaan Pelayan

Jadi, mari kita mulakan. Dalam contoh kami, mesin dengan Windows XP Professional SP3 (x86) dipasang akan bertindak sebagai pelayan OpenVPN, dan beberapa mesin dengan Windows 7 x64 dan Windows 7 x86 akan berfungsi sebagai pelanggan (walaupun sebenarnya skema yang diterangkan dalam artikel akan berfungsi pada konfigurasi lain). Mari kita anggap bahawa PC yang akan bertindak sebagai pelayan OpenVPN mempunyai alamat IP statik putih di Internet (jika alamat IP yang diberikan oleh pembekal anda adalah dinamik, maka anda perlu mendaftar dengan DynDNS atau Tiada IP), jika syarat ini dipenuhi, tetapi PC terletak di belakang penghala atau tembok api perkakasan, anda perlu memajukan port yang diperlukan (kami akan membincangkan perkara ini di bawah, apabila kami bergerak terus ke menyediakan pelayan), jika anda mempunyai tidak tahu apa itu dan untuk apa ia digunakan, kami mengesyorkan agar anda membaca artikel di laman web kami.

  1. Kami pergi ke tapak web rasmi projek OpenVPN, ke bahagian Muat Turun -. Muat turun dari sana pengedaran yang sepadan dengan keluaran OS Windows anda (Pemasang 32-bit atau 64-bit). Pada masa menulis artikel ini, pengedaran openvpn-install-2.3_rc1-I002-i686.exe tersedia untuk OS 32-bit dan openvpn-install-2.3_rc1-I002-x86_64.exe untuk OS 64-bit, masing-masing . Kerana Kami telah memutuskan bahawa kami akan memasang pelayan pada WinXP x86, i.e. pada OS 32-bit, kemudian muat turun pengedaran dari pautan pertama.
  2. Lancarkan pemasang yang dimuat turun. Pada peringkat di mana laluan pemasangan dipilih, masukkan C:\OpenVPN(lihat tangkapan skrin), ini akan memudahkan kami membuat persediaan pada masa hadapan: Kemudian klik “Seterusnya” sehingga pemasangan selesai. Jika semasa proses pemasangan, pada peringkat memilih komponen untuk dipasang, anda mempunyai "tetingkap kosong", contohnya, seperti ini:
    Kemudian, nampaknya, anda memuat turun pengedaran "salah", dalam hal ini cuba muat turun versi keluaran terkini openvpn-2.2.2-install.exe (ia dipasang pada kedua-dua sistem x86 dan x64). Apabila dipasang dengan betul, tetingkap pemilihan komponen sepatutnya kelihatan seperti ini:
    Semua kotak semak di dalamnya ditandakan secara lalai apabila dipasang, tiada apa-apa tambahan yang perlu diubah. Jika pemasangan berjaya, maka dalam Panel Kawalan -> Sambungan Rangkaian (atau, jika anda memasang pelayan pada Windows 7 atau Windows Vista, dalam Rangkaian dan Pusat Perkongsian -> Tukar tetapan penyesuai) anda harus melihat TAP-Win32 Adapter V9. yang akan dipanggil "Sambungan Kawasan Setempat X" (X ialah nombor yang diberikan secara automatik oleh sistem):
    Statusnya ialah "Kabel rangkaian tidak disambungkan", kerana Kami belum mengkonfigurasi pelayan kami lagi.
  3. Kami mencipta subfolder SSL dalam folder OpenVPN; kunci dan sijil yang dikeluarkan oleh pelayan akan disimpan di dalamnya. Seterusnya, lancarkan notepad dan salin teks berikut ke dalamnya: #dev tun dev tap #dev-node "VPN" proto tcp-server #proto udp port 7777 tls-server server 10.10.10.0 255.255.255.0 comp-lzo # route-method exe # laluan untuk pelayan melihat rangkaian di belakang klien # laluan 192.168.x.0 255.255.255.0 10.10.10.x # laluan ditambahkan pada jadual penghalaan setiap pelanggan untuk melihat rangkaian di belakang pelayan # tekan "laluan 192.168.x .0 255.255.255.0 " # membenarkan klien vpn untuk melihat antara satu sama lain, jika tidak semua klien vpn akan melihat hanya direktori pelayan klien-ke-klien # dengan penerangan tentang konfigurasi setiap klien klien-config-dir C:\\OpenVPN\ \config\\ ccd # fail yang menerangkan rangkaian antara klien dan pelayan ifconfig-pool-persist C:\\OpenVPN\\config\\ccd\\ipp.txt # laluan untuk kunci pelayan dan sijil dh C:\\OpenVPN \\ssl\\dh1024 .pem ca C:\\OpenVPN\\ssl\\ca.crt sijil C:\\OpenVPN\\ssl\\Server.crt key C:\\OpenVPN\\ssl\\Server.key #perist-key tls- auth C:\\OpenVPN\\ssl\\ta.key 0 tun-mtu 1500 tun-mtu-extra 32 mssfix 1450 keepalive 10 120 status C:\\OpenVPN\\log\\openvpn-status .log log C:\ \OpenVPN\\log\\openvpn.log kata kerja 3 Kami akan membincangkan parameter yang diterangkan di sini sedikit kemudian. Kemudian kami menyimpannya ke dalam fail C:\OpenVPN\Config\Server.ovpn, sila ambil perhatian bahawa fail mesti mempunyai sambungan .ovpn, untuk ini, pilihan dalam dialog simpan hendaklah betul-betul seperti yang ditunjukkan dalam gambar:
    Jika anda menjalankan Windows 7 / Windows Vista dan Notepad tidak membenarkan anda menyimpan fail Server.ovpn ke folder C:\OpenVPN\Config\, yang bermaksud anda perlu menjalankannya dengan hak pentadbir. Untuk melakukan ini, klik kanan pada pintasan Notepad dalam menu Mula dan pilih "Jalankan sebagai pentadbir": Sekarang kita juga akan membuat fail menggunakan notepad C:\OpenVPN\easy-rsa\vars.bat, salin teks berikut ke dalamnya: @echo off set path=%path%;c:\OpenVPN\bin set HOME=c:\OpenVPN\easy-rsa set KEY_CONFIG=openssl.cnf set KEY_DIR=c:\OpenVPN\ssl set KEY_SIZE=1024 set KEY_COUNTRY=RU set KEY_PROVINCE=Kaluga set KEY_CITY=Kaluga set KEY_ORG=CompKaluga set KEY_EMAIL=decker@site Dan juga fail C:\OpenVPN\easy-rsa\openssl.cnf : # # OpenSSL contoh fail konfigurasi. # Ini kebanyakannya digunakan untuk penjanaan permintaan sijil. # # Takrifan ini menghentikan baris berikut tercekik jika HOME tidak # ditakrifkan. HOME = . RANDFILE = $ENV::HOME/.rnd # Maklumat PENGENAL OBJEK Tambahan: #oid_file = $ENV::HOME/.oid oid_section = new_oids # Untuk menggunakan fail konfigurasi ini dengan pilihan "-extfile" utiliti # "openssl x509", namakan di sini bahagian yang mengandungi sambungan # X.509v3 untuk digunakan: # extensions = # (Sebagai alternatif, gunakan fail konfigurasi yang hanya mempunyai # Sambungan X.509v3 dalam bahagian [= lalai] utamanya.) [ new_oids ] # Kami boleh menambah OID baharu di sini untuk digunakan oleh "ca" dan "req". # Tambah OID mudah seperti ini: # testoid1=1.2. 3.4 # Atau gunakan penggantian fail konfigurasi seperti ini: # testoid2=$(testoid1).5.6 ################################ ###################################### [ ca ] default_ca = CA_default # Bahagian ca lalai ## #################################################### ################ [ CA_default ] dir = $ENV::KEY_DIR # Di mana segala-galanya disimpan sijil = $dir # Di mana sijil yang dikeluarkan disimpan crl_dir = $dir # Di mana dikeluarkan crl disimpan pangkalan data = $dir/index.txt # fail indeks pangkalan data. new_certs_dir = $dir # tempat lalai untuk sijil baharu. sijil = $dir/ca.crt # Siri sijil CA = $dir/siri # Nombor siri semasa crl = $dir/crl.pem # Kunci_peribadi CRL semasa = $dir/ca.key # Kunci persendirian RANDFILE = $ dir/.rand # fail nombor rawak peribadi x509_extensions = usr_cert # Sambungan untuk ditambahkan pada sijil # Sambungan untuk ditambahkan pada CRL. Nota: Netscape communicator tercekik pada V2 CRL # jadi ini diulas secara lalai untuk meninggalkan V1 CRL. # crl_extensions = crl_ext default_days = 3650 # berapa lama untuk memperakui default_crl_days= 30 # berapa lama sebelum CRL default_md berikutnya = md5 # yang mana md untuk digunakan. simpan = tidak # terus lulus pesanan DN # Beberapa cara perbezaan untuk menentukan kesamaan permintaan akan kelihatan # Untuk jenis CA, atribut yang disenaraikan mestilah sama dan medan pilihan # dan dibekalkan hanyalah:-) policy = policy_match # Untuk dasar CA [ policy_match ] countryName = match stateOrProvinceName = match organizationName = match organizationalUnitName = optional commonName = dibekalkan emailAddress = pilihan # Untuk dasar "apa-apa" # Pada masa ini, anda mesti menyenaraikan semua "objek" # jenis yang boleh diterima . [ policy_anything ] countryName = optional stateOrProvinceName = optional localityName = optional organizationName = optional organizationalUnitName = optional commonName = dibekalkan emailAddress = pilihan ############################ ############################################## [ req ] default_bits = $ENV : :KEY_SIZE default_keyfile = privkey.pem distinguished_name = req_distinguished_name attributes = req_attributes x509_extensions = v3_ca # Sambungan untuk ditambahkan pada sijil yang ditandatangani sendiri # Kata laluan untuk kunci persendirian jika tidak ada ia akan digesa untuk # input_password = rahsia # Output_password menetapkan topeng untuk jenis rentetan yang dibenarkan. Terdapat beberapa pilihan. # lalai: PrintableString, T61String, BMPString. # pkix: PrintableString, BMPString. # utf8only: hanya UTF8Strings. # nombstr: PrintableString, T61String (tiada BMPStrings atau UTF8String). # MASK:XXXX nilai topeng literal. # AMARAN: versi semasa Netscape ranap pada BMPStrings atau UTF8Strings # jadi gunakan pilihan ini dengan berhati-hati! string_mask = nombstr # req_extensions = v3_req # Sambungan untuk ditambahkan pada permintaan sijil [ req_distinguished_name ] countryName = Country Name (2 letter code) countryName_default = $ENV::KEY_COUNTRY countryName_min = 2 countryName_max = 2 stateOrProvinceName = 2 stateOrProvinceName = 2 stateOrProvinceName ) stateOrProvinceName_default = $ENV::KEY_PROVINCE localityName = Nama Lokaliti (cth, bandar) localityName_default = $ENV::KEY_CITY 0.organizationName = Nama Organisasi (cth, syarikat) 0.organizationName_default = $ENV::KEY_ORG #we can do this but ia tidak diperlukan seperti biasa:-) #1.organizationName = Nama Organisasi Kedua (cth, syarikat) #1.organizationName_default = World Wide Web Pty Ltd organizationalUnitName = Nama Unit Organisasi (cth, bahagian) #organizationalUnitName_default = commonName = Nama Biasa (cth. , nama anda atau nama hos pelayan anda) commonName_max = 64 emailAddress = Alamat E-mel emailAddress_default = $ENV::KEY_EMAIL emailAddress_max = 40 # SET-ex3 = SET nombor sambungan 3 [ req_attributes ] challengeKata Laluan = Kata laluan challengePassword_min = 4 challengePass20word_min = 4 challengePass20word_maks Nama syarikat pilihan [ usr_cert ] # Sambungan ini ditambahkan apabila "ca" menandatangani permintaan. # Ini bertentangan dengan garis panduan PKIX tetapi sesetengah CA melakukannya dan sesetengah perisian # memerlukan ini untuk mengelakkan tafsiran sijil pengguna akhir sebagai CA. basicConstraints=CA:FALSE # Berikut ialah beberapa contoh penggunaan nsCertType. Jika ia ditinggalkan # sijil boleh digunakan untuk apa-apa *kecuali* menandatangani objek. # Ini OK untuk pelayan SSL. # nsCertType = pelayan # Untuk sijil menandatangani objek ini akan digunakan. # nsCertType = objsign # Untuk kegunaan pelanggan biasa ini adalah tipikal # nsCertType = klien, e-mel # dan untuk semua perkara termasuk tandatangan objek: # nsCertType = klien, e-mel, objsign # Ini adalah tipikal dalam keyUsage untuk sijil klien. # keyUsage = nonRepudiation, digitalSignature, keyEncipherment # Ini akan dipaparkan dalam kotak senarai ulasan Netscape. nsComment = "OpenSSL Generated Certificate" # Pengesyoran PKIX tidak berbahaya jika disertakan dalam semua sijil. subjectKeyIdentifier=hash authorityKeyIdentifier=keyid,issuer:always # Bahan ini untuk subjectAltName dan issuerAltname. # Import alamat e-mel. # subjectAltName=email:copy # Copy subject details # issuerAltName=issuer:copy #nsCaRevocationUrl = http://www.domain.dom/ca-crl.pem #nsBaseUrl #nsRevocationUrl #nsRenewalUrl #nsCaPolicyUrl #nsSslServerName [ pelayan ADDED ] # JY -- Buat sijil dengan nsCertType ditetapkan kepada "server" basicConstraints=CA:FALSE nsCertType = server nsComment = "OpenSSL Generated Server Certificate" subjectKeyIdentifier=hash authorityKeyIdentifier=keyid,issuer:always [ v3_req ] # Permintaan tambahan untuk menambah sijil = CA:FALSE keyUsage = nonRepudiation, digitalSignature, keyEncipherment [ v3_ca ] # Sambungan untuk pengesyoran CA # PKIX biasa. subjectKeyIdentifier=hash authorityKeyIdentifier=keyid:always,issuer:always # Inilah yang dicadangkan PKIX tetapi sesetengah perisian yang rosak tercekik pada # sambungan kritikal. #basicConstraints = critical,CA:true # Jadi kita lakukan ini sebaliknya. basicConstraints = CA:true # Penggunaan utama: ini adalah tipikal untuk sijil CA. Namun memandangkan ia akan # menghalang ia digunakan sebagai sijil ujian yang ditandatangani sendiri, sebaiknya # ditinggalkan secara lalai. # keyUsage = cRLSign, keyCertSign # Sesetengah mungkin mahu ini juga # nsCertType = sslCA, emailCA # Sertakan alamat e-mel dalam nama alt subjek: cadangan PKIX lain # subjectAltName=email:copy # Salin butiran pengeluar # issuerAltName=issuer:copy # DER hex encoding sambungan: berhati-hati pakar sahaja! # obj=DER:02:03 # Di mana "obj" ialah objek standard atau tambahan # Anda juga boleh mengatasi sambungan yang disokong: # basicConstraints= critical, DER:30:03:01:01:FF [ crl_ext ] # Sambungan CRL . # Hanya issuerAltName dan authorityKeyIdentifier yang masuk akal dalam CRL. # issuerAltName=issuer:copy authorityKeyIdentifier=keyid:always,issuer:always Tahniah! Anda baru sahaja mencipta fail konfigurasi asas untuk pelayan anda. Mari kita teruskan menyediakannya.
  4. Untuk mengkonfigurasi pelayan selanjutnya, kami memerlukan beberapa kemahiran baris arahan. Pertama sekali, mari kita fikirkan bagaimana untuk melancarkannya? Terdapat beberapa cara, contohnya, klik Mula -> Jalankan (atau gabungan butang Win+R) pada papan kekunci dan masukkan dalam medan yang muncul cmd dan klik OK. Walau bagaimanapun, pengguna Windows 7 / Windows Vista perlu menjalankan konsol dengan hak pentadbir; cara paling mudah untuk melakukan ini ialah membuat pintasan yang sepadan pada desktop. Klik kanan pada mana-mana ruang kosong pada desktop dan pilih "Buat pintasan"; dalam medan "lokasi objek", hanya nyatakan tiga huruf - cmd dan panggil pintasan cmd, atau baris arahan. Seterusnya, pengguna Windows XP hanya menjalankannya, dan pengguna Windows Vista dan Windows 7 menjalankannya sebagai pentadbir, seperti yang dilakukan di atas dengan Notepad.
  5. Seterusnya, kami memasukkan baris secara berurutan dalam konsol: cd C:\OpenVPN\easy-rsa vars clean-all Pada masa yang sama, ia sepatutnya kelihatan seperti ini pada skrin:
    Seterusnya, tanpa menutup tetingkap ini, masukkan arahan penjanaan kunci secara berurutan: openvpn --genkey --secret %KEY_DIR%\ta.key build-dh build-ca Perintah terakhir (build-ca) akan mencipta sijil dan pihak berkuasa sijil (CA), dalam proses itu, bagaimanapun, dia akan bertanya kepada anda beberapa soalan, yang mesti dijawab secara lalai dengan menekan butang Enter:
    Sekarang mari kita cipta kunci pelayan: pelayan bina-kunci-pelayan Sila ambil perhatian bahawa hujah kedua dalam arahan ialah nama kunci (pelayan), anda mesti memasukkan nama yang sama semasa menjawab soalan Nama Biasa (cth, nama anda atau nama hos pelayan anda), baki soalan boleh dijawab secara lalai dengan menekan butang Enter. Jika anda telah melakukan semuanya dengan betul, arahan akan menawarkan untuk menandatangani sijil dan mengesahkan permintaan, kedua-dua soalan mesti dijawab Y(lihat tangkapan skrin):
    Jika anda melakukan semuanya dengan betul, gambar anda akan sama dengan tangkapan skrin, dan baris terakhir output arahan akan mengandungi mesej tentang penambahan satu rekod yang berjaya ke pangkalan data.
  6. Selepas itu, pergi ke snap-in "Perkhidmatan dan Aplikasi" konsol pengurusan, anda boleh melakukan ini dengan mengklik kanan pada pintasan Komputer (Komputer Saya) dan memilih item menu Urus, atau dengan menaip arahan dalam konsol perkhidmatan.msc, cari perkhidmatan "Perkhidmatan OpenVPN" di sana dan pilih "Mula" daripada menu klik kanan. Jika anda melakukan semuanya dengan betul sebelum ini, perkhidmatan akan masuk ke keadaan "Berjalan". Kini anda boleh menukar jenis permulaannya kepada "Auto", bukannya "Manual", yang terdapat di sana secara lalai. Hasilnya sepatutnya kelihatan seperti ini:
    Ini melengkapkan konfigurasi pelayan itu sendiri, yang tinggal hanyalah mengkonfigurasi pelanggan. Untuk melakukan ini, anda juga perlu mengeluarkannya kunci dan sijil, ini dilakukan hampir sama dengan pelayan, hanya untuk pelayan kami menggunakan arahan bina-kunci-pelayan, dan untuk pelanggan kami akan menggunakan arahan bina-kunci.
  7. Andaikan kita mempunyai dua pelanggan, mari kita panggil mereka klien1 dan klien2. Mari kita laksanakan arahan secara berurutan: bina-kunci klien1 bina-kunci klien2 Dalam kes ini, apabila ditanya Nama Biasa (cth, nama anda atau nama hos pelayan anda), anda juga mesti menunjukkan nama klien yang digunakan dalam arahan, iaitu jika anda memasukkan build- command key client1, kemudian kepada soalan Common Name kami menjawab client1, jika client2, kemudian client2. Soalan selebihnya boleh dijawab dengan menekan Enter, pada akhirnya anda juga akan diminta untuk menandatangani sijil dan mengesahkan permintaan, kami jawab kedua-dua mata dengan afirmatif - Y. Sekarang kami memulakan semula perkhidmatan OpenVPN untuk perubahan berkuat kuasa, dalam snap-in pengurusan perkhidmatan, dalam menu klik kanan "Mulakan Semula", atau dalam konsol yang kami masukkan secara konsisten: net stop openvpnservice net start openvpnservice
  8. Sekarang jika kita pergi ke folder, kita akan melihat fail kunci dan sijil yang kami hasilkan di sana:
    Setiap pelanggan memerlukan failnya: ca.crt .crt .kunci ta.kunci I.e. untuk klien 1 kami mengumpul fail ca.crt, client1.crt, client1.key dan ta.key, untuk klien 2 - ca.crt, client2.crt, client2.key dan ta.key, masing-masing, dsb. Dan kami menghantarnya kepadanya dalam satu cara atau yang lain (bermaksud melalui mel, dalam arkib dengan kata laluan, atau pada pemacu kilat), kunci dan fail sijil mesti dipindahkan melalui saluran komunikasi yang boleh dipercayai dan tidak boleh jatuh ke tangan pihak ketiga, kerana sebenarnya, menggunakan mereka, pelanggan boleh mendapat akses kepada subnet maya anda. Dalam bahagian seterusnya, kami akan melihat pada menyediakan klien, dan ia akan diandaikan bahawa ia telah menerima fail kunci dan sijil daripada anda.
  9. Jika tembok api digunakan pada PC yang digunakan sebagai pelayan, maka anda perlu menambah OpenVPN pada senarai pengecualian. Untuk firewall Windows terbina dalam dalam konsol, ini boleh dilakukan dengan arahan berikut: netsh firewall add allowedprogram program = C:\OpenVPN\bin\openvpn.exe name = "OpenVPN Server" DAY skop = SEMUA profil = SEMUA

Menyediakan pelanggan

Menyediakan pelanggan adalah lebih mudah daripada menyediakan pelayan; kami tidak perlu menjana kunci, sijil, dll. untuk klien, kerana semua yang kami perlukan telah dihasilkan oleh kami pada pelayan dan dipindahkan kepada klien. Oleh itu, arahan untuk pelanggan adalah lebih pendek.

pautan yang berguna

  • Dokumentasi rasmi untuk OpenVPN -
  • halaman manual OpenVPN -
  • OpenVPN HOWTO (dalam bahasa Rusia) - http://lithium.opennet.ru/articles/openvpn/openvpn-howto.html

F.A.Q.

Anda boleh menghantar apa-apa soalan yang anda ada ke e-mel yang dinyatakan dalam bahagian, atau membincangkan artikel ini.

Adakah mungkin untuk mengedarkan Internet dengan cara ini?


Daripada pengarang

Artikel ini boleh disiarkan pada mana-mana sumber, disalin keseluruhan atau sebahagian, tanpa sekatan, dengan syarat pautan ke asal dikekalkan. Pautan mesti mengandungi nama Bantuan Komputer Kecemasan sumber kami di Kaluga, diformatkan sebagai pautan, dan juga mengandungi nama samaran pengarang artikel. Contoh pautan sedemikian boleh:

Menyediakan pelayan OpenVPN// Decker

Catatan

Akhir-akhir ini kami telah menerima sejumlah besar soalan dalam gaya " Soalan tentang artikel anda pada langkah 5 selepas arahan bersih-semua, akibatnya, beberapa fail disalin daripada anda. Ini tidak berlaku kepada saya. arahan openvpn --genkey --secret %KEY_DIR%\ta.key mencipta kunci untuk saya, tetapi kemudian build-dh dan build-ca tidak memberikan hasil (cmd.exe menulis bahawa arahan itu bukan dalaman atau luaran.. atau fail boleh laku) fail ca.key tidak dibuat. Apa yang boleh saya lakukan salah?".

Makna utama yang datang kepada kecuaian anda sendiri. Masalah semasa menjalankan perintah bersih-semua, bina-kunci dan lain-lain ialah semasa memasang OpenVPN anda tidak menyemak kotak semak OpenSSL Utilities dan OpenVPN RSA Certificate Management Scripts (mereka mesti diperiksa!). Perhatikan tangkapan skrin dengan tetingkap pemilihan komponen pada permulaan artikel, kotak semak ini ada di sana!

Selalunya pelanggan kami menghantar permintaan untuk memasang dan mengkonfigurasi OpenVPN pada pelayan VPS kami. Tetapi ramai pengguna lain tidak menyedari faedah menggunakannya. Dalam artikel ini kita akan melihatapakah OpenVPN untuk dan huraikan bidang aplikasinya .

OpenVPN – pelaksanaan teknologi secara percumasumber terbuka untuk mencipta saluran titik-ke-titik atau pelayan-pelanggan yang disulitkan antara komputer.

OpenVPN memungkinkan untuk mewujudkan sambungan antara komputer yang terletak di belakang tembok api NAT, tanpa perlu menukar tetapannya. Teknologi ini dibangunkan oleh J. Yonan dan dikeluarkan di bawah lesen GNU GPL percuma. Alat ini digunakan dalam banyak sistem pengendalian yang popular dan digunakan secara meluas:Solaris, OpenBSD, FreeBSD, NetBSD, GNU/Linux, Apple Mac OS X, QNX dan Microsoft Windows .

Pertama sekali, OpenVPN digunakan untuk peruntukan. Benar, terdapat banyak cara untuk menyelesaikan masalah ini. Tetapi OpenVPN dianggap sebagai pilihan yang paling sesuai dari segi keselamatan. Mari lihat mengapa seterusnya.

Bidang penggunaan teknologi OpenVPN : untuk menggabungkan rangkaian atau pelayan dengan selamat menggunakan Internet, untuk memintas tembok api tempatan atau sekatan ISP, untuk memantau penggunaan trafik rangkaian dalam rangkaian yang sama, untuk akses selamat ke pelayan atau Rangkaian, dan banyak lagi.

OpenVPN digunakan terutamanya sebagai mekanisme keselamatan untuk rangkaian persendirian. Anda boleh menggunakan alat sumber terbuka yang serupa untuk membangunkan saluran yang disulitkan sepenuhnya. Mereka bekerja dengan OpenVPN dalam mod: point-to-point atau pelayan-klien. Ia dianggap sebagai kaedah penyulitan yang agak berguna antara komputer dalam rangkaian tertentu.

Teknologi ini menyediakan beberapa jenis pengesahan untuk pengguna:

Yang pertama, menggunakan kekunci pratetap, pada dasarnya adalah cara paling mudah.

Yang kedua ialah pengesahan sijil, yang sangat fleksibel dalam proses konfigurasi. Dan akhirnya, yang ketiga: menggunakan log masuk dan kata laluan (ia boleh berfungsi tanpa membuat sijil pelanggan, tetapi sijil pelayan masih diperlukan).

OpenVPN menggunakan kunci statik, prakongsi atau pertukaran kunci dinamik berasaskan TLS. Terdapat sokongan untuk sambungan VPN dengan rakan sebaya jauh dinamik (DHCP atau pelanggan dail), terowong melalui NAT atau menggunakan tembok api penuh.

Perkhidmatan VPN percuma dan berbayar.

Bagaimanakah keselamatan dan penyulitan dicapai dalam OpenVPN? Ini disediakan terutamanya oleh perpustakaan OpenSSL dan protokol Keselamatan Lapisan Pengangkutan. Tetapi bukannya OpenSSL, keluaran OpenVPN baharu mungkin menggunakan perpustakaan PolarSSL. Protokol TLS ialah versi yang dipertingkatkan bagi protokol pemindahan data selamat Lapisan Soket Selamat.

OpenVPN digabungkan dengan baik dan dikaitkan dengan perpustakaan OpenSSL, jadi mekanisme penyulitan adalah berdasarkan terutamanya padanya.

Ciri menggunakan OpenVPN pada sistem pengendalian yang berbeza . Bergantung pada OS yang anda pilih, terdapat beberapa nuansa untuk bekerja dengan rangkaian peribadi. Contohnya, mod fast-io, yang mempercepatkan sambungan UDP, hanya boleh berfungsi pada GNU/Linux. Dalam Windows, masalah dengan perubahan laluan agak kerap berlaku; untuk penyelesaian sedemikian, saya menggunakan pilihan kaedah laluan.

OpenVPN telah dialihkan ke MacOS X - terdapat projek percuma yang dipanggil tunnelblick. Tiada sokongan untuk parameter TCP_NODELAY dalam kernel OS ini. Projek komersial, kelikatan, telah dibangunkan untuk OS ini. OpenVPN sering digunakan pada penghala daripada beberapa pengeluar: Linksys dan Mikrotik dan lain-lain.

digunakan pada satu pelayan dalam rangkaian maya, jadi tidak ada cara untuk mewujudkan komunikasi langsung antara pelanggan. Untuk penyelesaian ini, mereka menggunakan teknologi yang sama sekali berbeza yang dipanggil CloudVPN.

Sebagai tambahan kepada semua kelebihan di atas, penggunaan protokol TCP dan UDP standard dalam OpenVPN memungkinkan untuk menjadi alternatif kepada IPsec dalam kes di mana penyedia Internet menyekat beberapa protokol VPN.

OpenVPN ialah perisian yang agak serba boleh yang menyediakan banyak pilihan penyesuaian di tangan pengguna yang berpengalaman. Bagaimana untuk memasang VPN dari HyperHost pada Android OS. Maklumat lanjut. Jika anda memerlukan bantuan untuk menyediakan dan memasang produk ini pada kami, hubungi sokongan teknikal Hyper Host™. Kami akan gembira untuk membantu anda secepat mungkin dan pada bila-bila masa sepanjang hari!

Bagaimana untuk memastikan keselamatan dalam talian? untuk bekerja di Internet.

10308 kali 23 kali dilihat hari ini

Jadi, kawan yang dikasihi, hari ini kita akan belajar cara membuat sambungan yang disulitkan antara rangkaian yang berbeza berdasarkan OpenVPN. Untuk memulakan, tiup
http://openvpn.net/ dan dapatkan sumber segar dari sana (seperti biasa untuk gourmet) atau binari (untuk pencinta Windows). Mereka yang tidak suka mengganggu kompilasi manual boleh pergi ke /usr/ports/security/openvpn (port FreeBSD) dan pasang dari port.
Jika anda, seperti saya, bekerja dengan Windows di rumah (ia masih lebih mudah dan anda boleh bermain-main apabila kerja menjadi membosankan hingga mati 😉), maka saya menasihati anda untuk melihat gelanggang juga:
http://openvpn.net/gui.html
- ini ialah GUI untuk versi Windows; untuk MacOS, pada pendapat saya, terdapat sesuatu di sana juga. Jadi, kami memuat turunnya, memasangnya di bawah Win, dan memasangnya di bawah FreeBSD. Bagi mereka yang membuat keputusan untuk memasang sesuatu dengan tangan mereka sendiri buat kali pertama, saya mengingatkan anda tentang arahan tradisional.

#tar –zxvf openvpn-2.0_rc21.tar.gz
#cd openvpn-2.0_rc21
#./configure
#buat
#buat pemasangan
#buat bersih

Jika beberapa pakej tiada untuk pemasangan yang berjaya, atau cuba tentukannya melalui pilihan dalam ./configure. Untuk bekerja dengan mudah dengan configurator, saya biasanya menggunakan sama ada dua terminal atau dua sesi Putty. Pada satu saya jalankan:

#./configure –help | kurang

Dan di sisi lain saya menyumbat pelbagai bendera. Jadi, kita nampaknya telah menyelesaikan pemasangan... Mari kita beralih kepada bahagian yang lebih menarik dan kompleks, iaitu penciptaan fail konfigurasi dan pelbagai jenis kunci.

Pengubahsuaian BSD

Agar semuanya berfungsi, anda perlu membina semula kernel dengan pilihan berikut:

pilihan IPSEC
pilihan IPSEC_ESP

Mengedit konfigurasi

Kami tidak memerlukan banyak untuk menjalankan bahagian pelayan. Jika anda ingin membaca maklumat lanjut:

Jika anda ingin cepat tergesa-gesa ke dalam pertempuran, kemudian ulangi selepas saya! Wah, saya sudah mula menulis dalam sajak! Jadi, mari edit konfigurasi:

#vi /usr/local/etc/openvpn/office.conf

Kami menulis perkara berikut di sana:

daemon openvpn # kami meminta pelayan openvpn kami untuk menjadi daemon, saya menasihati anda untuk memasukkan baris ini hanya selepas semuanya berfungsi.

dev tun # gunakan antara muka ini

pelayan 10.1.0.0 255.255.255.0 #nyatakan ip pelayan dalam rangkaian VPN

tolak "laluan 10.1.0.0 255.255.255.0" #– perkara ini akan menambah laluan rangkaian VPN
tolak "laluan 194.1.1.0 255.255.255.0" #– ini akan menambah laluan grid kepada pelanggan di belakang pelayan VPN
tolak "laluan 192.168.0.0 255.255.255.0" # ialah laluan ke rangkaian rumah anda

klien-ke-klien #komen ini jika anda tidak mahu pelanggan vpn bertemu antara satu sama lain

tls-server #indikasikan bahawa ini ialah konfigurasi pelayan

dh /etc/ssl/dh2048.pem # ini adalah sijil untuk menyulitkan persediaan sambungan
ca /etc/ssl/CA_cert.pem # Ini adalah sijil pelayan
cert /etc/ssl/certs/Cserv.pem #
kunci /etc/ssl/keys/Kserv.pem #

proto tcp-server #Suruh pelayan berfungsi menggunakan protokol TCP
port 5000 # Pada port 5000

pengguna tiada siapa #Pengguna dari mana pelayan vpn bermula (jangan tetapkannya kepada root!)
kumpulan tiada siapa #Nah, ini adalah kumpulan

comp-lzo #Dayakan pemampatan

persist-tun #Gunakan antara muka dan kekunci yang sama apabila memulakan semula pelayan
gigih-kunci

tls-auth /etc/ssl/ta.key 0 # Perlindungan terhadap serangan DOS
keepalive 10 120 # Sepanjang hayat sesi tidak aktif

kata kerja 4 # Bilangan maklumat penyahpepijatan (dari 0 hingga 9)

Ya, itu sahaja. Kami sudah selesai dengan pelayan. Mari kita beralih kepada pelanggan. Jangan risau tentang kunci dan sijil, kami akan menciptanya kemudian.

Pelanggan Windows OpenVPN

Anda tahu, perkara ini boleh digunakan walaupun pada sambungan dail, yang tidak penting bagi saya! Lemparkan kunci dan pemasang ke Flash dan jangan risau lagi, walaupun anda melawat rakan, minum bir dan makan daging, dan kemudian bos memanggil dan mula mengutuk bahawa ada sesuatu yang tidak berfungsi untuk mereka, anda mengambil pelanggan daripada rakan, cuma jangan fikir tentang menyalin kunci pada gerak isyaratnya. Salin konfigurasi dan tukar laluan ke kunci klien pada pemacu denyar, di sini. Oh ya... Mari kita teruskan.

Klik START-Programs-OpenVPN... Masukkan folder dengan fail konfigurasi. Buat home.ovpn dan tulis atau salin konfigurasi ini di sana:

klien #Beritahu klien untuk mendapatkan maklumat penghalaan daripada pelayan (ingat # pilihan tolak)

ip-a jauh #Daripada ip-a, masukkan ip sebenar pelayan anda yang boleh dilihat di Internet

tls-client # Ini ialah konfigurasi klien

pelayan jenis ns-cert #Ini adalah satu lagi pertahanan, kali ini terhadap serangan "man in the middle".

ca "H:\\config openVPN\\CA_cert.pem" # Ini hanyalah laluan utama (Ia ada pada pemacu kilat saya)

sijil "H:\\config openVPN\\home.pem"

kunci "H:\\config openVPN\\khome.pem"

tls-auth "H:\\config openVPN\\ta.key" 1 #DOS perlindungan. Di sini, tidak seperti pelayan, ia berharga #satu. Jangan keliru, Kutuzov! 😉

proto tcp-client #Pelanggan berfungsi melalui TCP
port 5000 #Sambung ke port 5000

comp-lzo # Anda sudah tahu ini

tun-mtu 1500 #Salin sahaja, jika anda tidak tahu rangkaian, saya tidak boleh memberitahu anda mengenainya dalam #dua baris
tun-mtu-tambahan 32
mssfix 1450

Ok, konfigurasi sudah sedia. Mari kita beralih kepada aktiviti yang lebih menarik, menjana kunci dan sijil.

Peraturan OpenSSL

Pergi ke /etc/ssl. Terdapat 2 fail: index.txt dan serial. Sekarang mari kita tulis sesuatu dalam bersiri:

#cd /etc/ssl
#touch index.txt
#bersiri sentuh
#echo “01” > ./siri

Sekarang, mari buat beberapa folder:

#mkdircerts
#mkdirkeys
#mkdir crl

Sekarang, mari kita jaga sedikit keselamatan dan tukar openssl.cnf kita. Saya faham bahawa anda mempunyai tangan yang gila, jadi jangan lupa untuk membuat salinan fail ini, untuk berjaga-jaga. 😉

#cp ./openssl.cnf ./openssl.cnf.backup
#vi openssl.cnf

Cari parameter "default_days" dan tetapkannya kepada 9125 (ini ialah bilangan hari sebelum sijil kami berhenti berfungsi). Dan pada penghujung konfigurasi, tulis ini:
[pelayan]
basicConstraints =CA:FALSE
nsCertType =pelayan

Sebaik sahaja anda membuat sijil, perkara ini akan menghalang mana-mana kanak-kanak membaca majalah ini daripada melakukan serangan "lelaki di tengah" yang mudah. Jika anda terlupa untuk menulis ini, tetapan "ns-cert-type server" dalam fail konfigurasi tidak akan berfungsi.

Hanya sedikit lagi kesabaran dan anda akan melakukan apa yang anda tunggu selama ini. ANDA AKAN MELAKUKAN INI!

Mari kita kembali ke jalan yang benar:

#openssl req –baru –x509 –keyout private/CA_key.pem –out CA_cert.pem

Masukkan kata laluan anda dan jangan lupa.

#openssl req –new –nodes –keyout key/Kserv.pem –out req/Rserv.pem

Untuk baris ini, adalah penting bahawa parameter Nama Organisasi sepadan dengan apa yang anda tentukan semasa menjana CA_cert.pem.

#openssl ca -extfile /etc/ssl/openssl.cnf –extensions server –out certs/Cserv.pem –infiles req/Rserv.pem

Anda akan ditanya beberapa soalan, yang, tanpa berfikir panjang, jawab "y".
Ini adalah untuk pelayan. Sekarang mari kita ulangi perkara yang sama, tetapi untuk pelanggan.

#openssl req –baru –keyout key/Khome.pem –out req/Rhome.pem
#openssl ca –out certs/Chome.pem –infiles req/Rhome.pem

Jangan lupa tentang ta.key:

#openvpn —genkey —rahsia ta.key

Jadi, dan akhirnya, buat fail Diffie-Hellman (yang tahu cara menulisnya dalam bahasa Rusia).

#openssl dhparam –keluar dh2048.pem 2048

Setelah menerima mesej tentang penciptaan yang lama, kami pergi untuk minum bir (sebenarnya saya mengambil masa hampir 20 minit untuk mencipta).

Kami mengambil sijil kami

Itu sahaja, terima tahniah saya, anda melakukan segala-galanya! Sekarang yang tinggal hanyalah untuk dibawa bersama anda:
- CA_cert.pem
— Chome.pem
—Khome.pem
-ta.kunci

Untuk melakukan ini, sama ada salin ke cakera liut:

#mkdir /mnt/floppy
#mount -t msdos /dev/fd0a /mnt/floppy
# cp /etc/ssl/certs/Cnode.pem /mnt/floppy
#cp /etc/ssl/keys/Knode.pem /mnt/floppy
#cp /etc/ssl/CA_cert.pem /mnt/floppy
#cp etc/ssl/ta.key /mnt/floppy
#umount –f /dev/fd0a

Atau, jika anda adalah syaitan yang berani, yang bermaksud anda melakukan segala-galanya baris demi baris pada pelayan sekaligus, kemudian gunakan klien sftp dan ambil semuanya dari pelayan sendiri.

Roket itu pergi

Sekarang mulakan pelayan OpenVPN:

#openvpn –config /usr/local/etc/openvpn/office.conf

Buat openvpn.sh kecil dalam /usr/local/etc/rc.d untuk bermula secara automatik pada but semula:

kes "$1" dalam
mula)
echo -n "OpenVPN2 Bermula..."
/usr/local/sbin/openvpn || keluar 1
;;
berhenti)
echo -n "Mematikan OpenVPN2..."
/usr/bin/killall openvpn &>/dev/null || keluar 1
;;
muat semula|mulakan semula)
$0 berhenti && tidur 1 && $0 mula || keluar 1
;;
*)
echo "Penggunaan: $0 (mula|berhenti|muat semula|mulakan semula)"
keluar 1
esac

Firewall

Anda menulis peraturan untuk ipfw untuk membenarkan sambungan kepada daemon kami:

#ipfw –q tambah pas tcp dari mana-mana kepada saya 5000
#ipfw –q tambah pas tcp dari mana-mana kepada mana-mana melalui tun0

Anda juga boleh menambahkan ini pada skrip firewall anda.

Sentuhan penamat

Untuk menyambung daripada klien Windows, anda menggunakan GUI, cara menambahkannya ke permulaan untuk kemudahan, saya fikir anda akan memikirkannya sendiri.

Mari kita ringkaskan

Jadi, anda baru sahaja menyediakan sambungan antara pelayan penghala yang melindungi jaringan anda di suatu tempat di luar sana dan rangkaian rumah anda. Ini adalah satu langkah yang hebat. Anda telah meningkatkan seni pentadbiran anda ke tahap yang lain. Sekali lagi saya tidak akan kedekut dan mengucapkan tahniah kepada anda. Anda tahu, ada orang pintar yang tidak menasihati mewujudkan hubungan antara rangkaian dengan cara ini. Kami telah menambah peraturan yang hanya membenarkan anda menyambung ke pelayan anda dan bergerak bebas antara dua rangkaian. Jika anda memutuskan untuk menambah bilangan pelanggan pelayan OpenVPN, anda perlu mengkonfigurasi firewall dan keselamatan tambahan, dan lebih banyak antara muka pada penghala, lebih sukar untuk memantau ini. Di samping itu, anda baru sahaja mengembangkan ruang alamat rangkaian anda. Inilah yang tidak disukai oleh lelaki celik keselamatan ini. Baiklah, okey, ini adalah kisah falsafah, jika anda mahu, gunakannya. Dan akhirnya, saya menghantar awak ke
http://openvpn.net/, terdapat banyak dokumentasi di sana yang akan saya baca jika saya jadi anda. Okay, saya perlu pergi. Jika ada, alamatnya masih sama:
. Saya menantikan maklum balas dan cadangan anda.

Internet adalah seperti laut. Apa-apa sahaja boleh berlaku pada data yang dihantar, sama seperti kapal semasa pelayaran: ia boleh rosak, tenggelam dalam aliran maklumat atau menjadi mangsa "lanun". Bantu melindungi data yang sangat berharga daripada kecurian dan kehilangan (VPN) - sistem saluran tertutup (terowong) yang dibina di dalam rangkaian lain yang lebih besar. Satu jenis VPN ialah OpenVPN.

Ingin belajar cara membuat rangkaian peribadi maya dengan cepat dan mudah? Mari kita bincangkan tentang kelebihan protokol OpenVPN, serta tetapan bahagian pelayan dan klien perisiannya untuk Windows dan Ubuntu.

Skop dan kelebihan OpenVPN

Kawasan permohonan

  • Penciptaan rangkaian korporat yang selamat. Jarak antara nod rangkaian sedemikian tidak penting.
  • Perlindungan maklumat dalam rangkaian awam terbuka.
  • Menyambungkan berbilang hos ke Internet melalui gerbang biasa.
  • Akses kepada sumber web yang dilarang.

Kelebihan

  • Semuanya percuma. Kebanyakan kita tidak akan menolak Wi-Fi percuma di kafe atau taman, tetapi lalu lintas yang dihantar melalui sambungan sedemikian sama sekali tidak dilindungi daripada pemintasan. Perisian OpenVPN percuma akan mengarahkannya ke terowong tertutup, jadi log masuk, kata laluan dan maklumat sensitif anda yang lain pasti tidak akan bocor ke tangan yang salah.
  • Untuk memastikan rangkaian anda selamat, anda tidak perlu membeli peralatan tambahan.
  • Semua trafik yang dihantar dimampatkan, yang memastikan kelajuan komunikasi yang tinggi (lebih tinggi daripada menggunakan IPSec).
  • Tetapan perisian fleksibel membolehkan anda mengkonfigurasi VPN dari sebarang kerumitan.
  • Penggunaan beberapa algoritma penyulitan yang kuat memastikan tahap perlindungan data yang sangat tinggi.
  • Tidak perlu mengkonfigurasi semula atau melumpuhkan tembok api (firewall) dan NAT (teknologi terjemahan alamat IP dalam rangkaian TCP/IP).
  • Protokol ini disokong oleh semua sistem pengendalian utama.
  • Memasang dan mengkonfigurasi perisian tidak memerlukan pengetahuan mendalam tentang teknologi rangkaian, malah untuk bukan pakar ia hanya mengambil masa beberapa minit.

Menyediakan OpenVPN pada Windows

Pemasangan dan konfigurasi bahagian pelayan

Memandangkan kebanyakan daripada kita menggunakan Windows OS, mari kita mula berkenalan dengan teknologi OpenVPN di sana. Jadi, pilih pengedaran yang sesuai dan jalankan pemasangan.

Dalam senarai " Pilih komponen untuk dipasang» (pilih komponen untuk dipasang) semak semua.

Bersetuju untuk memasang pemacu penyesuai rangkaian maya TAP Windows Adapter V9.

Dipasang? Sekarang mari buat kunci dan sijil VPN.

  • Pergi ke direktori %ProgramFiles%/OpenVPN/easy-rsa dan jalankan fail kelompok init-config.bat– ia akan menyalin fail ke folder yang sama vars.bat.sample sebagai vars.bat. Pada masa hadapan, pakej arahan vars.bat akan menetapkan pembolehubah untuk menjana sijil.

  • Selepas penciptaan vars.kelawar bukanya menggunakan pad nota dan tulis sebarang data dalam baris yang diserlahkan (selepas “=”). Simpan perubahan.

  • Seterusnya, jalankan baris arahan sebagai pentadbir dan laksanakan arahan untuk pergi ke /easy-rsa ( cd %Fail program%/OpenVPN/mudah-rsa). Selepas ini kita berjalan secara berurutan vars.kelawar Dan bersih-semua.kelawar(muat pembolehubah dan padam kekunci yang dibuat sebelum ini).

  • Laksanakan sekumpulan arahan membina-ca.kelawar– dengan ini kami akan mencipta sijil utama baharu dalam direktori %ProgramFiles%/OpenVPN/easy-rsa/keys. Tidak perlu mengisi maklumat tentang nama organisasi, dsb., yang dibulatkan dalam tangkapan skrin - hanya tekan Enter.

  • Jom lancarkan membina-dh.kelawar- dengan ini kami mencipta kunci Diffie-Hellman. Fail akan muncul dalam folder /keys dh1024.pem.

  • Seterusnya dalam baris ialah kunci pelayan: laksanakan arahan membina-kunci-pelayanmyVPN(“myVPN” ialah nama pelayan, anda boleh menentukan mana-mana yang lain). Langkau blok soalan bermula dengan "Nama Negara" dengan menekan Enter. Kepada dua soalan terakhir - "Tandatangan sijil?" dan yang seterusnya, kami menjawab "Y".

  • Seterusnya kita perlu mendapatkan kunci klien: laksana membina-kuncipengguna1(user1 ialah nama klien, anda boleh menggantikannya dengan sesuatu yang lain). Jika terdapat beberapa komputer pelanggan, ulangi operasi untuk setiap komputer, jangan lupa untuk menukar nama. Kami melangkau blok yang dikelilingi oleh bingkai, seperti sebelumnya.

  • Seterusnya, salin dari folder / mudah-rsa/kunci V / OpenVPN/konfigurasi fail berikut: dh1024.pem, ca.crt myvpn.crt, myvpn.key, pengguna1.kuncipengguna1.crt. Empat yang terakhir mungkin dipanggil secara berbeza di negara anda. Mengapa, saya fikir, adalah jelas.

  • Seterusnya, buat fail konfigurasi pelayan dalam folder yang sama. Kami menyalin arahan di bawah ke dalam pad nota dan, jika perlu, menukar parameternya kepada kami sendiri. Simpan dokumen dengan sambungan. ovpn dan nama" Pelayan».

# Antara Muka (terowong L3)
lagu dev
# Protokol VPN
proto udp
# Port untuk digunakan (anda boleh menentukan mana-mana yang percuma)
pelabuhan 1234
# Senarai sijil dan kunci (perhatikan nama)
caca.crt
sijil myvpn.crt
kunci myvpn.key
dh dh1024.pem
# Jenis penyulitan data
sifir AES-256-CBC
# Pilih julat alamat IP
pelayan 10.10.10.0 255.255.255.0
# Tahap maklumat nyahpepijat
kata kerja 3
# Gunakan pemampatan
comp-lzo
gigih-kunci
gigih-tun
mssfix
# Tetapkan bilangan maksimum peristiwa berulang
bisu 25
# Bilangan pelanggan yang disambungkan secara serentak (5)
pelanggan maksimum 5
# Seumur hidup sesi pelanggan
keepalive 10 120
# Keterlihatan pelanggan antara satu sama lain (dibenarkan)
pelanggan ke pelanggan
# Peruntukkan 1 alamat kepada setiap pengguna
subnet topologi
# Tetapkan kelewatan sebelum menambah laluan
kelewatan laluan
#Nyatakan jika kita ingin mengedarkan Internet. Kami menulis alamat DNS yang dinyatakan dalam tetapan sambungan Internet.
tekan "redirect-gateway def1"

tekan "dhcp-option DNS x.x.x.x"

Baca lebih lanjut mengenai arahan konfigurasi pelayan.

Seterusnya, untuk mengedarkan Internet, pergi ke direktori sambungan rangkaian, buka sifat antara muka melihat rangkaian global, pergi ke tab " Akses", letakkan tanda semak bertentangan " Benarkan pengguna lain menggunakan sambungan ini..." dan pilih rangkaian penyesuai maya TAP-Windows adapter V9 daripada senarai - pada pendapat saya ini ialah Ethernet 3.

  • Buat fail konfigurasi klien. Salin teks berikut ke dalam pad nota dan simpan dokumen dengan sambungan .ovpn di bawah nama "Pelanggan".

pelanggan
lagu dev
proto udp
# IP atau nama domain pelayan VPN dan port sambungan.
jauh x.x.x.x 1234
caca.crt
pengguna sijil1.crt
pengguna kunci1.kunci
sifir AES-256-CBC
comp-lzo
gigih-kunci
gigih-tun
kata kerja 3

Lihat arahan konfigurasi klien lain.

Menyediakan bahagian pelanggan

Pasang aplikasi pada komputer klien. Seterusnya, pergi ke pelayan, buka direktori %ProgramFiles%/OpenVPN/config dan salin fail dari sana ca.crt, Client.ovpn, user1.crt,pengguna1.kunci ke folder rangkaian atau pemacu denyar. Kami memindahkannya ke folder yang serupa pada mesin klien.

Sambungan

Untuk memulakan pelayan, klik pada pintasan "OpenVPN GUI" pada desktop anda. Ikon kelabu akan muncul dalam dulang. Klik kanan padanya dan pilih " Pelayan"Dan" Sambung».

Jika sambungan berjaya, ikon akan bertukar warna kepada hijau. Jika tidak berjaya, klik pada menu “ Lihat majalah": ia akan menunjukkan ralat.

Sambungan pelanggan dilakukan dengan cara yang sama, hanya bukannya " Pelayan"pilih daripada menu" Pelanggan».

Menyediakan OpenVPN pada Ubuntu

Kami mulakan dengan memasang pakej OpenVPN pada pelayan dan mesin klien, seperti pada Windows. Arahan untuk memasang versi konsol perisian melalui terminal adalah seperti berikut: sudo apt-get install openvpn. Jika anda mahu, anda boleh memasang versi grafik pakej dari Pusat Aplikasi Ubuntu.

Walau bagaimanapun, komponen yang paling penting, modul mudah-rsa, yang direka untuk menjana sijil dan kunci, tidak termasuk dalam pengedaran Linux. Anda perlu memasangnya secara berasingan dengan menjalankan arahan: sudosesuai-dapatkanpasangmudah-rsa.

Menyediakan bahagian pelayan

  • Selepas memasang program dan modul tambahan, buat direktori " mudah-rsa" dalam folder /etc/openvpn: sudo mkdir /etc/openvpn/easy-rsa. Salin kandungan dari lokasi pemasangan ke dalamnya: cp -r /usr/share/easy-rsa /etc/openvpn/easy-rsa.
  • Seterusnya kita beralih ke direktori baharu: cd /etc/openvpn/easy-rsa/ dan teruskan membuat sijil dan kunci.

  • Menggunakan editor konsol nano, buka fail pembolehubah vars (analog dengan vars.bat dalam Windows) dan import ke dalamnya data yang sama seperti dalam vars.bat, dengan nilai yang diubah:

KEY_COUNTRY=RU
KEY_PROVINCE=CA
KEY_CITY=SanFrancisco
KEY_ORG=OpenVPN
[e-mel dilindungi]
KEY_CN=changeme
KEY_NAME=tukar saya
KEY_OU=changeme
PKCS11_MODULE_PATH=ubah saya
PKCS11_PIN=1234

  • Salin pakej kriptografi openssl: cpopenssl-1.0.0.cnfopenssl.cnf.
  • Memuatkan pembolehubah dari vars: sumber ./vars.
  • Kami memadamkan data yang dibuat sebelum ini: ./ bersih-semua.
  • Buat sijil utama baharu: ./ membina-ca. Kami melangkau blok soalan dalam bingkai.

  • Seterusnya ialah kunci Diffie-Hellman: ./ membina-dh.
  • Di belakangnya adalah sijil pelayan: . / membina-kunci-pelayanmyVPN(myVPN, seperti yang anda ingat, adalah nama; ia mungkin berbeza untuk anda). Kami melangkau blok yang diserlahkan (ia dipendekkan dalam tangkapan skrin), jawab "Y" kepada 2 soalan terakhir.

  • Akhir sekali, kami mencipta sijil pelanggan: ./ membina-kuncipengguna1(bukannya "pengguna1" anda boleh membuat nama lain). Pada masa yang sama, kami sekali lagi melangkau blok yang diserlahkan pada skrin dan menjawab "Y" kepada dua soalan terakhir.

Semua kunci dan sijil yang dibuat disimpan dalam subdirektori / dan lain-lain/openvpn/mudah-rsa/kunci. Alihkan mereka ke folder /openvpn: cp -r /etc/openvpn/easy-rsa/keys /etc/openvpn.

Pada peringkat akhir, buat fail konfigurasi pelayan dalam folder /etc/openvpn: nano/dan lain-lain/openvpn/pelayan.conf dan isikannya dengan cara yang sama seperti kami mengisi dokumen yang serupa pada Windows. Satu-satunya perbezaan adalah laluan yang berbeza:

ca /etc/openvpn/keys/ca.crt

cert /etc/openvpn/keys/myvpn.crt
kekunci /etc/openvpn/keys/myvpn.key

Akhir sekali, kami mencipta direktori untuk konfigurasi mesin klien: mkdir /etc/openvpn/ccd, dan mulakan pelayan: perkhidmatan openvpn bermula.

Jika pelayan tidak bermula, mungkin terdapat ralat dalam konfigurasi. Maklumat tentang masalah boleh dilihat dalam dokumen /var/log/openvpn.log menggunakan arahan tail -f /var/log/openvpn.log.

Menyediakan bahagian pelanggan

Selepas memasang aplikasi pada mesin klien, pindahkan kunci dan sijil yang dijana pada pelayan kepadanya dan buat konfigurasi.

Kunci dan sijil - ca.crt, pengguna1.crt Dan pengguna1.kunci, terletak dalam folder /etc/openvpn/keys. Kami menyalinnya ke pemacu kilat dan menampalnya ke dalam folder dengan nama yang sama pada komputer pelanggan.

Kami mencipta fail konfigurasi menggunakan nano: nano /etc/openvpn/client.conf, dan isikannya mengikut model Windows. Jangan lupa sertakan laluan yang betul:

ca /etc/openvpn/keys/ca.crt
dh /etc/openvpn/keys/dh2048.pem
cert /etc/openvpn/keys/user1.crt
kekunci /etc/openvpn/keys/user1.key

Semua dah siap. Untuk menyambung ke pelayan kami menggunakan arahan yang sama: perkhidmatan openvpn bermula.

Arahan itu ternyata panjang, tetapi sebenarnya langkah-langkah ini mengambil masa 5-10 minit untuk diselesaikan. Maklumat lebih terperinci tentang bekerja dengan OpenVPN boleh didapati di bahagian "" di tapak web rasmi aplikasi. Cubalah dan anda akan berjaya!

Juga di tapak:

Menyediakan OpenVPN pada Windows dan Ubuntu: apa, mengapa dan bagaimana dikemas kini: 24 April 2016 oleh: Johnny Mnemonic