Layanan VPN Wireguard gratis di AWS

Layanan VPN Wireguard gratis di AWS


Alasannya


Peningkatan sensor internet oleh rezim otoriter memperluas penyumbatan sumber daya internet yang berguna sehingga membuat mustahil penggunaan WEB dan pada dasarnya melanggar hak dasar untuk kebebasan berpendapat dan berekspresi yang diabadikan dalam Deklarasi Universal Hak Asasi Manusia .


Pasal 19
Setiap orang berhak atas kebebasan berpendapat dan berekspresi; hak ini termasuk kebebasan untuk memiliki pendapat tanpa campur tangan dan untuk mencari, menerima dan memberikan informasi dan ide melalui media apa pun dan tanpa memandang batas.

Berikut ini adalah instruksi 6 langkah terperinci untuk orang-orang non-IT untuk menggunakan layanan * VPN gratis berdasarkan teknologi Wireguard di infrastruktur cloud Amazon Web Services (AWS) , menggunakan akun gratis 12 bulan, pada Mesin Virtual (mesin virtual) yang dijalankan oleh Server Ubuntu 04/18 LTS.


Saya mencoba membuat langkah-langkah ini senyaman mungkin bagi orang yang jauh dari TI. Satu-satunya hal yang diperlukan adalah ketekunan dalam mengulangi langkah-langkah yang dijelaskan di bawah ini.


Catatan


Tahapan


  1. Daftarkan Akun AWS.
  2. Buat instance AWS.
  3. Hubungkan ke instance AWS.
  4. Konfigurasikan server Wireguard.
  5. Konfigurasikan Klien VPN.
  6. Verifikasi koneksi VPN.



Penulis



1. Daftarkan Akun Gratis AWS


Untuk mendaftarkan akun AWS, Anda harus mengirimkan nomor telepon dan kartu bank yang valid (Visa atau Mastercard). Saya sarankan menggunakan kartu virtual yang disediakan secara gratis oleh Yandex.Money atau dompet Qiwi .
AWS memeriksa validitas kartu dengan mengurangi $ 1 pada saat pendaftaran diikuti dengan pengembalian uang.


1.1. Membuka Konsol Manajemen AWS


Ikuti tautan: https://aws.amazon.com/ , klik tombol Buat akun AWS .


Halaman Awal Amazon AWS


1.2. Pembuatan akun AWS


Isi data dan klik tombol Lanjutkan .


Pembuatan akun AWS


1.3. Informasi kontak untuk akun AWS


Informasi kontak untuk akun AWS


1.4. Tentukan informasi penagihan


Nomor kartu, tanggal kedaluwarsa, dan nama pemegang kartu.


Tentukan informasi penagihan


1.5. Verifikasi akun


AWS memverifikasi nomor telepon Anda dan mendebit $ 1 dari kartu bank Anda. Maka Anda harus mendapatkan kode 4 digit di layar komputer dan menerima panggilan dari Amazon. Saat panggilan berlangsung, Anda perlu memasukkan kode 4 digit yang ditampilkan di layar.


Verifikasi akun


1.6. Memilih rencana dukungan AWS


Pilih paket Dasar (gratis).


Memilih rencana dukungan AWS


Masuk ke Konsol Manajemen AWS


Masuk ke Konsol Manajemen AWS


1.8. Memilih lokasi Pusat Data


Memilih lokasi Pusat Data


1.8.1. Pengujian kecepatan internet


Saya merekomendasikan Anda untuk menjalankan tes kecepatan ke Pusat Data terdekat di https://speedtest.net/ dan memilih yang terbaik untuk terhubung.


Berikut ini adalah hasil tes kecepatan dari lokasi saya:


  • Singapura
    Singapura
  • Paris
    Paris
  • Frankfurt
    Frankfurt
  • Stockholm
    Stockholm
  • London
    London

Datacenter di London menunjukkan hasil kecepatan terbaik, jadi saya memilih untuk melanjutkan.


2. Buat instance AWS


2.1 Membuat mesin virtual (contoh)


2.1.0 Ikuti langkah-langkah pembuatan instance


2.1.0.1. Buka halaman Peluncuran Instance, pilih layanan EC-2


Buka halaman Peluncuran Instance, pilih layanan EC-2


2.1.0.2. Luncurkan server virtual, yang dikenal sebagai Amazon EC-2 Instance


Luncurkan server virtual, yang dikenal sebagai Amazon EC-2 Instance


2.1.0.3. Pilih gambar mesin Amazon (Sistem Operasi) - Ubuntu Server 18.04 LTS


