Jika Anda selalu berjalan apt-get
di server Anda dengan tangan (tidak ada apt-get
perintah otomatis yang diluncurkan oleh crons), maka Anda dapat mempertimbangkan untuk menggunakan penerusan ssh agent . Ini menghindari keharusan mengelola satu kunci publik / privat per server yang Anda kelola, dan mungkin lebih aman daripada meninggalkan kunci pribadi di setiap server.
Konfigurasi awal
- sambungkan ke server yang ingin Anda kelola, dan tambahkan sesuatu seperti ini /etc/apt/sources.list
(contoh ini mengasumsikan Anda ingin server Anda terhubung ke manager
akun):
deb ssh://manager@my.repository.org/path other stuff
buat sepasang kunci privat / publik di komputer Anda sendiri, dengan login Anda johndoe
misalnya (asalkan komputer Anda berjalan di debian: jika tidak, Anda dapat melakukan ini dari server debian yang didedikasikan untuk manajemen):
ssh-keygen
- pastikan dilindungi oleh frasa unik
salin kunci publik Anda ke server repositori di /home/manager/.ssh/authorized_keys
:
ssh-copy-id manager@my.repository.org
Sekali per sesi manajemen
Mengelola server
terhubung ke server yang ingin Anda kelola menggunakan ssh -A
( -A
mengaktifkan penerusan agen):
ssh -A some.server.org
beralih ke root (jika Anda ingin menggunakan, sudo
Anda perlu mengonfigurasi /etc/sudoers
atau jika tidak sudo
akan merusak penerusan agen, baca ini ):
su
Anda sekarang harus dapat terhubung ke akun manajer repositori menggunakan ssh tanpa mengetikkan kata sandi Anda lagi, berkat penerusan agen. Karena itu, apt-get
harus berfungsi dengan baik:
apt-get udate
Mengakhiri sesi manajemen Anda
Keuntungan
- Tidak diperlukan konfigurasi awal
- Hanya diperlukan satu kunci pribadi
- Kunci pribadi dilindungi oleh frasa sandi yang kuat
- Jika seseorang mendapatkan akses root ke salah satu server Anda, mereka tidak akan memiliki akses langsung ke server repositori Anda.
- Perhatikan bahwa jika peretas bersabar dan memenuhi syarat, ia dapat menunggu hingga Anda terhubung ke server menggunakan penerusan agen, dan ia dapat membajak mekanisme penerusan untuk mendapatkan akses ke server repositori Anda.
- Untuk mencegahnya, Anda dapat menggunakan
ssh-ask
untuk menerima / menolak setiap upaya untuk menggunakan kunci Anda.
- Bagaimanapun, peretas tidak akan mendapatkan akses ke kunci pribadi itu sendiri: ia hanya akan dapat membajak mekanisme penerusan untuk menggunakan kunci, dan hanya selama waktu Anda terhubung ke server.