Anonim

Mengapa Menggunakan VPN Untuk Mengakses Rumah Anda

tautan langsung

  • Mengapa Menggunakan VPN Untuk Mengakses Rumah Anda
  • Mengatur Pi
    • Instal Raspbian
  • Siapkan OpenVPN
    • Otoritas Sertifikat
    • Buat Beberapa Kunci
    • Konfigurasi Server
    • Mulai Server
  • Pengaturan Klien
    • Konfigurasi Klien
  • Penerusan Port
  • Terhubung ke Klien
  • Pikiran Penutup

Ada banyak alasan mengapa Anda ingin mengakses jaringan rumah dari jarak jauh, dan cara terbaik untuk melakukannya adalah dengan server VPN. Beberapa router sebenarnya membiarkan Anda mengatur server VPN secara langsung di dalam router, tetapi dalam banyak kasus, Anda perlu mengaturnya sendiri.

Raspberry Pi adalah cara yang bagus untuk mencapai ini. Mereka tidak memerlukan banyak energi untuk menjalankan, dan mereka memiliki kekuatan yang cukup untuk menjalankan server VPN. Anda dapat mengatur satu di samping router Anda dan pada dasarnya melupakannya.

Ketika Anda memiliki akses ke jaringan rumah Anda dari jarak jauh, Anda bisa mendapatkan file Anda dari mana saja. Anda dapat menjalankan komputer di rumah Anda dari jarak jauh. Anda bahkan dapat menggunakan koneksi VPN rumah Anda dari jalan. Pengaturan seperti ini memungkinkan ponsel, tablet, atau laptop Anda bertindak seperti di rumah dari mana saja.

Mengatur Pi

Sebelum Anda mulai mengatur VPN, Anda harus mengatur Raspberry Pi Anda. Yang terbaik adalah mengatur Pi dengan case dan kartu memori ukuran yang layak, 16GB harus lebih dari cukup. Jika memungkinkan, sambungkan Pi Anda ke router Anda dengan kabel Ethernet. Ini akan meminimalkan penundaan jaringan.

Instal Raspbian

Sistem operasi terbaik untuk digunakan pada Pi Anda adalah Raspbian. Ini adalah pilihan default yang dikeluarkan oleh yayasan Raspberry Pi, dan didasarkan pada Debian, salah satu versi Linux yang paling aman dan stabil yang tersedia.

Buka halaman unduhan Rasbian, dan ambil versi terbaru. Anda dapat menggunakan versi "Lite" di sini, karena Anda sebenarnya tidak memerlukan desktop grafis.

Saat mengunduh, dapatkan Etcher versi terbaru untuk sistem operasi Anda. Setelah unduhan selesai, ekstrak gambar Raspbian. Lalu, buka Etcher. Pilih gambar Raspbian dari tempat Anda mengekstraknya. Pilih kartu SD Anda (Masukkan dulu). Terakhir, tulis gambar ke kartu.

Tinggalkan kartu SD di komputer Anda setelah selesai. Buka pengelola file dan ramban ke kartu. Anda akan melihat beberapa partisi yang berbeda. Cari partisi "boot". Ini adalah file dengan "kernel.img" di dalamnya. Buat file teks kosong di partisi "boot", dan sebut saja "ssh" tanpa ekstensi file.

Anda akhirnya dapat menghubungkan Pi Anda. Pastikan Anda menghubungkannya dengan yang terakhir. Anda tidak akan membutuhkan layar, keyboard, atau mouse. Anda akan mengakses Raspberry Pi dari jarak jauh melalui jaringan Anda.

Beri Pi beberapa menit untuk mempersiapkan diri. Kemudian, buka browser web dan navigasikan ke layar manajemen router Anda. Temukan Raspberry Pi dan catat alamat IP-nya.

Baik Anda menggunakan Windows, Linux, atau Mac, buka OpenSSH. Terhubung ke Raspberry Pi dengan SSH.

$ ssh

Jelas, gunakan alamat IP sebenarnya dari Pi. Nama pengguna selalu pi, dan kata sandinya raspberry.

Siapkan OpenVPN

OpenVPN tidak bisa diatur dengan mudah sebagai server. Berita baiknya adalah, Anda hanya perlu melakukannya sekali saja. Jadi, sebelum Anda menggali, pastikan bahwa Raspbian benar-benar terkini.

$ sudo apt update $ sudo apt upgrade