Pilih Gambar mesin Amazon (Sistem Operasi)


2.1.1. Pilih jenis Instance


t2.micro instance t2.micro diatur secara default dan merupakan yang tepat untuk digunakan. Klik tombol Next: Configure Instance Details untuk melanjutkan.


Pilih jenis Instance


2.1.2. Konfigurasikan detail Instance


Nonaktifkan penetapan otomatis IP publik karena Anda akan menetapkan yang statis untuk Mesin Virtual Anda. Klik tombol Next: Add Storage .


Konfigurasikan detail Instance


2.1.3. Tambahkan penyimpanan


Tentukan ukuran Drive - 16GB sudah cukup.
Klik Selanjutnya: tombol Tambahkan Tag .


Tambahkan penyimpanan


2.1.4. Tambahkan Tag


Jika Anda memiliki beberapa contoh, Anda dapat mengelompokkannya dengan tag untuk memungkinkan administrasi yang lebih baik. Namun, fungsi ini surplus. Jadi kita lewati ini dengan menekan tombol Next: Configure Security Group .


Tambahkan Tag


2.1.5. Membuka porta


Konfigurasikan firewall dengan menetapkan port terbuka. Set port terbuka disebut "Grup Keamanan". Anda perlu membuat "Grup Keamanan" baru, berikan nama, deskripsi, dan port UDP (Aturan UDP Kustom).
Di bidang Port Range, tentukan nomor port dari kisaran 49152 - 65535 port dinamis . Dalam kasus saya, saya memilih nomor port 54321.
Klik tombol Tinjau dan Luncurkan untuk menyelesaikan langkah ini.


Membuka porta


2.1.6. Tinjau pengaturan Peluncuran Instance


Tinjau dan periksa semua pengaturan untuk Peluncuran Instance, dan jika semuanya OK klik tombol Launch .


Tinjau pengaturan Peluncuran Instance


2.1.7. Membuat kunci akses


Buat atau tambahkan kunci SSH yang ada di kotak dialog yang akan Anda gunakan untuk koneksi jarak jauh ke instance Anda.
Pilih "Buat pasangan kunci baru" untuk menghasilkan kunci baru. Beri nama dan klik tombol Unduh Pasangan Kunci untuk mengunduh kunci yang dihasilkan ke drive PC. Klik tombol Luncurkan Mesin Virtual .


Membuat kunci akses


2.1.7.1. Simpan kunci pribadi (.pem)


Ketika Anda mengklik Pair Kunci Unduhan, Anda menyimpan kunci sebagai file .pem.
Untuk manajemen yang lebih baik, saya menetapkan nama wireguard-awskey.pem ke file.


Simpan kunci pribadi


2.1.8. Ringkasan Peluncuran Instance


Selanjutnya, Anda akan melihat pesan tentang peluncuran Instance yang telah Anda buat. Anda dapat mengunjungi daftar Mesin Virtual Anda dengan mengklik tombol Lihat Mesin Virtual.


Ringkasan Peluncuran Instance


2.2. Membuat alamat IP eksternal


2.2.1. Buat IP Eksternal


Berikutnya adalah pembuatan alamat IP eksternal, yang akan Anda gunakan untuk terhubung ke server VPN.
Temukan IP Elastis di kategori JARINGAN & KEAMANAN panel navigasi. Klik tombol Alokasikan alamat baru .


Buat IP Eksternal


2.2.2. Penyiapan IP eksternal


Pada langkah selanjutnya Anda harus mengaktifkan kumpulan Amazon (yang secara default), dan klik tombol Alokasikan


Penyiapan IP eksternal


2.2.3. Ikhtisar alamat IP


Jendela berikutnya menampilkan alamat IP eksternal yang ditetapkan oleh kumpulan Amazon. Tuliskan, karena Anda akan membutuhkannya untuk proses konfigurasi dan untuk pengaturan server VPN. Dalam panduan ini, sebagai contoh, saya menggunakan alamat IP 4.3.2.1 .
Setelah Anda menyelesaikan langkah ini, klik tombol Tutup .


Ikhtisar alamat IP


2.2.4. Daftar alamat IP eksternal


Selanjutnya, Anda harus mendapatkan daftar alamat IP publik Anda (IP Elastik).


Daftar alamat IP eksternal


2.2.5. Tetapkan IP eksternal untuk Mesin Virtual


Pilih alamat IP dari daftar (lihat 2.2.3), dan klik tombol kanan mouse untuk menu drop-down.
Dalam menu ini pilih alamat Rekanan untuk menetapkan IP ke Mesin Virtual yang dibuat.


