Başka bir kök olmayan kullanıcı olarak etkileşimli bir kabuğu nasıl edinebilirim?


14

Ben Ubuntu 10.04 LTS sunucusu, varsayılan güvenlik modeli (kök kilitli, sudoayrıcalıkları yükseltmek için kullanarak ) kullanıyorum. Bazen kullanmaktan zevk sudo -iben yükseltilmiş ayrıcalıklarla bir dizi komut çalıştırmak gerekir zaman, yoksa kök yalnızca ayrıcalıklı dizinleri etrafında dolaşmaya gerektiğinde.

Bazen, kendi ayrıcalıklı olmayan sistem hesabı olarak çalışacak bir yazılım kurarken ( adduser --system --group --no-create-home --disabled-login some-daemon-user) Kendim veya köküm yerine bu kullanıcı olarak bir dizi komut çalıştırmam gerektiğini fark ettim . Kullanmayı denedim sudo -i -u some-daemon-user, ancak 1herhangi bir hata mesajı olmadan bir durum döndürüyor .

Ben kontrol ettim syslog, messages, authve debuggünlük dosyaları içinde /var/logve bunların hiçbiri herhangi bir mesaj olduğunu referans içerir sudoveya söz konusu hesabı.

Öyleyse, sadece bir şifre ayarlamadan (onlar gibi) giriş yapmadan root olmayan başka bir kullanıcı, sudo tarzı olmak mümkün mü? Sistemim bir şekilde 'bozuk' mu yoksa sadece yanlış mı yapıyorum?

Yanıtlar:


14

Aaa .. sorun şu ki, bu kullanıcıların standart kabuğu normalde olarak ayarlanmış /bin/falseve güvenlik nedeniyle bunu değiştirmemelisiniz. Ancak yine de koşabilirsiniz:sudo -u www-data /bin/sh


1
"Güvenlik nedenleri" hakkında daha fazla bilgi verebilir misiniz? sudoFlorian'ın yukarıda önerdiği gibi, kullanıcı olarak bir kabuk çalıştırmam farklı mıdır ?
Calrion

1
Bunun nedeni, sistem kullanıcısı olarak oturum açmayı başaran herhangi bir saldırganın, yani oturum açma programındaki bir hatadan yararlanarak, geçerli bir kabukla sonuçlanma olasılığının düşük olmasıdır. Bu nedenle, ayarı iyi bir karma için bile olsa / etc / passwd dosyasında olduğu gibi bırakmalısınız. Kabuğu doğrudan sudo yoluyla çağırmak bununla ilgisi yoktur.
Paul Hänsch

Yani sorun passwddosyada bir kabuk ayarlıyor , aslında kullanıcı olarak bir kabuk çalıştırmıyor . Anladım!
Calrion

9

sudo -i/bin/falsesistem kullanıcısı için hedef kullanıcının parola veritabanı girişi tarafından belirtilen kabuğu çalıştırır .

kullanım

 sudo -u some-daemon-user bash

veya

sudo -u some-daemon-user -H bash

hedef kullanıcı için ayarlanmış $ HOME ortam değişkenini ayarlamak istiyorsanız.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.