İlk önce sadece root hesabını kullanmanızı öneririm. Eğer böyle ayarladıysanız:
sshd_configHedef makinede ayarlarınızı yapın PermitRootLogin without-password.
ssh-keygenBir SSH özel anahtarı oluşturmak için yedeği çeken makinede kullanın (yalnızca bir SSH anahtarınız yoksa). Bir şifre ayarlamayın. Google’la ilgili bir öğreticiye bunun için detaylar gerekiyorsa, bol miktarda olması gerekir.
/root/.ssh/id_rsa.pubYedekleme makinesinin içeriğini /root/.ssh/authorized_keyshedef makinenize ekleyin.
- Artık yedekleme makinenizin, şifre doğrulama kullanmanıza gerek kalmadan hedef makinenize kök erişimi var.
o zaman ortaya çıkan kurulum oldukça güvenli olmalıdır.
sudoözellikle NOPASSWDyorumlarda önerildiği şekilde birleştirildiğinde, yalnızca root hesabını kullanmanın hiçbir güvenlik avantajı yoktur. Örneğin, bu öneri:
aşağıdakileri /etc/sudoersdosyanıza ekleyin :rsyncuser ALL= NOPASSWD:/usr/bin/rsync
temelde rsyncuserzaten kök izinleri verir . Sen sor:
Çünkü @MartinvonWittich Kolay tam kök kabuğu kazanmak için rsyncbirlikte yürütülen sudo? Lütfen [m] e [ile] arasında yürüyün.
Peki, basit. Önerilen yapılandırma ile, rsyncuserşimdi rsyncbir şifre sorulmadan root olarak çalışabilir. rsyncdosyaları işlemek için çok güçlü bir araçtır, bu yüzden şimdi rsyncuserkök izinleri ile dosyaları işlemek için çok güçlü bir araç var. Bundan yararlanmanın bir yolunu bulmak sadece birkaç dakikamı aldı (Ubuntu 13.04'te test edildi, gerektirir dash, bashişe yaramadı):
martin@martin ~ % sudo rsync --perms --chmod u+s /bin/dash /bin/rootdash
martin@martin ~ % rootdash
# whoami
root
# touch /etc/evil
# tail -n1 /etc/shadow
dnsmasq:*:15942:0:99999:7:::
Gördüğünüz gibi kendime bir kök kabuğu yarattım; whoamihesabımı root olarak tanımlar, dosya oluşturabilir /etcve okuyabilirim /etc/shadow. Benim istismarım setuid bitini ikiliye koymaktıdash ; Linux'un bu ikiliyi her zaman sahibinin izinleriyle çalıştırmasına neden olur, bu durumda root.
Gerçek bir köke sahip olmak, iyi nedenlerden dolayı [tavsiye edilmez]. - redanimalwar 15 saat önce
Hayır, kök hesabın etrafında gizlice çalışmak, onu kullanmanın kesinlikle uygun olduğu durumlarda işe yaramaz. Bu, kargo kültü programlamasının sadece bir başka şeklidir - sudo-root'un arkasındaki kavramı gerçekten anlamıyorsunuz, sadece “root kötü, sudo iyi” inancını kör bir şekilde uyguladığınız için bir yerde okudunuz.
Bir yandan, sudokesinlikle iş için doğru aracın olduğu durumlar var . Örneğin, etkileşimli bir grafik Linux masaüstünde çalışırken, Ubuntu diyelim, o zaman kullanmak zorunda sudokalmanız, bazen kök erişimine ihtiyaç duyduğunuz nadir durumlarda iyidir. Ubuntu kasıtlı olarak devre dışı bırakılmış bir kök hesaba sahip ve sudokullanıcıların giriş yapmak için sadece her zaman root hesabını kullanmalarını önlemek için varsayılan olarak kullanmaya zorlar . ve bu nedenle, varsayılan olarak bir kök hesaba sahip olmamak, aptal insanların bunu yapmasını önler.
Öte yandan, otomatik bir betiğin bir şey için kök izinleri gerektiren, örneğin bir yedekleme yapmak için sizinki gibi durumlar vardır. Şimdi sudoroot hesabı etrafında çalışmak sadece anlamsız değil, aynı zamanda tehlikelidir: ilk bakışta rsyncusersıradan imtiyazsız bir hesap gibi gözüküyor. Ancak, daha önce de açıkladığım gibi, daha önce rsyncusererişim kazanmış olsaydı, bir saldırganın tam erişim hakkı kazanması çok kolay olurdu . Bu yüzden, temel olarak, artık hiç bir kök hesabına benzemeyen bir ek kök hesabınız var, ki bu iyi bir şey değil.
rootilk önce hesabı kullanın .sudoözellikleNOPASSWDyorumlarda önerildiği şekilde bir araya geldiğinde, makinenizin güvenliğini gerçekten iyileştirmiyor.