Ini adalah perintah rsyncrypto yang dapat dijalankan di penyedia hosting gratis OnWorks menggunakan salah satu dari beberapa workstation online gratis kami seperti Ubuntu Online, Fedora Online, emulator online Windows atau emulator online MAC OS
PROGRAM:
NAMA
rsyncrypto - enkripsi ramah rsync
RINGKASAN
rsynccrypto [Pilihan] file src file dst file kunci kunci
rsynccrypto [Pilihan] -r srcdir dstdir keydir kunci
DESKRIPSI
Halaman manual ini mendokumentasikan rsynccrypto perintah.
rsynccrypto adalah utilitas yang mengenkripsi file (atau struktur direktori) dengan cara yang
memastikan bahwa perubahan lokal pada file teks biasa akan menghasilkan perubahan lokal pada
file teks sandi. Ini, pada gilirannya, memastikan bahwa melakukan rsync untuk menyinkronkan yang dienkripsi
file ke komputer lain hanya akan berdampak kecil pada rsyncefisiensi.
rsynccrypto akan mengenkripsi file menggunakan symmetric block cipher (AES). Setiap file dienkripsi
menggunakan kunci unik. Kunci file disimpan di dua lokasi. Salah satunya adalah "kunci" file, dan
yang kedua ada di dalam file terenkripsi itu sendiri. Salinan kedua dienkripsi menggunakan RSA
kunci publik, yang dapat dibagikan untuk semua file terenkripsi.
Mendekripsi file dapat dilakukan dalam salah satu dari dua bentuk:
Hangat Dekripsi
file kunci digunakan untuk mendekripsi file src ke file dst.
Dingin Dekripsi
If file kunci hilang dan kunci adalah swasta kunci untuk enkripsi RSA, ekstrak dan
membuat file kunci dari terenkripsi file src, dan buat keduanya file kunci dan file dst.
Jika keduanya file kunci dan kunci pribadi tidak tersedia, dekripsi tidak dapat dilakukan.
Biasanya, ini berarti Anda ingin mentransfer file terenkripsi di
cara apa pun (aman atau tidak aman, tapi mungkin rsync :), dan simpan file teks biasa, sebagai
serta file kunci, aman. Selama Anda menyimpan kunci pribadi RSA, Anda dapat
merekonstruksi keduanya.
PARAMETER
Arti parameter tergantung pada keberadaan -r dan -d bendera.
file src or srcdir
Ini adalah sumber untuk operasi. Ini akan menjadi file teks biasa untuk
enkripsi, dan file teks sandi untuk dekripsi. jika -r pilihan diberikan,
srcdir adalah direktori dari mana file akan dienkripsi/didekripsi. Sebaliknya,
file src adalah file yang akan dienkripsi/didekripsi. Bagaimanapun, src harus ada sebelum
berjalan rsynccrypto.
file dst or dstdir
Mirip dengan src, ini adalah tujuan operasi. Ini akan menjadi teks biasa
akan dibuat jika -d diberikan, atau file terenkripsi sebaliknya.
file kunci or keydir
File yang memegang kunci simetris untuk enkripsi, atau direktori tempat
file kunci simetris berada. Jika nanti, file kunci akan memiliki nama yang sama dengan
file teks biasa.
kunci File ini dapat berupa sertifikat X509 yang memegang kunci publik, atau format PEM
kunci pribadi. Kunci pribadi tidak pernah diperlukan kecuali dekripsi dingin diperlukan.
Lihat req(1) atau x509(1) halaman manual untuk info lebih lanjut.
If dst tidak ada, itu akan dibuat. Direktori yang akan dibuat harus
ada sebelum dijalankan rsynccrypto.
Jika enkripsi, dan kunci simetris untuk file ditemukan, parameter yang sama akan digunakan
untuk enkripsi kecuali --NS or --fk opsi digunakan. Jika itu masalahnya, kuncinya
file akan diganti dengan parameter yang benar.
PILIHAN
Program-program ini mengikuti sintaks baris perintah GNU biasa, dengan opsi panjang dimulai dengan
dua garis (`-').
-h, --membantu
Tampilkan ringkasan opsi.
-V, --Versi: kapan
Cetak nomor versi saat ini.
-d, --dekripsi
Dekripsi src ke dst. Perilaku default adalah mengenkripsi src ke dst, dan buat
file kunci jika tidak ada.
-r, --berulang
Enkripsi/dekripsi seluruh struktur direktori secara rekursif. Semua file di bawah srcdir
akan dienkripsi ke file dengan nama dan jalur yang sama (hampir, lihat --memangkas) dibawah
dstdir. Jika belum ada, file kunci akan dibuat untuk setiap file di bawah
keydir.
--daftar file
Argumen pertama adalah penunjuk ke file (atau "-" untuk stdin) yang memiliki daftar
file untuk diproses. Nama apa pun yang diakhiri dengan "/" dianggap sebagai direktori di
mode rekursif, dan nama lainnya adalah nama file. Argumen kedua adalah
direktori tempat file dienkripsi. --filelist dan -r saling berhubungan
eksklusif.
-c, --berubah
Periksa src dan waktu modifikasi tujuan (lihat --modify-window) sebelum
melakukan operasi. Jika waktu yang dimodifikasi sama, asumsikan bahwa file
juga sama, dan lewati operasi. Perhatikan bahwa tidak seperti rsync, ukuran file adalah
tidak dibandingkan. Ini karena ukuran file diperkirakan akan berubah selama
operasi enkripsi (dan dengan demikian dekripsi).
--risky-menulis
Biasanya, ketika rsyncrypto menulis file, ia menggunakan nama sementara dan memindahkan file
ke nama akhirnya ketika berhasil dilakukan. Ini melayani dua tujuan. Selama
enkripsi, ini mencegah rasa aman palsu yang mungkin timbul jika terjadi
gangguan rsyncrypto dengan mencegah sebagian file hadir (dan di
kasus pembaruan, dengan menyimpan cadangan lama). Ini juga memastikan bahwa memulai ulang
rsyncrypto akan memungkinkannya mendeteksi dengan benar apakah operasi itu perlu
ulang. Selama dekripsi, ini mencegah penimpaan file sampai kami yakin
kita dapat mendekripsi sumbernya.
Masalah utama dengan pendekatan ini adalah, jika file yang ditulis besar,
sistem file perlu memiliki cukup ruang untuk dua salinannya selama
operasi. Juga, jika tautan keras dipertahankan, perilaku rsyncrypto default
akan merusak tautan.
Menentukan --risky-menulis untuk membuat rsyncrypto langsung menimpa file yang ada
menggunakan nama akhir.
--modifikasi-jendela=num
Hanya berlaku bila -c sedang berlaku. Saat membandingkan waktu modifikasi file, perlakukan
sebagai waktu modifikasi yang sama yaitu num detik terpisah. Nilai default adalah nol.
Opsi ini paling berguna ketika file terenkripsi disimpan pada sistem file FAT.
FAT hanya dapat menyimpan waktu modifikasi dengan akurasi 2 detik. Hal ini dapat mengakibatkan
perubahan waktu modifikasi antara file asli dan terenkripsi. Dalam kasus seperti itu,
--modifikasi-jendela=1 seharusnya digunakan.
--ekspor-perubahan=file log
Setiap kali mengenkripsi atau menghapus file, tulis nama file ke file log. Ini
memungkinkan lewat file log untuk rsync(1) menggunakan --termasuk-dari opsi rsync.
Opsi ini sebagian besar berguna jika rsynccrypto digunakan untuk berulang kali mengenkripsi besar
pohon direktori, dan kemudian menggunakan rsync untuk menyinkronkannya dari jarak jauh. Penggunaan ini
opsi memungkinkan pemfokusan rsync hanya pada file yang diketahui telah berubah,
daripada mengirim seluruh daftar file ke mesin jarak jauh, membuat
operasi rsync lebih cepat. Perlu dicatat bahwa rsync versi 3 memulai yang sebenarnya
transfer file saat masih mentransfer daftar file, membuat kinerja
keuntungan dari opsi ini kurang terlihat.
Saat menggunakan opsi ini bersama dengan rsync, ingatlah bahwa file log is
dinolkan sebelum ditulis ke dalam. Ini berarti bahwa kecuali ada setidaknya satu
operasi rsync yang benar-benar berhasil untuk setiap permintaan rsyncrypto, itu adalah
mungkin untuk memiliki file yang telah diubah pada disk dengan permintaan sebelumnya dari
rsyncrypto, tetapi telah ditulis ulang oleh pemanggilan berikutnya dan tidak muncul di
versi terbaru dari file log. Dengan kata lain, jika rsyncrypto dijalankan lebih dari sekali
antara dua pemanggilan rsync yang benar-benar berhasil, dimungkinkan untuk file log
untuk tidak lengkap. penggunaan ini Option at Tujuan sendiri mempertaruhkan!
Sangat disarankan agar Anda meningkatkan ke rsync versi 3 atau lebih tinggi daripada
mengandalkan opsi ini.
-n, --nama-enkripsi=terjemahan_file
Enkripsi nama file. Jika opsi ini ditentukan, ini berarti nama file adalah
dienkripsi juga. Ini dilakukan dengan mengubah nama file terenkripsi menjadi a
string karakter acak, dan menyimpan terjemahan dalam file yang diberikan sebagai
parameter. Jika bekerja dalam mode rekursif, file ini secara otomatis juga disertakan
dalam enkripsi, dan diberi nama tetap "filemap". Hal ini dilakukan agar
dekripsi nama file dimungkinkan ketika kunci simetris hilang.
--ne-bersarang=num
Ketika opsi --name-encrypt digunakan, secara default semua nama file yang rusak adalah
disimpan dalam satu direktori. Saat mengenkripsi pohon direktori besar, ini dapat
menghasilkan direktori yang agak besar. Menggunakan "--ne-nesting" akan membagi file menjadi sub
direktori, menurut bit acak yang merupakan bagian dari nama file terenkripsi. "n"
adalah jumlah direktori untuk bersarang.
--memangkas=num
Tentukan berapa banyak level direktori yang akan dipangkas dari awal srcdir path
saat membuat direktori di bawah dstdir. Nilai defaultnya adalah 1. Lihat THE TRIM PILIHAN
lebih lanjut.
--menghapus
Saat dalam mode rekursif, hapus file dan direktori di bawah dstdir itu tidak ada
bawah srcdir.
--hapus-tombol
Saat menghapus file, hapus juga kunci simetris dan pemetaan nama filenya (jika
berlaku). Kapan saja? --menghapus digunakan, kunci simetris dan pemetaan file adalah
disimpan, sehingga jika file dibuat ulang, itu akan dapat disinkronkan dengan aslinya
mengajukan. Opsi ini menyiratkan --menghapus.
-bnum --keybit=num
Tentukan ukuran kunci cipher blok. Untuk AES, ini bisa menjadi 128, 192 atau 256. Catatan
bahwa kecuali --NS or --fkP Pilihan adalah juga ditentukan, ini akan hanya mempengaruhi
arsip untuk yang tidak file kunci ada
--saat ini=num
(Hanya pada beberapa platform, terutama Linux). Platform biasanya melacak
kapan file terakhir diakses. Sejak rsynccrypto biasanya digunakan untuk cadangan,
itu membuka file yang dienkripsi dengan opsi O_NOATIME, yang khusus untuk Linux
ekstensi yang memberi tahu sistem untuk tidak memperbarui waktu akses file. Saat membuka
file di mana proses pembukaan tidak dimiliki oleh pemilik file, upaya untuk membuka
file dengan O_NOATIME akan menyebabkan pembukaan gagal dengan "izin ditolak".
num bisa menjadi salah satu opsi ini: 0 berarti tidak menggunakan O_NOATIME sama sekali. 1 (The
default) berarti mencoba hanya menggunakan O_NOATIME jika rsynccrypto berpikir itu tidak akan menyebabkan
izin ditolak kesalahan. 2 berarti menggunakan O_NOATIME selalu.
--tidak ada-mode arsip
Jangan mencoba untuk mempertahankan cap waktu. Opsi ini tidak kompatibel dengan -c.
--gzip=path
Secara default, rsynccrypto akan memampatkan teks biasa sebelum mengenkripsinya. Di dalam
agar tidak menjadi rsync tidak ramah karena kompresi, rsynccrypto akan mencari
jalan untuk instance dari gzip(1) yang mendukung --dapat disinkronkan pilihan. jika
gzip default sistem tidak mendukung opsi ini (semua Debian dan turunannya, seperti
serta beberapa yang lain, dukung), gunakan opsi ini untuk memberi tahu rsynccrypto menggunakan
contoh gzip yang berbeda. Direktori tes sumber rsyncrypto memiliki file
disebut "gzip", yang melakukan kompresi NULL dengan mengarahkan input dan output ke
kucing(1).
--roll-menang=num, --roll-min=num, --roll-sensitivitas=num
Mempengaruhi algoritma rolling block. Lihat CATATAN.
--fk, --NS
Jika baris perintah, atau versi dengan default berbeda, tentukan nilai yang berbeda untuk
itu --gulungan-* pilihan atau -b opsi, ini hanya akan memengaruhi file yang
file kunci belum ada. menentukan --fk or --NS akan membuat ulang file kunci jika
memiliki nilai yang berbeda dari yang ada di file kunci sebelumnya.
-v, --bertele-tele
Meningkatkan tingkat verbositas. Tentukan beberapa kali agar lebih bertele-tele.
CATATAN
mengenkripsi stdin
If file src diberikan sebagai `-', data teks biasa akan dibaca dari stdin. Ini belum
bekerja untuk dekompresi (lihat BUG).
--roll-menang= jumlah, --roll-min= jumlah, --roll-sensitivitas= jumlah
Nilai-nilai ini memengaruhi beberapa cara kerja bagian dalam rsynccryptopengambilan keputusan. Di dalam
khususnya, ini mempengaruhi bagaimana rsynccrypto memutuskan kapan harus kembali ke IV.
Opsi ini tidak boleh dimainkan kecuali Anda memahami apa yang Anda lakukan. Mereka
tidak berbahaya, karena mereka tidak akan pernah menyebabkan kehilangan data. Nilai apa pun harus tetap memungkinkan
dekripsi file. Mereka memiliki pengaruh pada rsyncefisiensi.
Opsi ini hanya ada untuk memungkinkan respons cepat jika masalah keamanan muncul
dengan nilai default mereka. Jika itu terjadi, sebuah nasihat mungkin akan keluar dan memberikan nilai baru untuk
mengisi sebagai solusi. Sampai itu terjadi, sebagian besar pengguna disarankan untuk meninggalkan opsi ini
sendirian.
THE TRIM PILIHAN
Saat berlari rsynccrypto dalam mode rekursif, struktur direktori di bawah srcdir sedang kembali
dibuat di bawah dstdir, dengan satu direktori dihapus dari jalurnya. Dengan kata lain, jika kita
memiliki struktur direktori yang memiliki:
a/b/c/berkas
berjalan rsynccrypto dengan srcdir dari "a/b", dan dstdir dari "f" akan membuat "f/b/c/file".
--memangkas opsi memungkinkan pengguna mengatakan berapa banyak bagian yang harus dipotong srcdir saat membuat
direktori di bawah dstdir dan keydir. Jika, dalam contoh di atas, kami mengatakan --memangkas=0 maka
"f/a/b/c/file" akan dibuat. Demikian juga, jika kita mengatakan --memangkas=2 lalu "f/c/file"
akan telah dibuat.
Ini adalah kesalahan untuk memberikan nilai trim yang lebih tinggi dari jumlah bagian direktori
sebenarnya di srcdir. Dalam contoh di atas, --memangkas=3 akan menghasilkan kesalahan.
KEAMANAN
Nilai gulungan memengaruhi, hingga tingkat yang tidak sepenuhnya diketahui, seberapa banyak informasi yang "bocor"
antara teks biasa dan teks sandi. Nilai default seharusnya bocor kurang dari 20
bit informasi agregat tentang file teks biasa untuk setiap 8KB, dalam kasus terburuk.
Nilai-nilai ini, kami harap, akan dianggap cukup aman untuk sebagian besar penggunaan. Namun, jika Anda
nasib negara dipertaruhkan, gunakan enkripsi yang dioptimalkan non-rsync, seperti yang disediakan
by openssl(1).
CONTOH DAN TUTORIAL
Sebelum mulai menggunakan rsyncrypto, Anda memerlukan kunci publik dalam format sertifikat X509.
Cara tercepat untuk menghasilkan salah satunya adalah menggunakan openssl(1) paket. Untuk menghasilkan
kunci RSA 1536 bit baru sebagai "backup.key", dan simpan kunci publik tidak terenkripsi yang sesuai
di "backup.crt", gunakan perintah berikut:
openssl req -nodes -newkey rsa:1536 -x509 -keyout backup.key -out backup.crt
Tidak masalah apa yang Anda jawab untuk detail sertifikat, atau saat Anda menyetelnya ke
berakhir. Rsyncrypto mengabaikan semua yang ada di sertifikat kecuali kunci yang sebenarnya.
Untuk mengenkripsi file "data" menjadi "data.enc", menyimpan kunci khusus file di "data.key",
menjalankan:
rsyncrypto data data.enc data.key backup.crt
Di mana saja dalam contoh ini yang menggunakan "backup.crt", "backup.key" juga dapat digunakan.
Di atas juga bisa memiliki "backup.key" sebagai argumen terakhir. Jika contoh-contoh ini daftar
"backup.key" secara khusus, maka itu berarti "backup.crt" tidak bisa digunakan sebagai gantinya.
"data.enc" akan dibuat. Jika "data.key" ada dari proses sebelumnya, maka yang baru
"data.enc" yang dibuat akan memiliki kunci simetris yang sama dan atribut lainnya, sehingga mempertahankan
keramahan rsync dari enkripsi. Oleh karena itu penting untuk memberikan sebelumnya
file kunci untuk data jika tersedia.
Baris perintah untuk mendekripsi file tergantung pada apakah Anda memiliki file kunci yang digunakan saat
file telah dienkripsi. Jika Anda melakukannya, maka dekripsi dapat dilakukan hanya dengan menggunakan publik
kunci, dengan perintah berikut:
rsyncrypto -d data.enc data.dec data.key backup.crt
Jika file kunci hilang, kunci pribadi harus digunakan untuk memulihkannya dari yang dienkripsi
file menggunakan perintah berikut:
rsyncrypto -d data.enc data.dec data.kunci cadangan.kunci
"data.key" akan dibuat dengan perintah di atas, serta "data.dec".
Penggunaan rsyncrypto untuk mengenkripsi seluruh direktori serupa, dengan mengganti nama direktori
nama file dalam contoh di atas. Untuk mengenkripsi konten direktori yang disebut "data" ke a
direktori yang disebut "enc", menyimpan kunci simetris dalam direktori yang disebut "kunci", jalankan
perintah berikut:
rsyncrypto -r data enc kunci cadangan.crt
Seperti sebelumnya, direktori "enc" dan "keys" akan dibuat jika belum ada.
Struktur direktori di bawah "polos" akan diduplikasi di bawah "enc" dan di bawah "kunci".
Artinya, jika ada file bernama "foo" di bawah "data", file terenkripsi bernama "foo"
akan dibuat di bawah "enc", dan file kunci bernama "foo" akan dibuat di bawah "kunci". Di dalam
dengan kata lain, bagian pertama dari path ke "data/foo" (bagian yang mengatakan "data") adalah
dihilangkan dari jalur, dan ini menentukan nama file di bawah "enc" dan
"kunci".
Jika pemangkasan yang berbeda diperlukan, opsi --trim dapat digunakan. Untuk memiliki rsyncrypto
buat "enc/data/foo" alih-alih yang di atas, gunakan perintah berikut:
rsyncrypto -r --trim=0 kunci enc data backup.crt
Alih-alih mengambil semua file dari satu direktori, dimungkinkan untuk menyediakan rsyncrypto
dengan daftar file dan direktori yang akan dienkripsi. Ini dilakukan dengan menggunakan --filelist
pilihan, seperti:
rsyncrypto --filelist --trim=0 daftar kunci enc backup.crt
"enc" dan "keys" mempertahankan arti yang sama seperti sebelumnya. "daftar" adalah file teks dengan daftar, satu
per baris, file untuk dienkripsi. Opsi --trim=0 mengatakan bahwa jika daftar berisi garis
mengatakan "/home/foo/bar" yang menyatakan nama file, lalu file terenkripsi bernama
"enc/home/foo/bar" akan dibuat. Tanpa itu, file akan disebut "enc/foo/bar".
Demikian juga, dengan --trim=2, file akan dibuat sebagai "enc/bar".
Sering menjadi masalah bahwa nama file tidak dienkripsi. Jika itu masalahnya, kita bisa
minta rsyncrypto untuk mengenkripsi nama file, serta file yang sebenarnya. Rsyncrypto tidak
sebenarnya mengenkripsi nama file. Sebagai gantinya, itu menggantikan nama file yang sebenarnya dengan nama acak
serangkaian karakter. Pemetaan antara nama file yang sebenarnya dan nama yang kacau adalah
disimpan dalam file pemetaan.
rsyncrypto --name-encrypt=map --trim=0 -r kunci enc biasa backup.crt
Ini akan mengenkripsi struktur direktori "polos" ke dalam enc, persis seperti sebelumnya. Tidak seperti
sebelumnya, semua file akan langsung berada di bawah direktori "enc", dan akan diberi nama sebagai
omong kosong yang tidak berarti. File bernama "peta" akan dibuat di bawah direktori saat ini yang
berisi peta antara runcing dan nama asli file. Selain itu, dua file
disebut "enc/filemap" dan "keys/filemap", juga akan dibuat. Ini adalah yang dienkripsi dan
file kunci yang sesuai dengan file "peta" yang disebutkan di atas. Selama dekripsi, jika "peta" tidak
tidak ada, itu akan dibuat dengan mendekripsi "enc/filemap".
penting catatan: Saat melakukan enkripsi nama file, sangat penting untuk memberikan
benar --trim nilai, baik selama enkripsi dan selama dekripsi. Gagal melakukannya akan
menyebabkan rsyncrypto mencari nama file yang tidak ada, dan gagal menemukan file ke
mendekripsi.
Gunakan rsyncrypto online menggunakan layanan onworks.net