Tetapkan IP eksternal untuk Mesin Virtual


2.2.6. Kaitkan alamat dengan Instance


Pada menu drop-down pilih Instance yang dibuat, dan klik tombol Associate .


Kaitkan alamat dengan Instance


2.2.7. Ringkasan penetapan IP eksternal


Anda sekarang harus memiliki Mesin Virtual yang dibuat dengan alamat IP publik yang ditugaskan. Ini memungkinkan Anda untuk membuat koneksi jarak jauh ke Mesin Virtual dari luar (dari PC Anda) melalui SSH.


Ringkasan penetapan IP eksternal


3. Hubungkan ke instance AWS


SSH adalah protokol aman untuk mengelola perangkat komputer jarak jauh.


3.1. Terhubung dari PC Windows melalui SSH


Unduh dan pasang Putty untuk membuat koneksi dari PC Windows.


3.1.1. Impor Kunci Pribadi untuk Putty


3.1.1.1. Impor kunci AWS ke Putty


Luncurkan utilitas PuTTYgen untuk mencocokkan kunci AWS Anda dalam format .pem dengan format .ppk yang sesuai untuk Putty.
Untuk melakukan ini pilih Konversi -> Kunci Impor dari menu atas.


Impor kunci AWS ke Putty


3.1.1.2. Kunci AWS dalam format PEM


Selanjutnya, pilih kunci yang Anda tangani di 2.1.7.1
Dalam kasus saya ini adalah wireguard-awskey.pem .


Kunci AWS dalam format PEM


3.1.1.3. Atur parameter Impor kunci


Pada langkah ini, Anda perlu menentukan parameter impor Kunci - komentar kunci dan frasa sandi kunci . Anda akan membutuhkan ini di setiap koneksi. Juga melindungi kunci itu sendiri dengan kata sandi dari akses yang tidak sah.
Anda dapat melewati penugasan kata sandi. Tetapi ini akan membuat koneksi Anda kurang aman jika kuncinya jatuh ke tangan yang salah.
Setelah Anda selesai, klik tombol Save private key .


Atur parameter Impor kunci


3.1.1.4. Simpan kunci .ppk yang diimpor


Anda dapat menyimpan kunci pribadi Anda dalam format .ppk yang cocok untuk Putty dari kotak dialog simpan file.
Tentukan nama kunci (dalam kasus saya, wireguard-awskey.ppk ) dan klik tombol Simpan .


Simpan kunci .ppk yang diimpor


3.1.2. Buat dan konfigurasikan koneksi di Putty


3.1.2.1. Buat koneksi


Jalankan program Putty, pilih kategori Sesi (terbuka secara default) dan di bidang Nama Host masukkan alamat IP publik dari server. Saya mengingatkan bahwa Anda mendapatkan alamat IP publik Anda di langkah 2.2.3 .
Berikan nama apa pun untuk koneksi di bidang Sesi Tersimpan (bagi saya itu adalah wireguard-aws-london ). Klik tombol Simpan .


Buat koneksi


3.1.2.2. Tetapkan login otomatis pengguna


Pilih subkategori Data dari kategori Koneksi . Masukkan nama pengguna Login otomatis ubuntu di bidang Nama pengguna login otomatis . ( ubuntu adalah pengguna instance standar pada AWS dengan Ubuntu).


Tetapkan login otomatis pengguna


3.1.2.3. Gunakan kunci pribadi untuk koneksi SSH


Ikuti jalur Connection -> SSH -> Auth subkategori dan klik tombol Browse untuk memilih file kunci pribadi.


Gunakan kunci pribadi untuk koneksi SSH


3.1.2.4. Buka file kunci pribadi


Tentukan kunci yang Anda impor sebelumnya pada langkah 3.1.1.4 - wireguard-awskey.ppk , dan klik tombol Open .


Buka file kunci pribadi


3.1.2.5. Simpan perubahan dan luncurkan koneksi jarak jauh SSH


Dalam kategori Sesi jendela konfigurasi Putty tekan tombol Simpan untuk menerapkan semua perubahan yang Anda buat ( 3.1.2.2 - 3.1.2.4 ).
Klik tombol Open untuk meluncurkan koneksi jarak jauh SSH siap-pergi.


Simpan perubahan dan luncurkan koneksi jarak jauh SSH


3.1.2.7. Tetapkan kepercayaan di antara tuan rumah


