Ubuntu'da Sudo Tweak ve Yapılandırma 8 Yolları
Linux'taki çoğu şey gibi, sudo komutu da yapılandırılabilir. Parola istemeden sudo komutlarını çalıştırabilir, belirli kullanıcıları yalnızca onaylanmış komutlarla kısıtlayabilir, sudo ile çalıştırılan günlük komutlarını ve daha fazlasını yapabilirsiniz..
Sudo komutunun davranışı, sisteminizdeki / etc / sudoers dosyası tarafından kontrol edilir. Bu komut, dosyayı yanlışlıkla kırmamanız için sözdizimi denetimi yapan visudo komutuyla düzenlenmelidir..
Sudo İzinlerine Sahip Kullanıcıları Belirtme
Ubuntu'yu kurarken oluşturduğunuz kullanıcı hesabı Yönetici hesabı olarak işaretlenir, bu sudo kullanabileceği anlamına gelir. Yüklemeden sonra oluşturduğunuz diğer kullanıcı hesapları Yönetici veya Standart kullanıcı hesapları olabilir - Standart kullanıcı hesaplarının sudo izinleri yoktur..
Kullanıcı hesabı türlerini Ubuntu Kullanıcı Hesapları aracından grafiksel olarak kontrol edebilirsiniz. Açmak için paneldeki kullanıcı adınızı tıklayın ve Kullanıcı Hesapları'nı seçin veya kısa mesajdan Kullanıcı Hesapları'nı arayın..
Sudo Parolanızı Unutun
Varsayılan olarak, sudo, siz yazdıktan sonra şifrenizi 15 dakika boyunca hatırlar. Bu yüzden hızlı bir şekilde art arda sudo ile birden fazla komut çalıştırırken şifrenizi sadece bir kez yazmanız gerekir. Bilgisayarınızı başka birinin kullanmasına izin vermek üzeresiniz ve bir sonraki çalıştırırken parolanızı sormak istemeniz durumunda, aşağıdaki komutu uygulayın ve sudo şifrenizi unutacak:
sudo -k
Her zaman bir şifre sor
Her seferinde sudo kullanmanız istenirse - örneğin, başkalarının düzenli olarak bilgisayarınıza erişimi varsa - şifre hatırlama davranışını tamamen devre dışı bırakabilirsiniz..
Bu ayar, diğer sudo ayarları gibi / etc / sudoers dosyasında bulunur. Dosyayı düzenlemeye açmak için visudo komutunu bir terminalde çalıştırın:
sudo visudo
Adına rağmen, bu komut varsayılan olarak Ubuntu'daki geleneksel vi düzenleyici yerine yeni kullanıcı dostu nano editöre varsayılandır..
Aşağıdaki satırı, dosyadaki diğer Varsayılanlar satırlarının altına ekleyin:
Varsayılanlar timestamp_timeout = 0
Dosyayı kaydetmek için Ctrl + O tuşlarına basın ve ardından Nano'yu kapatmak için Ctrl + X tuşlarına basın. Sudo şimdi her zaman bir parola ister.
Parola Zaman Aşımını Değiştirme
Farklı bir parola zaman aşımı süresi ayarlamak için - ya 30 dakika gibi uzun bir süre ya da 5 dakika kadar kısa bir süre için - yukarıdaki adımları izleyin, ancak timestamp_timeout için farklı bir değer kullanın. Sayı, sudo'nun şifrenizi hatırlayacağı dakika sayısına karşılık gelir. Sudo'nuzun şifrenizi 5 dakika boyunca hatırlamasını sağlamak için aşağıdaki satırı ekleyin:
Varsayılan değerler timestamp_timeout = 5
Asla Şifre Sorma
Ayrıca, sudo'nun hiçbir zaman bir şifre istemesini de sağlayamayabilirsiniz - giriş yaptığınız sürece, sudo ile önek verdiğiniz her komut root izinleriyle çalışır. Bunu yapmak için sudoers dosyanıza şu satırı ekleyin; kullanıcı adı kullanıcı adınızdır:
kullanıcı adı ALL = (ALL) NOPASSWD: ALL
Ayrıca% sudo satırını da değiştirebilirsiniz; yani, sudo grubundaki tüm kullanıcıların (Administrator kullanıcıları olarak da bilinir) sudo kullanmalarını sağlayan tüm satırları, tüm Yönetici kullanıcılarının parola gerektirmemesini sağlayabilirsiniz:
% sudo ALL = (ALL: ALL) NOPASSWD: ALL
Parola Olmadan Belirli Komutları Çalıştır
Sudo ile çalıştırıldığında hiçbir zaman şifre gerektirmeyecek belirli komutlar da belirleyebilirsiniz. Yukarıdaki NOPASSWD'den sonra “ALL” kullanmak yerine, komutların yerini belirtin. Örneğin, aşağıdaki satır kullanıcı hesabınızın apt-get ve shutdown komutlarını şifre olmadan çalıştırmasına izin verecektir.
kullanıcı adı ALL = (ALL) NOPASSWD: / usr / bin / apt-get, / sbin / shutdown
Bu, bir komut dosyasında sudo ile belirli komutları çalıştırırken özellikle yararlı olabilir.
Kullanıcının Yalnızca Belirli Komutları Çalıştırmasına İzin Ver
Belirli komutları kara listeye alabilir ve kullanıcıların bunları sudo ile çalıştırmalarını engelleyebilirsiniz, ancak bu çok etkili değildir. Örneğin, bir kullanıcı hesabının kapatma komutunu sudo ile çalıştıramayacağını belirtebilirsiniz. Ancak bu kullanıcı hesabı cp komutunu sudo ile çalıştırabilir, kapatma komutunun bir kopyasını oluşturabilir ve kopyayı kullanarak sistemi kapatabilir.
Daha etkili bir yol, belirli komutları beyaz listeye almaktır. Örneğin, apt-get ve shutdown komutlarını kullanmak için bir Standart kullanıcı hesabına izin verebilirsiniz, ancak daha fazla değil. Bunu yapmak için, standart kullanıcının kullanıcı adı olduğu standart satırı ekleyin.
standart kullanıcı ALL = / usr / bin / apt-get, / sbin / shutdown
Aşağıdaki komut, kullanıcının sudo ile hangi komutları çalıştırabileceğini bize söyleyecektir:
sudo -U standart kullanıcı -l
Sudo Access Günlüğü
Aşağıdaki satırı ekleyerek tüm sudo erişimini kaydedebilirsiniz. / var / log / sudo sadece bir örnektir; istediğiniz herhangi bir günlük dosyası konumunu kullanabilirsiniz.
Varsayılanlar logfile = / var / log / sudo
Günlük dosyasının içeriğini şunun gibi bir komutla görüntüleyin:
sudo kedisi / var / log / sudo
Bir kullanıcı sınırsız sudo erişimine sahipse, bu kullanıcının bu dosyanın içeriğini silme veya değiştirme yeteneğine sahip olduğunu unutmayın. Bir kullanıcı sudo ile bir root istemine de erişebilir ve kaydedilmemiş komutları çalıştırabilir. Günlük kaydı özelliği, bir sistem komutları alt kümesine erişimi kısıtlı olan kullanıcı hesaplarıyla birleştiğinde en kullanışlıdır..