Dengan penapisan Internet yang semakin meningkat oleh rejim autoritarian, semakin banyak sumber dan tapak Internet yang berguna disekat. Termasuk maklumat teknikal.
Oleh itu, menjadi mustahil untuk menggunakan Internet sepenuhnya dan melanggar hak asasi kebebasan bersuara, yang termaktub dalam Deklarasi Hak Asasi Manusia Sejagat.
Perkara 19
Setiap orang mempunyai hak untuk kebebasan berpendapat dan bersuara; hak ini termasuk kebebasan untuk memegang pendapat tanpa campur tangan dan untuk mencari, menerima dan menyampaikan maklumat dan idea melalui mana-mana media dan tanpa mengira sempadan.
Dalam panduan ini, kami akan menggunakan perisian percuma kami sendiri dalam 6 langkah. Perkhidmatan VPN berasaskan teknologi Pengawal Wire, dalam infrastruktur awan Amazon Web Services (AWS), menggunakan akaun percuma (selama 12 bulan), pada contoh (mesin maya) yang diuruskan oleh Pelayan Ubuntu 18.04 LTS.
Saya telah cuba menjadikan panduan ini sebagai mesra kepada orang bukan IT yang mungkin. Satu-satunya perkara yang diperlukan ialah ketekunan dalam mengulangi langkah-langkah yang diterangkan di bawah.
Mendaftar untuk akaun AWS percuma memerlukan nombor telefon sebenar dan kad kredit Visa atau Mastercard yang sah. Saya mengesyorkan menggunakan kad maya yang disediakan secara percuma Yandex.Money atau dompet qiwi. Untuk menyemak kesahihan kad, $ 1 ditolak semasa pendaftaran, yang kemudiannya dikembalikan.
Pada peringkat ini, nombor telefon disahkan dan $1 didebitkan terus daripada kad pembayaran. Kod 4 digit dipaparkan pada skrin komputer, dan telefon yang ditentukan menerima panggilan daripada Amazon. Semasa panggilan, anda mesti mendail kod yang ditunjukkan pada skrin.
1.6. Pilihan pelan tarif.
Pilih - Pelan asas (percuma)
1.7. Log masuk ke konsol pengurusan
1.8. Memilih lokasi pusat data
1.8.1. Ujian kelajuan
Sebelum memilih pusat data, disyorkan untuk menguji https://speedtest.net kelajuan akses ke pusat data terdekat, di lokasi saya keputusan berikut:
Singapura
Paris
Frankfurt
Stockholm
London
Pusat data di London menunjukkan hasil terbaik dari segi kelajuan. Jadi saya memilihnya untuk penyesuaian selanjutnya.
2. Buat tika AWS
2.1 Cipta mesin maya
2.1.1. Memilih jenis contoh
Secara lalai, tika t2.micro dipilih, itulah yang kami perlukan, hanya tekan butang Seterusnya: Konfigurasikan Butiran Contoh
2.1.2. Menetapkan Pilihan Contoh
Pada masa hadapan, kami akan menyambungkan IP awam tetap kepada contoh kami, jadi pada peringkat ini kami mematikan penetapan automatik IP awam dan menekan butang Seterusnya: Tambah Storan
2.1.3. Sambungan storan
Nyatakan saiz "cakera keras". Untuk tujuan kami, 16 gigabait sudah mencukupi, dan kami menekan butang Seterusnya: Tambah Teg
2.1.4. Menyediakan tag
Jika kami mencipta beberapa kejadian, maka mereka boleh dikumpulkan mengikut teg untuk memudahkan pentadbiran. Dalam kes ini, fungsi ini tidak diperlukan, segera tekan butang Seterusnya: Konfigurasikan Kumpulan Keselamatan
2.1.5. Membuka pelabuhan
Dalam langkah ini, kami mengkonfigurasi tembok api dengan membuka port yang diperlukan. Set port terbuka dipanggil Kumpulan Keselamatan. Kita mesti mencipta kumpulan keselamatan baharu, beri nama, perihalan, tambah port UDP (Peraturan UDP Tersuai), dalam medan Julat Rort, anda mesti menetapkan nombor port daripada julat port dinamik 49152-65535. Dalam kes ini, saya memilih nombor port 54321.
Selepas mengisi data yang diperlukan, klik pada butang Semak dan Pelancaran
2.1.6. Gambaran keseluruhan semua tetapan
Pada halaman ini terdapat gambaran keseluruhan semua tetapan contoh kami, kami menyemak sama ada semua tetapan adalah teratur, dan tekan butang pelancaran
2.1.7. Mencipta Kekunci Akses
Seterusnya datang kotak dialog yang menawarkan sama ada membuat atau menambah kunci SSH sedia ada, yang kemudiannya kami akan menyambung dari jauh ke contoh kami. Kami memilih pilihan "Buat pasangan kunci baharu" untuk mencipta kunci baharu. Beri nama dan klik butang Muat turun Pasangan Kunciuntuk memuat turun kunci yang dijana. Simpan mereka ke tempat yang selamat pada komputer tempatan anda. Setelah dimuat turun, klik butang. Lancarkan Contoh
2.1.7.1. Menyimpan Kekunci Akses
Ditunjukkan di sini ialah langkah menyimpan kunci yang dijana daripada langkah sebelumnya. Selepas kami menekan butang Muat turun Pasangan Kunci, kunci disimpan sebagai fail sijil dengan sambungan *.pem. Dalam kes ini, saya memberinya nama wireguard-awskey.pem
2.1.8. Gambaran Keseluruhan Hasil Penciptaan Instance
Seterusnya, kami melihat mesej tentang kejayaan pelancaran contoh yang baru kami buat. Kita boleh pergi ke senarai contoh kita dengan mengklik pada butang lihat contoh
2.2. Mencipta alamat IP luaran
2.2.1. Memulakan penciptaan IP luaran
Seterusnya, kami perlu mencipta alamat IP luaran kekal yang melaluinya kami akan menyambung ke pelayan VPN kami. Untuk melakukan ini, dalam panel navigasi di sebelah kiri skrin, pilih item IP elastik daripada kategori RANGKAIAN & SEKTURITI dan tekan butang Peruntukkan alamat baharu
2.2.2. Mengkonfigurasi penciptaan IP luaran
Dalam langkah seterusnya, kita perlu mendayakan pilihan Kolam Amazon (didayakan secara lalai), dan klik pada butang Alokasikan
2.2.3. Gambaran keseluruhan hasil mencipta alamat IP luaran
Skrin seterusnya akan memaparkan alamat IP luaran yang kami terima. Adalah disyorkan untuk menghafalnya, dan adalah lebih baik walaupun menulisnya. ia akan berguna lebih daripada sekali dalam proses penyediaan dan penggunaan pelayan VPN selanjutnya. Dalam panduan ini, saya menggunakan alamat IP sebagai contoh. 4.3.2.1. Setelah anda memasukkan alamat, tekan butang Tutup
2.2.4. Senarai alamat IP luaran
Seterusnya, kami dibentangkan dengan senarai alamat IP awam tetap kami (IP elastik).
2.2.5. Menetapkan IP Luaran kepada Contoh
Dalam senarai ini, kami memilih alamat IP yang kami terima, dan tekan butang kanan tetikus untuk memaparkan menu lungsur turun. Di dalamnya, pilih item alamat bersekutuuntuk menetapkannya kepada contoh yang kami buat sebelum ini.
2.2.6. Tetapan tugasan IP luaran
Dalam langkah seterusnya, pilih contoh kami dari senarai juntai bawah dan tekan butang Associate
2.2.7. Gambaran Keseluruhan Keputusan Tugasan IP Luaran
Selepas itu, kami dapat melihat bahawa contoh kami dan alamat IP peribadinya terikat pada alamat IP awam tetap kami.
Kini kami boleh menyambung ke contoh kami yang baru dibuat dari luar, dari komputer kami melalui SSH.
3. Sambung ke tika AWS
SSH ialah protokol selamat untuk alat kawalan jauh peranti komputer.
3.1. Menyambung melalui SSH dari komputer Windows
Untuk menyambung ke komputer Windows, anda perlu memuat turun dan memasang program tersebut terlebih dahulu Putty.
3.1.1. Import kunci peribadi untuk Putty
3.1.1.1. Selepas memasang Putty, anda perlu menjalankan utiliti PuTTYgen yang disertakan bersamanya untuk mengimport kunci sijil dalam format PEM ke dalam format yang sesuai untuk digunakan dalam Putty. Untuk melakukan ini, pilih item dalam menu atas Penukaran->Kunci Import
3.1.1.2. Memilih Kunci AWS dalam Format PEM
Seterusnya, pilih kekunci yang kami simpan sebelum ini dalam langkah 2.1.7.1, dalam kes kami namanya wireguard-awskey.pem
3.1.1.3. Menetapkan pilihan import utama
Pada langkah ini, kami perlu menentukan ulasan untuk kunci ini (perihalan) dan menetapkan kata laluan dan pengesahan untuk keselamatan. Ia akan diminta setiap kali anda menyambung. Oleh itu, kami melindungi kunci dengan kata laluan daripada penggunaan yang tidak sepatutnya. Anda tidak perlu menetapkan kata laluan, tetapi ia kurang selamat jika kunci jatuh ke tangan yang salah. Selepas kita menekan butang Simpan kunci peribadi
3.1.1.4. Menyimpan kunci yang diimport
Dialog simpan fail dibuka dan kami menyimpan kunci peribadi kami sebagai fail dengan sambungan .ppksesuai digunakan dalam program Putty.
Nyatakan nama kunci (dalam kes kami wireguard-awskey.ppk) dan tekan butang Mengekalkan.
3.1.2. Mencipta dan mengkonfigurasi sambungan dalam Putty
3.1.2.1. Buat sambungan
Buka program Putty, pilih kategori Sesi (ia dibuka secara lalai) dan dalam medan Nama Hos masukkan alamat IP awam pelayan kami, yang kami terima dalam langkah 2.2.3. Di padang Sesi Disimpan masukkan nama sewenang-wenangnya untuk sambungan kami (dalam kes saya wireguard-aws-london), dan kemudian tekan butang Jimat untuk menyimpan perubahan yang kami buat.
3.1.2.2. Menyediakan autologin pengguna
Lebih dalam kategori Hubungan, pilih subkategori Tarikh dan di padang Nama pengguna log masuk automatik masukkan nama pengguna ubuntu ialah pengguna standard bagi contoh pada AWS dengan Ubuntu.
3.1.2.3. Memilih kunci peribadi untuk menyambung melalui SSH
Kemudian pergi ke subkategori Sambungan/SSH/Auth dan di sebelah padang Fail kunci peribadi untuk pengesahan tekan butang Semak imbas ... untuk memilih fail dengan sijil kunci.
3.1.2.4. Membuka kunci yang diimport
Tentukan kunci yang kami import sebelum ini pada langkah 3.1.1.4, dalam kes kami ia adalah fail wireguard-awskey.ppk, dan tekan butang terbuka.
3.1.2.5. Menyimpan tetapan dan memulakan sambungan
Kembali ke halaman kategori Sesi tekan butang sekali lagi Jimat, untuk menyimpan perubahan yang kami buat sebelum ini dalam langkah sebelumnya (3.1.2.2 - 3.1.2.4). Dan kemudian kami menekan butang Buka untuk membuka sambungan SSH jauh yang kami buat dan konfigurasikan.
3.1.2.7. Menyediakan kepercayaan antara hos
Dalam langkah seterusnya, kali pertama kami cuba menyambung, kami diberi amaran, kami tidak mempunyai kepercayaan yang dikonfigurasikan antara kedua-dua komputer, dan bertanya sama ada untuk mempercayai komputer jauh. Kami akan menekan butang Ya, dengan itu menambahkannya pada senarai hos yang dipercayai.
3.1.2.8. Memasukkan kata laluan untuk mengakses kunci
Selepas itu, tetingkap terminal terbuka, di mana anda diminta untuk kata laluan untuk kunci, jika anda menetapkannya lebih awal pada langkah 3.1.1.3. Apabila memasukkan kata laluan, tiada tindakan pada skrin berlaku. Jika anda membuat kesilapan, anda boleh menggunakan kunci Backspace.
3.1.2.9. Mesej alu-aluan pada sambungan yang berjaya
Selepas berjaya memasukkan kata laluan, kami ditunjukkan teks alu-aluan dalam terminal, yang memberitahu kami bahawa sistem jauh bersedia untuk melaksanakan arahan kami.
4. Mengkonfigurasi Pelayan Wireguard
Arahan yang paling terkini untuk memasang dan menggunakan Wireguard menggunakan skrip yang diterangkan di bawah boleh didapati dalam repositori: https://github.com/isystem-io/wireguard-aws
4.1. Memasang WireGuard
Dalam terminal, masukkan arahan berikut (anda boleh salin ke papan keratan dan tampal pada terminal dengan menekan butang kanan tetikus):
Jalankan sebagai pentadbir (pengguna akar) skrip pemasangan Wireguard
sudo ./initial.sh
Proses pemasangan akan meminta data tertentu yang diperlukan untuk mengkonfigurasi Wireguard
4.1.3.1. Input titik sambungan
Masukkan alamat IP luaran dan buka port pelayan Wireguard. Kami mendapat alamat IP luaran pelayan dalam langkah 2.2.3, dan membuka port dalam langkah 2.1.5. Kami menunjukkannya bersama-sama, memisahkannya dengan titik bertindih, sebagai contoh 4.3.2.1:54321dan kemudian tekan kekunci Masukkan Contoh output:
Enter the endpoint (external ip and port) in format [ipv4:port] (e.g. 4.3.2.1:54321): 4.3.2.1:54321
4.1.3.2. Memasukkan alamat IP dalaman
Masukkan alamat IP pelayan Wireguard pada subnet VPN selamat, jika anda tidak tahu apa itu, hanya tekan kekunci Enter untuk menetapkan nilai lalai (10.50.0.1) Contoh output:
Enter the server address in the VPN subnet (CIDR format) ([ENTER] set to default: 10.50.0.1):
4.1.3.3. Menentukan Pelayan DNS
Masukkan alamat IP pelayan DNS, atau hanya tekan kekunci Enter untuk menetapkan nilai lalai 1.1.1.1 (DNS awam Cloudflare) Contoh output:
Enter the ip address of the server DNS (CIDR format) ([ENTER] set to default: 1.1.1.1):
4.1.3.4. Menentukan antara muka WAN
Seterusnya, anda perlu memasukkan nama antara muka rangkaian luaran yang akan mendengar pada antara muka rangkaian dalaman VPN. Hanya tekan Enter untuk menetapkan nilai lalai untuk AWS (eth0) Contoh output:
Enter the name of the WAN network interface ([ENTER] set to default: eth0):
4.1.3.5. Menentukan nama pelanggan
Masukkan nama pengguna VPN. Hakikatnya ialah pelayan VPN Wireguard tidak akan dapat dimulakan sehingga sekurang-kurangnya satu pelanggan telah ditambah. Dalam kes ini, saya memasukkan nama Alex@mobile Contoh output:
Enter VPN user name: Alex@mobile
Selepas itu, kod QR dengan konfigurasi pelanggan yang baru ditambah hendaklah dipaparkan pada skrin, yang mesti dibaca menggunakan klien mudah alih Wireguard pada Android atau iOS untuk mengkonfigurasinya. Dan juga di bawah kod QR, teks fail konfigurasi akan dipaparkan sekiranya konfigurasi manual pelanggan. Bagaimana untuk melakukan ini akan dibincangkan di bawah.
4.2. Menambah pengguna VPN baharu
Untuk menambah pengguna baharu, anda perlu melaksanakan skrip dalam terminal add-client.sh
sudo ./add-client.sh
Skrip meminta nama pengguna: Contoh output:
Enter VPN user name:
Juga, nama pengguna boleh dihantar sebagai parameter skrip (dalam kes ini Alex@mobile):
sudo ./add-client.sh Alex@mobile
Hasil daripada pelaksanaan skrip, dalam direktori dengan nama pelanggan di sepanjang laluan /etc/wireguard/clients/{ΠΠΌΡΠΠ»ΠΈΠ΅Π½ΡΠ°} fail konfigurasi klien akan dibuat /etc/wireguard/clients/{ΠΠΌΡΠΠ»ΠΈΠ΅Π½ΡΠ°}/{ΠΠΌΡΠΠ»ΠΈΠ΅Π½ΡΠ°}.conf, dan skrin terminal akan memaparkan kod QR untuk menyediakan pelanggan mudah alih dan kandungan fail konfigurasi.
4.2.1. Fail konfigurasi pengguna
Anda boleh memaparkan kandungan fail .conf pada skrin, untuk konfigurasi manual klien, menggunakan arahan cat
Anda boleh memaparkan kod QR konfigurasi untuk klien yang dibuat sebelum ini pada skrin terminal menggunakan arahan qrencode -t ansiutf8 (dalam contoh ini, pelanggan bernama Alex@mobile digunakan):
Selepas itu, anda perlu mengimport konfigurasi dengan membaca kod QR dengan konfigurasi klien (lihat perenggan 4.2.2) dan beri nama:
Selepas berjaya mengimport konfigurasi, anda boleh mendayakan terowong VPN. Sambungan yang berjaya akan ditunjukkan oleh simpanan kunci dalam dulang sistem Android
5.2. Persediaan klien Windows
Mula-mula anda perlu memuat turun dan memasang program TunSafe untuk Windows ialah klien Wireguard untuk Windows.
5.2.1. Mencipta fail konfigurasi import
Klik kanan untuk membuat fail teks pada desktop.
5.2.2. Salin kandungan fail konfigurasi daripada pelayan
Kemudian kami kembali ke terminal Putty dan memaparkan kandungan fail konfigurasi pengguna yang dikehendaki, seperti yang diterangkan dalam langkah 4.2.1.
Seterusnya, klik kanan teks konfigurasi dalam terminal Putty, selepas pemilihan selesai, ia akan disalin secara automatik ke papan keratan.
5.2.3. Menyalin konfigurasi ke fail konfigurasi setempat
Dalam medan ini, kami kembali ke fail teks yang kami buat sebelum ini pada desktop, dan tampal teks konfigurasi ke dalamnya daripada papan keratan.
5.2.4. Menyimpan fail konfigurasi setempat
Simpan fail dengan sambungan .conf (dalam kes ini dinamakan london.conf)
5.2.5. Mengimport fail konfigurasi setempat
Seterusnya, anda perlu mengimport fail konfigurasi ke dalam program TunSafe.
5.2.6. Menyediakan sambungan VPN
Pilih fail konfigurasi ini dan sambungkan dengan mengklik butang Hubungi.
6. Menyemak sama ada sambungan berjaya
Untuk menyemak kejayaan sambungan melalui terowong VPN, anda perlu membuka pelayar dan pergi ke tapak tersebut https://2ip.ua/ru/
Alamat IP yang dipaparkan mesti sepadan dengan alamat IP yang kami terima dalam langkah 2.2.3.
Jika ya, maka terowong VPN berfungsi dengan jayanya.
Dari terminal Linux, anda boleh menyemak alamat IP anda dengan menaip:
curl http://zx2c4.com/ip
Atau anda boleh pergi ke pornhub jika anda berada di Kazakhstan.