Setelah pembaruan selesai, Anda dapat menginstal OpenVPN dan utilitas sertifikat yang Anda butuhkan.

$ sudo untuk menginstal openvpn easy-rsa

Otoritas Sertifikat

Untuk mengotentikasi perangkat Anda ketika mereka mencoba terhubung ke server, Anda perlu mengatur otoritas sertifikat untuk membuat kunci sigining. Kunci-kunci ini akan memastikan bahwa hanya perangkat Anda yang dapat terhubung ke jaringan rumah Anda.

Pertama, buat direktori untuk sertifikat Anda. Pindah ke direktori itu.

$ sudo make-cadir / etc / openvpn / certs $ cd / etc / openvpn / certs

Cari-cari file konfigurasi OpenSSL. Kemudian, tautkan yang terbaru dengan openssl.cnf.

$ ls | grep -i openssl $ sudo ln -s openssl-1.0.0.cnf openssl.cnf

Dalam folder "sertifikat" yang sama adalah file yang disebut "vars." Buka file itu dengan editor teks Anda. Nano adalah default, tetapi jangan ragu untuk menginstal Vim, jika Anda lebih nyaman dengannya.

Temukan variabel KEY_SIZE terlebih dahulu. Ini diatur ke 2048 secara default. Ubah ke 4096.

ekspor KEY_SIZE = 4096

Blok utama yang harus Anda tangani menetapkan informasi tentang otoritas sertifikat Anda. Ini membantu jika info ini akurat, tetapi apa pun yang dapat Anda ingat baik-baik saja.

export KEY_COUNTRY = "AS" export KEY_PROVINCE = "CA" export KEY_CITY = "SanFrancisco" export KEY_ORG = "Fort-Funston" ekspor KEY_EMAIL = "" export KEY_OU = "ekspor KEY_OU =" MyOrganizationalUnit "export KEY_NAME =" HomeVPN "

Ketika Anda memiliki segalanya, simpan dan keluar.

Paket Easy-RSA yang Anda instal sebelumnya berisi banyak skrip yang membantu mengatur semua yang Anda butuhkan. Anda hanya perlu menjalankannya. Mulai dengan menambahkan file "vars" sebagai sumber. Itu akan memuat semua variabel yang baru saja Anda atur.

$ sudo source ./vars

Selanjutnya, bersihkan kunci. Anda tidak memilikinya, jadi jangan khawatir tentang pesan yang memberi tahu Anda bahwa kunci Anda akan dihapus.

$ sudo ./clean-install

Terakhir, bangun otoritas sertifikat Anda. Anda telah menetapkan default, jadi Anda bisa menerima default yang disajikannya. Ingatlah untuk menetapkan kata sandi yang kuat dan menjawab "ya" untuk dua pertanyaan terakhir, mengikuti kata sandi.

$ sudo ./build-ca

Buat Beberapa Kunci

Anda mengalami semua masalah untuk mengatur otoritas sertifikat sehingga Anda dapat menandatangani kunci. Sekarang, saatnya untuk membuatnya. Mulailah dengan membuat kunci untuk server Anda.

$ sudo ./build-key-server server

Selanjutnya, buat Diffie-Hellman PEM. Itulah yang digunakan OpenVPN untuk mengamankan koneksi klien Anda ke server.

$ sudo openssl dhparam 4096> /etc/openvpn/dh4096.pem

Kunci terakhir yang Anda butuhkan dari sekarang disebut kunci HMAC. OpenVPN menggunakan kunci ini untuk menandatangani setiap paket informasi yang dipertukarkan antara klien dan server. Ini membantu untuk mencegah beberapa jenis serangan pada koneksi.

$ sudo openvpn --genkey --secret /etc/openvpn/certs/keys/ta.key

Konfigurasi Server

Anda memiliki kunci. Bagian berikutnya dalam pengaturan OpenVPN adalah konfigurasi server itu sendiri. Untungnya, tidak banyak yang perlu Anda lakukan di sini. Debian menyediakan konfigurasi basis yang dapat Anda gunakan untuk memulai. Jadi, mulailah dengan mendapatkan file konfigurasi itu.

$ sudo gunzip -c /usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz> /etc/openvpn/server.conf

