Saya sedang mengerjakan board dev MIPSEL ci20 . Ini menjalankan Debian 7 sehingga tidak lagi menerima pembaruan keamanan. Debian 8 dalam versi beta dan tampaknya mengalami beberapa masalah memori, jadi saya tidak ingin mengambil risiko upgrade saat ini.
Saya telah memperbarui OpenSSL ke 1.0.2j (dari 1.0.1e) dan OpenSSH ke 7.3 (dari 6.0). Saya juga menggunakan tautan statis untuk OpenSSH dengan OpenSSL untuk menghindari masalah yang terjadi dengan pemeriksaan versi pustaka selama konfigurasi.
Saya kesulitan menemukan informasi tentang cara menginstruksikan Debian untuk menggunakan OpenSSH lokal. Informasi yang saya temukan dimulai dengan apt-get install openssh-server
. Sebagai contoh, wiki Debian dan Instalasi server mengasumsikan OpenSSH yang disediakan oleh Debian.
Masuk /etc
untuk sshd
menunjukkan banyak jalur kode keras, seperti:
$ sudo grep -R 'sshd' /etc 2>/dev/null
...
/etc/network/if-up.d/openssh-server:if [ ! -e /usr/sbin/sshd ]; then
/etc/init.d/ssh:test -x /usr/sbin/sshd || exit 0
/etc/init.d/ssh: if start-stop-daemon ... --exec /usr/sbin/sshd -- $SSHD_OPTS; then
...
Bagaimana cara saya memberi tahu Debian untuk menggunakan server OpenSSH di /usr/local/sbin/sshd
?
/usr/local/sbin/sshd
atau menimpa sshd lama dengan yang Anda miliki ./usr/sbin/sshd
ke/usr/local/sbin/sshd
. Mengenai skrip init baru , saya sudah membuka ini: Membuat skrip berjalan saat boot dengan Debian dari panduan admin.Jawaban:
Menggunakan server OpenSSH lokal dimungkinkan, termasuk penghapusan lengkap server OpenSSH distro. Ada empat langkah.
Bangun dan Instal server OpenSSH
Langkah pertama adalah membuat versi OpenSSH yang sesuai dengan selera Anda. Contoh diberikan untuk OS X di Gedung OpenSSH untuk OS X? . Ini sebagian besar berlaku untuk Linux juga, dan menggunakan tautan statis (lihat the
sed
) untuk menghindari konfigurasi dan masalah tautan dinamis.Hapus distro server OpenSSH
Langkah kedua adalah melakukan a
apt-get remove --purge openssh-server
. The--purge
berusaha untuk memastikan tidak ada penyerbukan silang.Jika diinginkan,
sshd_config
buat cadangan saat ini untuk digunakan untuk referensi di masa mendatang. Waspadai OpenSSL 1.0.2 dan OpenSSH 7.3 menawarkan hal-hal yang tidak dimiliki pendahulunya, seperti curve25519.Buat pengguna yang tidak memiliki hak
Langkah ketiga adalah membuat pengguna tidak berprivasi untuk pemisahan hak istimewa. Ini diperlukan karena akun pengguna yang sebelumnya tidak terjangkau dihapus. Untuk langkah ini, lihat
README.privsep
:Tambahkan skrip startup untuk sshd-local
Untuk langkah ini, lihat Membuat skrip berjalan saat boot dengan Debian dari manual admin. Skrip di bawah ini didasarkan pada skrip startup SSH Debian. Nama diubah
sshd-local
untuk menghindari tabrakan. Itu juga menambah-f /usr/local/etc/sshd_config
untuk memastikan file konfigurasi yang benar digunakan.sumber