Pada koneksi pertama, Anda harus mendapatkan peringatan tentang kurangnya kepercayaan antara dua komputer (host). Sistem menanyakan apakah Anda mempercayai host jarak jauh. Klik Ya untuk menambahkan host jarak jauh ke daftar kepercayaan.


Tetapkan kepercayaan di antara tuan rumah


3.1.2.8. Masukkan kata sandi untuk mengaktifkan kunci


Di jendela terminal Putty masukkan kata sandi utama yang Anda atur pada langkah
3.1.1.3 . Saat memasukkan kata sandi itu tidak menunjukkan tindakan apa pun di layar. Jangan khawatir, jika Anda melakukan kesalahan, Anda dapat menggunakan tombol backspace.


Masukkan kata sandi untuk mengaktifkan kunci


3.1.2.9. Koneksi yang berhasil


Setelah Anda memasukkan kata sandi yang benar, Anda akan mendapatkan teks sambutan. Ini memberi tahu Anda bahwa sistem jarak jauh siap untuk menjalankan perintah Anda.


Koneksi yang berhasil


4. Konfigurasikan server Wireguard


Di bawah ini adalah instruksi untuk instalasi dan manajemen Wireguard yang digerakkan oleh skrip.
Saya menyimpan versi terbaru dari instruksi di repositori: https://github.com/isystem-io/wireguard-aws


4.1. Instal wireguard


Masukkan perintah berikut di terminal Putty.
Anda dapat menyalinnya ke clipboard, dan menempel di terminal dengan menekan tombol mouse kanan.


4.1.1. Kloning repositori skrip


Mengkloning repositori skrip instalasi Wireguard:


 git clone https://github.com/pprometey/wireguard_aws.git wireguard_aws 

4.1.2. Direktori penyimpanan skrip


Pergi ke direktori repositori hasil kloning:


 cd wireguard_aws 

4.1.3 Skrip inisialisasi


Jalankan skrip instalasi Wireguard di bawah hak admin (pengguna root):


 sudo ./initial.sh 

Skrip meminta Anda untuk memberikan data berikut untuk mengonfigurasi Wireguard.


4.1.3.1. Setel titik akhir koneksi (IP: port)


Masukkan alamat IP eksternal (lihat 2.2.3 ) dan port terbuka (lihat 2.1.5 ) dari server Wireguard. Gunakan format IP berikut : port , misalnya, 4.3.2.1:54321 . Tekan tombol Enter untuk konfirmasi.


 Enter the endpoint (external ip and port) in format[ipv4:port] (eg 4.3.2.1:54321): 4.3.2.1:54321 

4.1.3.2. Tetapkan alamat IP internal


Masukkan alamat IP server Wireguard di subnet VPN yang aman. Jika Anda tidak tahu apa itu, tekan tombol Enter untuk menetapkan nilai default ( 10.50.0.1 ).


 Enter the server address in the VPN subnet (CIDR format) ([ENTER] set to default: 10.50.0.1): 

4.1.3.3. Tentukan Server DNS


Masukkan alamat IP server DNS, atau tekan tombol Enter untuk menetapkan nilai default 1.1.1.1 (Cloudflare public DNS).


 Enter the ip address of the server DNS (CIDR format) ([ENTER] set to default: 1.1.1.1): 

4.1.3.4. Tentukan Antarmuka WAN


Masukkan nama antarmuka jaringan eksternal. Antarmuka ini akan merasakan antarmuka jaringan internal VPN.
Tekan Enter untuk mengatur default untuk AWS ( eth0 )


 Enter the name of the WAN network interface ([ENTER] set to default: eth0): 

4.1.3.5. Tentukan nama pelanggan


Server Wireguard VPN tidak dapat memulai sampai Anda menambahkan setidaknya satu klien. Masukkan nama pengguna VPN.
Dalam kasus saya, saya memasukkan nama Alex @ mobil.


 Enter VPN user name: Alex@mobile 

Setelah itu, Anda harus menerima kode QR untuk konfigurasi klien yang ditambahkan. QR ini menerapkan konfigurasi pengguna untuk klien seluler Wireguard di Android atau iOS.
Teks dari file konfigurasi juga ditampilkan dengan QR. Anda akan membutuhkan dalam hal konfigurasi manual klien seperti yang dibahas di bawah ini.


Menyelesaikan instalasi Wireguard


4.2. Tambahkan pengguna VPN baru


Untuk menambah pengguna baru, Anda perlu menjalankan skrip add-client.sh di terminal


 sudo ./add-client.sh 

Script meminta nama pengguna:


 Enter VPN user name: 

