Bagaimana cara memberikan akses sementara ke server?

15

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

Paras Chopra
sumber
4
Saya pikir kepercayaan itu harus ada sebelum hal lain . Jika Anda tidak percaya padanya (cukup), jangan biarkan dia mengacaukan server Anda. Juga, lakukan pencadangan untuk berjaga-jaga dan cobalah untuk tidak memiliki data rahasia di server.
Cristian Ciupitu

Jawaban:

8

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.

Cristian Ciupitu
sumber
15

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:

sudosh adalah filter shell audit dan dapat digunakan sebagai shell login. Sudosh merekam semua penekanan tombol dan output dan dapat memutar ulang sesi seperti halnya VCR.

"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.

Stefan Lasiewski
sumber
2

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.

Chris S
sumber
Tetapi bukankah akun dengan sudo sama dengan menyediakan akses root?
Paras Chopra
4
@Paras Chopra - tergantung pada jenis konfigurasi yang Anda gunakan - Anda dapat membatasi sudoakses ke perintah tertentu, misalnya
warren
2

Pertama, 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.

joeqwerty
sumber
0

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.

Stefan Lasiewski
sumber
0

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 ...

MaoPU
sumber