Saya telah menyewa konsultan jarak jauh untuk memperbaiki server saya. Sekarang, saya tidak 100% yakin tentang memberinya kata sandi root dan mengizinkannya melakukan apa pun yang dia ingin lakukan di server. Idealnya, saya ingin melihat semua yang dia lakukan ke server saya (secara realtime) dan juga menemukan cara untuk tidak membagikan kata sandi root dengannya.
Adakah praktik terbaik yang memungkinkan konsultan jarak jauh mengakses server Anda?
EDIT: Untuk memperjelas, saya ingin melakukan semacam berbagi layar dengan konsultan. Apakah ada metode yang dengannya perintahnya diteruskan melalui akun saya tanpa pernah mendapatkan kata sandi?
PS: Server saya ada di Ubuntu 9,10
Jawaban:
Anda dapat membiarkannya terhubung dengan akun reguler dan kemudian memantau sesi SSH-nya . Solusi berbasis layar adalah yang terbaik menurut saya dan akan membiarkan Anda melakukan "pasangan" administrasi sistem. Misalnya dia bisa mengetikkan perintah sudo dan Anda akan mengetikkan kata sandi jika diperlukan.
PS Jika Anda menggunakan layar itu tidak berarti Anda juga tidak boleh menggunakan sudosh2 atau solusi lain.
sumber
Alih-alih memberinya kata sandi root, gunakan sudo.
Jika Anda ingin melihat semua yang dia lakukan dalam waktu nyata sebagai pengguna super , periksa sudosh2 . Dari dokumen:
"Semua penekanan tombol" termasuk penekanan tombol dari backspaces, hapus karakter, 'hapus kata' BASH, dll. Anda dapat menonton kesalahan ketik dan koreksi seseorang yang memalukan, dll.
sudosh akan mendukung syslog, dan Anda dapat mengirim log ke server syslog jarak jauh. Ini akan memastikan bahwa pengguna tidak dapat menghapus semua salinan log audit.
Perhatikan bahwa sudosh proyek asli (versi pertama) telah ditinggalkan oleh pembuatnya. sudosh2 hidup dan sehat.
sumber
Itu benar-benar tergantung pada tingkat akses yang ingin Anda berikan kepadanya. Saya tidak akan pernah mengaktifkan login root jarak jauh. Hanya akun "normal" yang memiliki akses jarak jauh, lalu konfigurasikan sudo untuk apa pun yang dibutuhkan orang itu.
sumber
sudo
akses ke perintah tertentu, misalnyaPertama, Anda harus memiliki tujuan yang jelas untuk apa yang Anda ingin dia lakukan. Setelah tujuan itu ditetapkan, Anda dapat memberinya tingkat akses yang diperlukan untuk mencapai tujuan tersebut.
Ini seperti mengantarkan mobil saya ke bengkel dan menyuruh mereka untuk "memperbaikinya". Hal berikutnya yang Anda tahu saya punya tagihan untuk ribuan dolar dan mereka telah melakukan hal-hal yang tidak ingin saya lakukan dan tidak minta.
sumber
Saya menambahkan jawaban lain yang berbeda untuk menanggapi pembaruan Anda.
Menggunakan layar GNU, Anda dapat berbagi layar dengan pengguna lain. Ini berarti dia bisa mengetik perintah, dan Anda melihat semua yang diketiknya. Anda bisa mengetik perintah dan dia bisa melihat apa yang Anda ketik. Ketika diminta kata sandi, Anda dapat mengetik kata sandi, tetapi konten kata sandi tidak dicetak ke layar (Catatan: Meskipun teks tidak dicetak ke layar, saya tidak yakin apakah pengguna lain akan dapat memperoleh akses ke penekanan tombol Anda dengan cara lain, atau memiliki akses ke buffer keystroke, dll.).
Informasi lebih lanjut di http://www.debian-administration.org/article/Using_GNU_screen%27s_multiuser_feature_for_remote_support
Saran lain: Ubah kata sandi root menjadi kata sandi sementara sebelumnya. Ketika dia pergi, kembalikan kata sandi root ke kata sandi asli.
sumber
Jika Anda hanya mengizinkan akses kunci publik ke server Anda tetapi tidak ada login kata sandi, Anda dapat mencabut akses tersebut kapan saja Anda inginkan dengan menghapus kunci yang Anda berikan kepada konsultan.
Setelah di mesin, layar GNU harus menyediakan semua fungsionalitas yang diinginkan - seperti yang disarankan Cristian Ciupitu. Jika Anda ingin menambah kenyamanan ekstra, sudosh2 mungkin bisa membantu Anda, tetapi riwayat cangkang dan hardcopy layar Anda dapat membantu Anda memutar ulang perintah nanti ...
sumber