... tetapi masih diperlukan untuk aplikasi yang memerlukan hak admin?
Untuk memungkinkan hal-hal berikut:
$ apache2ctl restart
httpd not running, trying to start
(13)Permission denied: make_sock: could not bind to address 0.0.0.0:80
no listening sockets available, shutting down
Unable to open logs
$ sudo !!
sudo apache2ctl restart #no password asked
$ #works!
Untuk referensi saya telah melihat pengaturan ini pada contoh e3 amazon
Ada ide?
sudo
authentication
tutuca
sumber
sumber
Jawaban:
Anda perlu mengedit file sudoers. Maklum bahwa kesuksesan memberi Anda sistem yang kurang aman dan kegagalan dapat merusak sudo. SELALU mengedit file sudoers dengan
sudo visudo
, karena visudo memeriksa kesalahan dan tidak akan menyimpan file jika ada yang ditemukan.Ini adalah ide yang buruk untuk memberikan semua izin untuk berjalan sebagai root tanpa kata sandi, jadi biarkan saja yang dapat dieksekusi yang Anda butuhkan (apache2ctl); tambahkan berikut ini ke bagian paling bawah file:
Anda dapat mengganti jalur ke executable dengan "ALL" jika Anda memilih, memberi Anda sudo lengkap tanpa kata sandi.
Ganti YOURNAME dengan nama pengguna Anda dan tekan Ctrl+ Xuntuk menyimpan dan keluar. Jika terjadi kesalahan, itu akan menawarkan untuk mengembalikan, mengedit, atau menyimpan.
Pastikan bahwa Anda menggunakan path lengkap ke file executable:
ie.
/usr/bin/apache2ctl
bukannya adilapache2ctl
. Ini penting karena tanpa secara eksplisit menyatakan path sudo akan memungkinkan setiap program bernama apachectl pada path pengguna saat ini untuk dijalankan sebagai root.sumber
%YOURNAME
akan memberikan izin kepada grup bernama seperti pengguna Anda, yang biasanya tidak menjadi masalah karena setiap pengguna normal memiliki grup dengan nama yang sama di sistem Ubuntu. Untuk memberikan izin kepada pengguna Anda, tentukanYOURNAME
tanpa%.apache2ctl
), seperti:YOURNAME YOUR-HOSTNAME = NOPASSWD: /usr/bin/apache2ctl <specific arg | "">
. --- Dalam semua kasusman 5 sudoers
adalah referensi untuk pergi ke.Jawaban sebenarnya untuk pertanyaan ini bisa rumit karena sudo sangat kuat, dan dapat dikonfigurasi untuk melakukan hal-hal keren. Ini dijelaskan secara menyeluruh dalam dokumentasi .
Jawaban singkat dijalankan
sudo visudo
di terminal. Jika ini adalah pertama kalinya Anda menjalankan visudo, ia akan menanyakan editor mana yang Anda sukai. nano umumnya dianggap paling mudah digunakan, tetapi pilihlah editor yang paling nyaman bagi Anda. Anda perlu memutuskan siapa yang ingin Anda akses; bisaALL
untuk semua orang ( ide yang sangat buruk) , pengguna, atau grup sistem. Grup diawali dengan tanda%. Misalnya, jika Anda ingin memberikan semua orang dalamsteroid_users
hak istimewa root grup tanpa perlu kata sandi untuk semua perintah, Anda akan menambahkan:ke akhir file, keluar, dan simpan file tersebut. Jika semuanya berjalan dengan baik, dan Anda adalah anggota kelompok steroid_users, Anda akan dapat mengeluarkan
sudo *some-command*
tanpa repot perlu memasukkan kata sandi Anda.Perlu diingat bahwa siapa pun yang memiliki akses ke terminal Anda saat Anda login - atau jika Anda memiliki pengaturan ssh untuk auth berbasis kunci, atau (bahkan lebih buruk) telah mengaktifkan login sesi bebas kata sandi - akses lengkap dan tidak terbatas ke seluruh Anda sistem. Jika Anda memiliki banyak pengguna di sistem Anda, atau jika ini adalah file server, semua file pengguna dapat berisiko karena root dapat melakukan apa saja!
Juga, jika Anda membuat kesalahan, visudo akan menampilkan dan pesan kesalahan dan tidak menyimpan perubahan ke file. Ini akan membantu mencegah kerusakan sudo sepenuhnya. Anda harus benar-benar membaca dokumentasinya . Sudo dirancang untuk memberikan pengguna akses yang cukup untuk melakukan pekerjaan mereka tanpa perlu mengekspos seluruh sistem Anda. Mungkin menguntungkan untuk hanya memberikan akses bebas kata sandi untuk perintah tertentu.
Saya harap ini membantu.
sumber
Anda harus mengedit file '/ etc / sudoers' (ada perintah 'visudo' untuk itu.) Untuk menambahkan NOPASSWD sebelum daftar perintah yang diizinkan untuk pengguna atau grup Anda. Jika pengguna Anda dalam grup 'admin' - Anda perlu mengikuti:
Periksa https://help.ubuntu.com/community/Sudoers , btw.
sumber
Anda BISA menambahkan bendera nopasswd ke daftar pengguna tetapi itu tidak menghilangkan semua kata sandi yang diajukan pertanyaan. Hanya yang pertama yang akan ditanyakan.
sudo visudo
(Anda HARUS menggunakan sudo. Ini adalah file admin.)cyrex ALL = NOPASSWD: ALL
ataucyrex ALL = (ALL) NOPASSWD: ALL
sumber
atau
Saya kira ini akan melakukannya.
Tapi hati-hati dengan menghapus kata sandi untuk sudo.
sumber
Sekarang untuk jawaban yang sederhana! Tidak ada cara yang mungkin untuk mengacaukan apa pun atau memalsukan pemasangan Anda.
Cukup masukkan kata sandi Anda beberapa kali dan kemudian Anda tidak akan pernah harus memasukkannya lagi! Ini akan memungkinkan Anda untuk menambahkan akun admin lokal ke grup "root" yang kemudian tidak dikomentari dari templat yang akan memungkinkan seluruh hak istimewa pengguna super "root" grup. Anda dapat membaca kekhawatiran / solusi keamanan saya untuk prosedur ini di bagian akhir posting ini.
% username & adalah variabel global untuk nama pengguna Anda (ganti dengan nama pengguna yang diinginkan)
Langkah 1: Buka jendela terminal dan kemudian ketik "
sudo usermod -a -G root %username%
"Langkah 2: Kemudian salin / tempel ini ...
Langkah 2 ATAU ketik
Pergi baris 19 dan menghapus "#" sebelumnya
# auth sufficient pam_wheel.so trust
(mungkin nomor baris yang berbeda untuk beberapa)* Perintah pertama menambahkan% nama pengguna Anda% ke grup "root"
Perintah kedua / ketiga memungkinkan semua anggota "root" grup untuk menjadi superuser tanpa kata sandi, dibandingkan hanya mengizinkan pengguna "root" su hak istimewa untuk otentikasi.
Catatan akhir:
Jangan main-main dengan
/etc/sudoers
... Ada banyak pemeriksaan / saldo yang harus melalui otentikasi 'su'. Otentikasi pengguna super menggunakan prosedur pam.d yang sama seperti semua otentikasi login lainnya. "/etc/security/access.conf" memiliki tata letak untuk kontrol akses melalui komunikasi tcp / ip (192.168.0.1) dan melalui layanan telnet (tty1 & tty2 & tty3 ... dll) Ini memungkinkan penyaringan yang lebih tepat per aplikasi melalui protokol transportasi. Jika keamanan menjadi perhatian Anda, maka kekhawatiran Anda harus diarahkan pada ancaman kode jarak jauh versus seseorang yang benar-benar menyentuh komputer Anda ketika Anda meninggalkan ruangan !!!Makanan untuk paranoia (jangan ketik ini hanya di ulasan saja):
^ Ini memblokir akses ke konsol untuk siapa saja yang bukan anggota sistem atau root. Terkadang program menginstal nama pengguna / grup yang dieksploitasi!
sumber