Saya sedang menyiapkan router Cisco 2901. Saya memiliki kata sandi login pada baris konsol, dan baris vty dikonfigurasi untuk hanya menerima koneksi ssh dengan otentikasi kunci publik. Saluran bantu dimatikan. Hanya ada dua admin yang akan mengakses router dan kami berdua berwenang untuk melakukan konfigurasi apa pun pada router.
Saya bukan ahli Cisco gear, tapi saya menganggap ini cukup untuk mengamankan akses ke konfigurasi router. Namun, setiap panduan tunggal yang saya baca menyatakan bahwa saya harus menetapkan rahasia pengaktifan, terlepas dari kata sandi pengguna atau kata sandi lainnya.
Apakah ada sesuatu yang lebih pada mengaktifkan kata sandi yang tidak saya sadari? Apakah ada cara lain untuk mengakses router selain konsol, auxiliary, atau vty lines?
EDIT:
Saya telah menambahkan konfigurasi aktual di bawah ini untuk lebih jelas tentang situasi saya. Berikut ini berfungsi, dengan membutuhkan kata sandi yang memungkinkan, atau username
konfigurasi selain dari yang ada di dalamnya ip ssh pubkey-chain
.
aaa new-model
ip ssh time-out 60
ip ssh authentication-retries 2
ip ssh version 2
ip ssh pubkey-chain
username tech
key-hash ssh-rsa [HASH]
ip scp server enable
line vty 0 4
transport input ssh
Jawaban:
Tidak, Anda tidak - secara teknis. Tetapi apakah Anda dapat masuk ke mode aktifkan tanpa satu tergantung pada bagaimana Anda masuk.
Inilah versi kepuasan instan:
Anda dapat masuk melalui konsol tanpa mengaktifkan kata sandi, tetapi Anda akan terjebak dalam mode pengguna jika Anda menggunakan kata sandi login vty sederhana tanpa set kata sandi yang diaktifkan.
Inilah versi penjawab StackExchange yang bertele-tele:
Otentikasi Cisco agak berantakan bagi pemula. Ada banyak bagasi warisan di sana. Biarkan saya mencoba untuk memecah ini dalam arti dunia nyata.
Setiap orang yang memiliki bisnis yang masuk ke router atau beralih cukup banyak langsung ke mode privilege (aktifkan). Mode pengguna pada dasarnya adalah lobi depan, dan melayani sedikit lebih banyak tujuan daripada untuk menjaga konsep keluar. Dalam organisasi besar di mana Anda memiliki jaringan yang luas dan kumpulan tenaga kerja yang sama besarnya, mungkin dibenarkan untuk memiliki seseorang yang dapat mengetuk pintu depan dan memastikan seseorang masih ada di sana. (Yaitu, untuk masuk dan menjalankan perintah yang paling sepele hanya untuk melihat bahwa perangkat tersebut, pada kenyataannya, merespons dan tidak terbakar.) Tetapi di setiap lingkungan yang pernah saya gunakan, tingkat 1 setidaknya memiliki beberapa kemampuan untuk memecahkan barang.
Dengan demikian, dan khususnya dalam skenario seperti milik Anda, mengetahui kata sandi yang diaktifkan adalah wajib untuk menyelesaikan apa pun. Bisa dibilang ini adalah tingkat keamanan kedua - satu kata sandi untuk masuk ke perangkat, yang lain untuk meningkatkan keistimewaan administrasi - tetapi itu agak konyol bagi saya.
Seperti yang telah disebutkan, Anda dapat (dan banyak orang melakukannya) menggunakan kata sandi yang sama, yang tidak banyak membantu jika seseorang telah memperoleh akses tidak sah melalui telnet / ssh. Memiliki kata sandi global yang statis yang dibagikan oleh semua orang bisa dibilang lebih merupakan masalah daripada hanya perlu satu token untuk masuk. Akhirnya, sebagian besar sistem lain (layanan, peralatan, dll.) Tidak memerlukan otentikasi lapisan kedua, dan umumnya tidak dianggap tidak aman karena hal ini.
OK, itu pendapat saya tentang topik tersebut. Anda harus memutuskan sendiri apakah masuk akal mengingat sikap keamanan Anda sendiri. Mari kita mulai bisnis.
Cisco (secara bijak) mengharuskan Anda untuk mengatur kata sandi akses jarak jauh secara default. Ketika Anda masuk ke mode konfigurasi garis ...
... Anda dapat memberi tahu router untuk melewati otentikasi:
... dan segera diretas, tetapi penyerang Anda akan berakhir dalam mode pengguna. Jadi jika Anda memiliki mengaktifkan password set, setidaknya Anda telah agak membatasi kerusakan yang bisa dilakukan. (Secara teknis, Anda tidak dapat melangkah lebih jauh tanpa kata sandi yang memungkinkan. Lebih lanjut tentang itu suatu saat ...)
Secara alami, tidak ada yang akan melakukan ini dalam kehidupan nyata. Persyaratan minimum Anda, secara default dan dengan akal sehat, adalah untuk menetapkan kata sandi sederhana:
Sekarang, Anda akan dimintai kata sandi, dan Anda akan kembali ke mode pengguna. Jika Anda masuk melalui konsol, Anda cukup mengetik
enable
untuk mendapatkan akses tanpa harus memasukkan kata sandi lain. Tetapi hal-hal berbeda melalui telnet, di mana Anda mungkin akan mendapatkan ini sebagai gantinya:Pindah ... Anda mungkin sudah tahu bahwa, secara default, semua kata sandi yang Anda konfigurasikan ditampilkan sebagai teks biasa:
Ini adalah salah satu hal yang mengencangkan sfingter yang sadar-keamanan. Apakah itu kecemasan yang dibenarkan lagi adalah sesuatu yang harus Anda putuskan sendiri. Di satu sisi, jika Anda memiliki akses yang cukup untuk melihat konfigurasi, Anda mungkin memiliki akses yang cukup untuk mengubah konfigurasi. Di sisi lain, jika Anda secara tidak sengaja mengungkapkan konfigurasi Anda kepada seseorang yang tidak memiliki sarana sendiri, maka ... yah, sekarang mereka memang memiliki sarana.
Untungnya, baris pertama dalam cuplikan di atas
no service password-encryption
, adalah kunci untuk mengubah itu:Sekarang, ketika Anda melihat konfigurasi, Anda melihat ini:
Ini sedikit lebih baik daripada kata sandi teks biasa, karena string yang ditampilkan tidak cukup mudah diingat untuk dapat diakses. Namun, itu sepele untuk mendekripsi - dan saya menggunakan istilah itu secara longgar di sini. Anda benar-benar dapat menempelkan string itu di atas ke dalam satu dari selusin cracker kata sandi JavaScript di halaman hasil Google pertama, dan mendapatkan teks aslinya kembali dengan segera.
Kata sandi yang disebut "7" ini biasanya dianggap "dikaburkan" daripada "dienkripsi" untuk menyoroti fakta bahwa kata sandi itu hampir tidak lebih baik daripada tidak sama sekali.
Namun ternyata, semua
password
perintah itu sudah usang. (Atau jika tidak, seharusnya demikian.) Itulah mengapa Anda memiliki dua opsi berikut:Versi rahasia di-hash dengan algoritma satu arah, artinya satu-satunya cara untuk mendapatkan teks asli kembali adalah dengan brute-force - yaitu, mencoba setiap string input yang mungkin sampai Anda menghasilkan hash yang diketahui.
Saat Anda memasukkan kata sandi saat diminta, kata sandi akan melewati algoritma hashing yang sama, dan karenanya harus menghasilkan hash yang sama, yang kemudian dibandingkan dengan yang ada di file konfigurasi. Jika cocok, kata sandi Anda diterima. Dengan begitu, teks biasa tidak diketahui oleh router kecuali pada saat singkat ketika Anda membuat atau memasukkan kata sandi. Catatan: Selalu ada kemungkinan beberapa input lain dapat menghasilkan hash yang sama, tetapi secara statistik itu adalah probabilitas yang sangat rendah (baca: dapat diabaikan).
Jika Anda sendiri yang menggunakan konfigurasi di atas, router akan mengizinkan kedua baris
enable password
danenable secret
ada, tetapi rahasia menang dari prompt kata sandi. Ini adalah salah satu dari isme-Cisco yang tidak masuk akal, tetapi memang demikian adanya. Selain itu, tidak adasecret
perintah yang setara dari mode konfigurasi baris, jadi Anda terjebak dengan kata sandi yang tidak jelas di sana.Baiklah, jadi sekarang kita memiliki kata sandi yang tidak dapat dipulihkan (dengan mudah) dari file konfigurasi - tetapi masih ada satu masalah. Itu sedang dikirim dalam teks biasa ketika Anda login melalui telnet. Tidak baik. Kami menginginkan SSH.
SSH, yang dirancang dengan keamanan yang lebih baik, membutuhkan kerja ekstra - dan gambar iOS dengan serangkaian fitur tertentu. Satu perbedaan besar adalah bahwa kata sandi sederhana tidak lagi cukup baik. Anda harus beralih ke otentikasi berbasis pengguna. Dan saat Anda melakukannya, atur pasangan kunci enkripsi:
Sekarang Anda memasak dengan gas! Perhatikan perintah ini menggunakan
secret
kata sandi. (Ya, Anda bisa, tetapi tidak boleh, gunakanpassword
). Bagian iniprivilege 15
memungkinkan Anda untuk memotong mode pengguna sepenuhnya. Saat Anda masuk, Anda langsung menuju ke mode istimewa:Dalam skenario ini, tidak perlu menggunakan kata sandi yang memungkinkan (atau rahasia.)
Jika Anda belum berpikir, "wow ... apa clusterfudge yang adalah", ingatlah ada seluruh posting yang panjang-tele lainnya masih bersembunyi di balik perintah
aaa new-model
, di mana Anda bisa menyelam ke dalam hal-hal seperti server otentikasi eksternal (RADIUS , TACACS +, LDAP, dll.), Daftar otentikasi (yang menentukan sumber yang akan digunakan, dan urutannya), tingkat otorisasi, dan penghitungan aktivitas pengguna.Simpan semua itu untuk sementara waktu ketika Anda merasa ingin keluar dari router untuk sementara waktu.
Semoga itu bisa membantu!
sumber
enable
dan berfungsi. Juga, memiliki nama pengguna dengan hak istimewa 15 masih mengharuskan saya untuk mengetikkan mengaktifkan. Apakah ini karena model baru?Ya, Anda perlu mengaturnya menjadi sesuatu. Itulah cara kerja iOS. Anda dapat membuatnya sama dengan kata sandi login Anda, jika mau.
Untuk banyak pengguna, saya sarankan Anda mengatur otentikasi AAA, yang akan memungkinkan Anda untuk langsung masuk ke mode aktifkan tanpa harus memasukkan kata sandi lain. Ini juga akan memungkinkan Anda untuk melacak aktivitas masing-masing admin. (Tapi Anda masih perlu mengatur agar kata sandi rahasia diaktifkan.)
sumber
aaa authorization exec default local
untuk memasukkan eksekutif istimewa secara otomatis.Untuk menambah informasi yang ada di sini.
enable
Opsi pertama untuk mengatur
enable
kata sandi adalahenable password
.Seperti yang Anda lihat, kata sandi disimpan dalam teks biasa. Ini buruk .
Yang kedua adalah
enable secret
.Ini lebih baik . Setidaknya kita memiliki hash kata sandi sekarang. Namun ini masih hanya menggunakan MD5 asin sehingga mungkin cukup mudah untuk memecahkan dengan daftar kata besar dan openssl.
Opsi ketiga (dan tujuan dari jawaban ini) adalah
enable algorithm-type
yang memungkinkan kita untuk menggunakan PBKDF2 atau SCRYPT.Ini pasti yang terbaik .
Philip D'Ath telah menulis ringkasan yang bagus tentang mengapa memilih tipe 9. Thomas Pornin dan Ilmari Karonen memberikan informasi yang lebih mendalam.
sumber
Ini pada dasarnya adalah lapisan keamanan tambahan. Jika Anda tidak memiliki versi iOS yang mendukung enkripsi kata sandi layanan, maka hanya aktifkan kata sandi yang dienkripsi sementara kata sandi konsol dan VTY adalah plaintext. Jika seseorang bisa mendapatkan salinan konfigurasi Anda (katakanlah dari cadangan, atau komputer tanpa pengawasan yang diteleportasi), kata sandi yang dienkripsi akan membuatnya lebih sulit untuk mendapatkan kendali atas router Anda, bahkan jika mereka bisa telnet masuk.
Bahkan dengan VTY terenkripsi dan kata sandi konsol, Anda harus tetap memiliki kata sandi pengaktifan yang berbeda untuk berada di sisi yang aman dan memberikan penghalang tambahan.
sumber
Matikan 1 dari 2 admin users.cisco's sangat tahan terhadap apa saja, apa saja, segala jenis titik masuk peretasan yang mungkin melalui koneksi. Dengan dua admin. Connected the cisco akan percaya bahwa penyusup juga terhubung dan memblokir kemajuan lebih lanjut tanpa login yang tepat. Setelah kontrol dibangun kembali, Anda harus dapat menambahkan admin
sumber