Nama pengguna dapat digunakan sebagai parameter skrip (dalam kasus saya, nama pengguna adalah Alex @ mobile):


 sudo ./add-client.sh Alex@mobile 

Eksekusi skrip mengarah ke pembuatan file konfigurasi klien di direktori klien.
File konfigurasi klien: /etc/wireguard/clients/{ClientName}/{ClientName}.conf .
Direktori klien:
/etc/wireguard/clients/{ClientName}


4.2.1. File konfigurasi pengguna


Jalankan perintah cat untuk mendapatkan konten file .conf untuk konfigurasi manual klien.


 sudo cat/etc/wireguard/clients/Alex@mobile/Alex@mobile.conf 

hasil eksekusi perintah sebagai berikut:


 [Interface] PrivateKey = oDMWr0toPVCvgKt5oncLLRfHRit + jbzT5cshNUi8zlM = Address = 10.50.0.2/32 DNS = 1.1.1.1 [Peer] PublicKey = mLnd + mul15U0EP6jCH5MRhIAjsfKYuIU / j5ml8Z2SEk = PresharedKey = wjXdcf8CG29Scmnl5D97N46PhVn1jecioaXjdvrEkAc = AllowedIPs = 0.0.0.0/0, :: / 0 Endpoint = 4.3.2.1:54321 

deskripsi file konfigurasi klien:


 [Interface] PrivateKey = Client's private key Address = Client IP Address DNS = DNS used by the client [Peer] PublicKey = Public key server PresharedKey = Shared server and client key AllowedIPs = Allowed addresses for connection (all - 0.0.0.0/0, :: / 0) Endpoint = IP address and port for connection 

4.2.2. Konfigurasi klien dengan kode QR


Jalankan perintah qrencode -t ansiutf8 untuk mendapatkan QR dari konfigurasi klien yang dibuat. (dalam kasus saya, nama klien baru adalah Alex @ ponsel).


 sudo cat /etc/wireguard/clients/Alex@mobile/Alex@mobile.conf | qrencode -t ansiutf8 

5. Konfigurasikan Klien VPN


5.1. Penyiapan klien seluler Android


Unduh klien seluler Wireguard untuk Android dari toko GooglePlay resmi .


Pindai kode QR untuk mengimpor konfigurasi klien (lihat 4.2.2 ) dan berikan nama.


Penyiapan klien seluler Android


Setelah mengimpor konfigurasi, Anda dapat mengaktifkan terowongan VPN. Simbol kunci kecil di sistem Android menegaskan koneksi VPN.


Koneksi Wireguard berhasil dibuat di Android


5.2. Pengaturan Klien Windows


Unduh dan instal TunSafe , yang merupakan klien Wireguard untuk Windows.


5.2.1. Buat file teks lokal untuk mengimpor konfigurasi


Buat file teks dummy di desktop PC Anda.


Membuat file teks


5.2.2. Salin file konfigurasi dari server


Salin konten file konfigurasi dari server.
Kemudian, kembali ke terminal Putty dan tampilkan konten file konfigurasi pengguna (lihat 4.2.1 ).
Gunakan klik kanan mouse untuk menyalin teks konfigurasi di terminal Putty.


Menyalin teks dengan konfigurasi


5.2.3. Rekatkan teks konfigurasi ke file teks lokal


Rekatkan teks konfigurasi dari clipboard ke file teks dummy yang kami buat sebelumnya di desktop (lihat 5.2.1 ).


Rekatkan teks dengan konfigurasi


5.2.4. Simpan file konfigurasi lokal


Simpan file teks sebagai format london.conf (dalam kasus saya sebagai london.conf )


Simpan file konfigurasi lokal


5.2.5. Impor file konfigurasi lokal


Impor file konfigurasi ke program TunSafe.


Impor file konfigurasi lokal ke TunSafe


5.2.6. Buat koneksi VPN


Dalam program TunSafe pilih file konfigurasi yang diimpor dan klik tombol Connect .


Buat koneksi VPN


6. Verifikasi koneksi VPN


Gunakan https://2ip.ua/en/ sumber daya untuk memverifikasi koneksi terowongan VPN. Jika alamat IP yang ditampilkan cocok dengan yang kami dapatkan di 2.2.3 , maka terowongan VPN sudah aktif.


Menghubungkan ke server VPN melalui TunSafe


Di terminal Linux, Anda dapat memeriksa alamat IP Anda dengan menjalankan perintah berikut:


 curl http://zx2c4.com/ip 

Source: https://habr.com/ru/post/id449234/


All Articles