Gunakan editor teks Anda lagi untuk membuka /etc/openvpn/server.conf. Hal pertama yang perlu Anda temukan adalah file ca, cert, dan kunci. Anda perlu mengaturnya agar sesuai dengan lokasi sebenarnya dari file yang Anda buat, yang semuanya ada di / etc / openvpn / certs / keys.

ca /etc/openvpn/certs/keys/ca.crt cert /etc/openvpn/certs/keys/server.crt key /etc/openvpn/certs/keys/server.key # File ini harus dirahasiakan

Temukan pengaturan dh, dan ubah untuk mencocokkan .pem Diffie-Hellman yang Anda buat.

dh dh4096.pem

Tetapkan jalur untuk kunci HMAC Anda juga.

tls-auth /etc/openvpn/certs/keys/ta.key 0

Temukan sandi dan pastikan cocok dengan contoh di bawah ini.

cipher AES-256-CBC

Beberapa opsi berikutnya ada di sana, tetapi mereka berkomentar dengan; Hapus tanda titik koma di depan setiap opsi untuk mengaktifkannya.

tekan "redirect-gateway def1 bypass-dhcp" tekan "dhcp-option DNS 208.67.222.222" tekan "dhcp-option DNS 208.67.220.220"

Cari opsi pengguna dan grup. Batalkan komentar mereka, dan ubah pengguna menjadi "openvpn."

pengguna openvpn grup nogroup

Akhirnya, dua baris terakhir ini tidak dalam konfigurasi default. Anda harus menambahkannya di akhir file.

Tetapkan intisari otentikasi untuk menentukan enkripsi yang lebih kuat untuk otentikasi pengguna.

# Otentikasi Digest auth SHA512

Kemudian, batasi cipher yang hanya bisa digunakan oleh OpenVPN. Ini membantu membatasi kemungkinan serangan pada cipher yang lemah.

# Batasi Sifel tls-sandi TLS-DHE-RSA-WITH-AES-256-GCM-SHA384: TLS-DHE-RSA-WITH-AES-128-GCM-SHA256: TLS-DHE-RSA-WITH-AES-256- CBC-SHA: TLS-DHE-RSA-WITH-CAMELLIA-256-CBC-SHA: TLS-DHE-RSA-WITH-AES-128-CBC-SHA: TLS-DHE-RSA-WITH-CAMELLIA-128-CBC- SHA

Itu saja untuk konfigurasi. Simpan file dan keluar.

Mulai Server

Sebelum Anda dapat memulai server, Anda harus membuat pengguna openvpn yang Anda tentukan.

$ sudo adduser --system --shell / usr / sbin / nologin --no-create-home openvpn

Ini adalah pengguna khusus hanya untuk menjalankan OpenVPN, dan tidak akan melakukan hal lain.

Sekarang, nyalakan server.

$ sudo systemctl start openvpn $ sudo systemctl start

Pastikan keduanya berjalan

$ sudo systemctl status openvpn * .service

Jika semuanya terlihat baik, aktifkan saat startup.

$ sudo systemctl aktifkan openvpn $ sudo systemctl aktifkan

Pengaturan Klien

Server Anda sekarang diatur dan berjalan. Selanjutnya, Anda perlu mengatur konfigurasi klien Anda. Ini adalah konfigurasi yang akan Anda gunakan untuk menghubungkan perangkat Anda ke server Anda. Kembali ke folder sertifikat dan bersiaplah untuk membangun kunci klien. Anda dapat memilih untuk membuat kunci terpisah untuk setiap klien atau satu kunci untuk semua klien. Untuk digunakan di rumah, satu kunci harus baik-baik saja.

$ cd / etc / openvpn / certs $ sudo source ./vars $ sudo ./build-key client

Prosesnya hampir identik dengan server satu, jadi ikuti prosedur yang sama.

Konfigurasi Klien

Konfigurasi untuk klien sangat mirip dengan yang untuk server. Sekali lagi, Anda memiliki template yang sudah jadi untuk mendasari konfigurasi Anda. Anda hanya perlu memodifikasinya agar sesuai dengan server.

Ubah ke direktori klien. Kemudian, buka kemasan konfigurasi sampel.

$ cd / etc / openvpn / client $ sudo cp /usr/share/doc/openvpn/examples/sample-config-files/client.conf /etc/openvpn/client/client.ovpn

