Skip to content

emka.web.id

menulis pengetahuan – merekam peradaban

Menu
  • Home
  • Tutorial
  • Makalah
  • Ke-NU-an
  • Kabar
  • Search
Menu

Cara Membuat Backup Server dengan Restic REST Server di Linux

Posted on May 18, 2024

Ingin membackup data dengan aman dan efisien? Restic hadir sebagai solusi tepat! Ini adalah sistem backup modern yang mendukung deduplikasi dan enkripsi. Tak hanya itu, Restic bisa menyimpan backup secara lokal maupun remote, melalui koneksi SFTP atau berbagai layanan penyimpanan populer seperti Amazon S3 dan Google Cloud Storage.

Lebih menarik lagi, Restic REST Server memungkinkan Anda untuk melakukan push backup menggunakan protokol HTTP atau HTTPS ke server jarak jauh.

Penasaran bagaimana cara menggunakannya? Artikel ini akan membahas langkah demi langkah deploy dan konfigurasi Restic REST Server menggunakan Docker di Linux.

Yang Akan Anda Pelajari:

  • Deploy Restic REST Server menggunakan Docker di Linux
  • Konfigurasi autentikasi dan enkripsi SSL/TLS
  • Instalasi dan konfigurasi Restic REST Server di Linux

Persiapan Awal

Sebelum memulai, pastikan Anda memiliki:

  • Sistem operasi Linux (berjalan pada semua distro)
  • Docker atau Podman terinstall

Membuat Direktori dan Kredensial

Pertama, kita perlu membuat direktori untuk menyimpan repository dan data backup. Sebagai contoh, kita akan buat direktori bernama “data” di dalam folder HOME. Direktori ini nantinya akan kita mount ke dalam container.

$ mkdir ~/data

Restic REST Server memiliki fitur autentikasi default untuk mencegah akses tidak sah. Autentikasi ini menggunakan file .htpasswd yang akan dicari oleh server di direktori penyimpanan snapshot.

Untuk membuat kredensial autentikasi, kita bisa menggunakan utilitas htpasswd. Pada Fedora dan distro berbasis Fedora, utilitas ini tersedia di package httpd-tools. Install dengan perintah berikut:

$ sudo dnf install httpd-tools

Sementara di Debian dan distro berbasis Debian, gunakan perintah ini:

$ sudo apt-get update && sudo apt-get install apache2-utils

Selanjutnya, untuk membuat file .htpasswd, jalankan perintah:

$ htpasswd -B -c ~/data/.htpasswd resticuser

Perintah ini akan membuat konfigurasi untuk mengakses server dengan username “resticuser”. Jika Anda tidak memasukkan password saat diminta, Anda akan diminta memasukkannya secara manual.

Catatan:

  • Opsi -B akan menggunakan algoritma bcrypt untuk hashing password, yang terkenal keamanannya.
  • Direkomendasikan untuk menyimpan password dengan aman. Kehilangan password berarti kehilangan akses ke data backup Anda.

Menjalankan Restic REST Server dengan Docker

Restic REST Server merupakan open source software yang ditulis dengan bahasa Go. Cara termudah untuk deploy Restic REST Server adalah menggunakan Docker (atau Podman). Kita bisa menggunakan image server yang tersedia di DockerHub.

Untuk membuat dan menjalankan container Restic REST Server, gunakan perintah berikut:

$ docker run -p 8000:8000 -v ~/data:/data:z --name restic_rest_server docker.io/restic/rest-server

Mari bahas opsi yang digunakan pada perintah tersebut:

  • Secara default, REST Server di dalam container berjalan pada port 8000. Opsi -p digunakan untuk mapping port 8000 di host ke port 8000 di dalam container. Anda bisa menggunakan port lain, tetapi disarankan untuk menggunakan port privileged (di atas 1024) jika menjalankan Docker tanpa akses root.
  • Opsi -v digunakan untuk melakukan bind mount direktori ~/data di host ke direktori /data di dalam container. Ini penting untuk membuat backup data menjadi persistent.
  • Opsi :z (digunakan jika SELinux aktif) akan mengubah context direktori yang di-mount sehingga bisa diakses dari dalam container.

Inisialisasi Repository

Setelah menjalankan container, kita bisa menginisialisasi repository Restic menggunakan perintah berikut:

restic -r rest:http://resticuser:resticpassword@localhost:8000 init

Jika berjalan dengan lancar, Anda akan melihat pesan bahwa repository berhasil dibuat.

Perhatian: Sangat tidak disarankan untuk mengirimkan kredensial melalui koneksi HTTP biasa. Untuk keamanan lebih baik, disarankan menggunakan koneksi HTTPS dengan sertifikat SSL/TLS.

Menjalankan Server dengan SSL/TLS:

  1. Salin file public_key dan private_key ke direktori ~/data di dalam container.
  2. Jalankan container dengan opsi --tls melalui variable environment OPTIONS:
docker run -p 8000:8000 -v ~/data:/data:z -e OPTIONS="--tls" --name restic_rest_server docker.io/restic/rest-server

Menggunakan Klien Restic:

  1. Saat mengakses repository melalui HTTPS, gunakan opsi --insecure-tls pada klien Restic untuk mengabaikan verifikasi sertifikat self-signed:
restic -r rest:https://resticuser:resticpassword@localhost:8000 --insecure-tls init

Tips Tambahan:

  • Untuk backup yang lebih efisien, gunakan append-only connection dengan mengaktifkan opsi --append-only pada klien Restic.
  • Anda dapat menggunakan Docker Compose untuk deploy dan konfigurasi server dengan lebih mudah.
  • Selalu jaga keamanan password dan private key Anda.

Kesimpulan

Restic REST Server menawarkan solusi backup modern dan aman untuk data Anda. Dengan Docker, deploy dan konfigurasi server menjadi mudah dan cepat. Gunakan tutorial ini sebagai panduan awal untuk memulai backup data Anda dengan Restic REST Server.

Sumber Daya:

  • Restic Documentation: https://restic.net/
  • Docker Installation: https://docs.docker.com/get-docker/
  • Let’s Encrypt: https://letsencrypt.org/getting-started/

Terbaru

  • Inilah 6 SMA Swasta Terbanyak Masuk PTN dan Kampus Luar Negeri
  • Cara Didik Anak agar Disiplin dan Bertanggung Jawab atas Tindakannya
  • Apa itu Badan Otorita Pengelola Pantai Utara Jawa (BOP Pantura)?
  • Contoh Makalah K3: Apa itu Sertifikasi K3?
  • Cara Cek Bansos September 2025
  • Ini Jadwal Kereta Bandara Adi Soemarmo Agustus 2025
  • Apa itu Jabatan Fungsional Penggerak Swadaya Masyarakat Ahli Pertama?
  • Cagongjok: Budaya Memalukan Korea, Ketika Kafe Jadi Kantor dan Ruang Belajar
  • Pengertian Anomali Brainrot
  • Penemuan DNA Denisovan Manusia Purba Amerika
  • SpaceX Akan Luncurkan Pesawat Rahasia X-37B Space Force Amerika
  • Biawak: Antara Hama dan Penjaga Ekosistem
  • Ini Profil Komjend Dedi Prasetyo Wakapolri Baru
  • Fraksi PKB DPRD Pati Tetap Selidiki Dugaan Pelanggaran Kasus RSUD Pati
  • Fraksi PKB Kritik Penggunaan Anggaran Prabowo, Fokus pada Fasilitas Publik
  • Inilah Syarat Nilai Minimal Raport Pendaftar SNBP 2026
  • Kemendikdasmen Sangkal Isu PPG Guru Tertentu Tidak Ada Lagi
  • Ini Struktur Kurikulum Kelas 5 SD/MI Sederajat Menurut Permendikdasmen No 13 Tahun 2025
  • Ini Struktur Kurikulum Kelas 3 dan 4 SD/MI Menurut Permendikdasmen No 13 Tahun 2025
  • Inilah Struktur Kurikulum Kelas 3 dan 4 SD/MI Menurut Permendikdasmen No 13 Tahun 2025
  • Ilmuwan Colorado University Bikin Particle Collider Mini, Bisa Atasi Kanker
  • Inilah Susunan Upacara Hari Kemerdekaan RI 17 Agustus di Istana Negara
  • FAKTA: Soeharto Masih Komandan PETA Saat Proklamasi Kemerdekaan RI 17 Agustus 1945
  • Materi Tes CPNS 2025: Fungsi dan Wewenang DPR/DPD
  • Cara Menjadi Siswa Eligible Daftar SNBP 2026 Terbaru!
  • Pendaftaran PPG Guru Tertentu 2025 Diperpanjang, Ini Syarat dan Caranya!
  • Struktur Kurikulum Kelas 2 SD/MI Menurut Permendikdasmen No 13 Tahun 2025
  • Ini Struktur Kurikulum Kelas 1 SD/MI Menurut Permendikdasmen No 13 Tahun 2025
  • Ini Struktur Kurikulum PAUD & TK Sederajat Menurut Permendikdasmen No 13 Tahun 2025
  • Butuh Beasiswa? Ini Beasiswa Alternatif KIP Kuliah Tahun 2025 untuk Jenjang S1
  • Inilah 6 SMA Swasta Terbanyak Masuk PTN dan Kampus Luar Negeri
  • Cara Didik Anak agar Disiplin dan Bertanggung Jawab atas Tindakannya
  • Apa itu Badan Otorita Pengelola Pantai Utara Jawa (BOP Pantura)?

©2025 emka.web.id | Design: Newspaperly WordPress Theme