Buka file client.ovpn dengan editor teks Anda. Kemudian, cari opsi jarak jauh. Dengan asumsi Anda belum menggunakan VPN, pencarian Google "Apa IP saya." Ambil alamat yang ditampilkannya, dan atur alamat IP jarak jauh untuk itu. Tinggalkan nomor porta.

remote 107.150.28.83 1194 # IP yang ironisnya adalah VPN

Ubah sertifikat untuk mencerminkan yang Anda buat, sama seperti yang Anda lakukan dengan server.

ca ca.crt cert client.crt key client.key

Temukan opsi pengguna, dan hapus komentarnya. Tidak masalah menjalankan klien sebagai bukan siapa-siapa.

pengguna grup nogroup siapa pun

Batalkan komentar pada opsi tls-auth untuk HMAC.

tls-auth ta.key 1

Selanjutnya, cari opsi cipher dan pastikan cocok dengan server.

cipher AES-256-CBC

Kemudian, tambahkan saja pembatasan cerna dan cipher otentikasi di bagian bawah file.

# Otentikasi Digest auth SHA512 # Pembatasan Cipher tls-cipher TLS-DHE-RSA-WITH-AES-256-GCM-SHA384: TLS-DHE-RSA-WITH-AES-128-GCM-SHA256: TLS-DHE-RSA-WITH -AES-256-CBC-SHA: TLS-DHE-RSA-WITH-CAMELLIA-256-CBC-SHA: TLS-DHE-RSA-WITH-AES-128-CBC-SHA: TLS-DHE-RSA-WITH-CAMELLIA -128-CBC-SHA

Ketika semuanya terlihat benar, simpan file dan keluar. Gunakan tar untuk mengemas konfigurasi dan sertifikat, sehingga Anda dapat mengirimkannya ke klien.

$ sudo tar cJf /etc/openvpn/clients/client.tar.xz -C / etc / openvpn / certs / keys ca.crt client.crt client.key ta.key -C /etc/openvpn/clients/client.ovpn

Transfer paket itu ke klien sesuai keinginan Anda. SFTP, FTP, dan USB drive adalah semua opsi hebat.

Penerusan Port

Agar semua ini berfungsi, Anda perlu mengkonfigurasi router Anda untuk meneruskan lalu lintas VPN yang masuk ke Pi. Jika Anda sudah menggunakan VPN, Anda perlu memastikan bahwa Anda tidak terhubung pada port yang sama. Jika ya, ubah port pada konfigurasi klien dan server Anda.

Sambungkan ke antarmuka web router Anda dengan mengetikkan alamat IP-nya di browser Anda.

Setiap router berbeda. Meski begitu, mereka semua harus memiliki beberapa bentuk fungsi ini. Temukan di router Anda.

Setup pada dasarnya sama pada setiap router. Masukkan port awal dan akhir. Mereka harus sama satu sama lain dan yang Anda atur di konfigurasi Anda. Kemudian, untuk alamat IP, atur itu ke IP Raspberry Pi Anda. Simpan perubahan Anda.

Terhubung ke Klien

Setiap klien berbeda, jadi tidak ada solusi universal. Jika Anda menggunakan Windows, Anda akan memerlukan klien Windows OpenVPN .

Di Android, Anda dapat membuka tarball, dan mentransfer kunci ke ponsel Anda. Kemudian, instal aplikasi OpenVPN. Buka aplikasi, dan masukkan informasi dari file konfigurasi Anda. Kemudian pilih kunci Anda.

Di Linux, Anda perlu menginstal OpenVPN seperti yang Anda lakukan pada server.

$ sudo untuk menginstal openvpn

Kemudian, ubah ke / etc / openvpn, dan buka paket tarball yang Anda kirim.

$ cd / etc / openvpn $ sudo tar xJf /path/to/client.tar.xz

Ganti nama file klien.

$ sudo mv client.ovpn client.conf

Jangan memulai klien. Itu akan gagal. Anda harus mengaktifkan port forwarding pada router Anda terlebih dahulu.

Pikiran Penutup

Anda sekarang harus memiliki pengaturan yang berfungsi. Klien Anda akan terhubung langsung melalui router Anda ke Pi. Dari sana, Anda dapat berbagi dan terhubung melalui jaringan virtual Anda, selama semua perangkat terhubung ke VPN. Tidak ada batasan, jadi Anda selalu dapat menghubungkan semua komputer Anda ke Pi VPN.

Ubah pi raspberry menjadi vpn untuk mengakses jaringan Anda dari mana saja