Kök şifresini nasıl değiştirebiliriz?


Yanıtlar:


63

İşte en az müdahaleci olandan en müdahaleci olana kadar düşünebildiğim birkaç yöntem.

Yeniden Başlatma Olmadan

Sudo ile:sudo Çalıştırma izniniz varsa passwd, şunları yapabilirsiniz:

sudo passwd root

Enter your şifresini sonra iki kez root için yeni bir parola girin. Bitti.

Düzenleme dosyalar : olası durumda bu eserler tam yok sudoerişimi, ancak bunu düzenlemek erişebilir /etc/{passwd,shadow}. Açık /etc/shadow, biriyle sudoedit /etc/shadowveya birlikte sudo $EDITOR /etc/shadow. Kökün parola alanını (ikinci ve üçüncü sütunlar arasındaki tüm rasgele karakterler :) kendi kullanıcı parolanızla değiştirin. Kayıt etmek. Yerel, sizinle aynı şifreye sahip. Giriş yapın ve şifreyi başka bir şeyle değiştirin.

Bunlar kolay olanlar.

Yeniden başlatma gerekli

Tek kullanıcı modu : Bu sadece Renan tarafından açıklandı. GRUB'a (veya önyükleme yükleyicinize) gidebilir ve Linux komut satırını düzenleyebilirsiniz. Debian, Ubuntu ve diğerlerini kullanıyorsanız işe yaramaz. Bazı önyükleyici yapılandırmaları bunu yapmak için bir şifre gerektirir ve bunun devam edeceğini bilmeniz gerekir. Daha fazla uzatmadan:

  1. Yeniden Başlatma.
  2. Varsa, açılış zamanı şifresini girin.
  3. Boot yükleyicinizin menüsüne girin.
  4. Tek kullanıcı modu varsa, bunu seçin (Debian buna 'Kurtarma modu' diyor).
  5. Eğer değilse ve GRUB’u çalıştırın:
    1. Normal önyükleme seçeneğinizi vurgulayın.
    2. Basın edüzenleme moduna girmek için. Orada bir GRUB şifresi istenebilir.
    3. kernelVeya ile başlayan çizgiyi vurgulayın linux.
    4. Tuşuna basın e.
    5. Sonunda 'single' kelimesini ekleyin. (bir boşluk hazırlamayı unutmayın!)
    6. EnterDüzenlenen stanza basıp önyükleyin. Bazı kurtçukları kullanmak Ctrl- X, bazı kullanım b. Ekranın altında hangisinin olduğu yazıyor.

Sisteminiz tek kullanıcı modunda başlatılacaktır. Bazı dağıtımlar bu noktada sizden bir root şifresi istemeyecektir (Debian ve Debian tabanlı olanlar bunu yapar). Şimdi kökündesin. Şifreni değiştir:

mount / -o remount,rw
passwd # Enter your new password twice at the prompts
mount / -o remount,ro
sync # some people sync multiple times. Do what pleases you.
reboot

ve reboot, veya normal çalışma seviyenizi biliyorsanız, telinit 2(ya da her neyse) deyin .

Yerine koymainit : büyük ölçüde aynı talimatlara sahip, tek bir kullanıcı modu numarasına yüzeysel olarak benzer, ancak komut satırında daha fazla yetenek gerektirir. Çekirdeğinizi yukarıdaki gibi önyüklersiniz ancak bunun yerine singleekleyin init=/bin/sh. Bunun /bin/shyerine initgeçecek ve size neredeyse hiç olanak bulunmayan çok erken bir kabuk verecek . Bu noktada amacınız:

  1. Kök hacmini monte edin.
  2. Koşmaya passwdbaşla.
  3. Parolanızı passwdkomutla değiştirin.

Özel kurulumunuza bağlı olarak, bunlar önemsiz olabilir (tek kullanıcı modu için talimatlarla aynı) veya önemsiz olabilir: yükleme modülleri yükleme, RAID yazılımını başlatma, şifreli birimleri açma, LVM'yi başlatma ve benzeri işlemleri başlatma. Olmadan init, sen deamonlar veya başka herhangi süreçleri ancak çalışmayan /bin/shkendi başınıza oldukça anlamıyla olduğuna çok ve onun çocukları. Ayrıca iş kontrolünüz de yok, ne yazdığınıza dikkat edin. Biri yanlış yerleştirilmişse catve çıkamıyorsanız yeniden başlatmanız gerekebilir.

Kurtarma Diski : bu kolaydır. Seçtiğiniz bir kurtarma diskini önyükleyin. Kök dosya sisteminizi bağlayın. İşlem, hacimlerinizin nasıl katmanlaştırıldığına bağlıdır, ancak sonuçta aşağı doğru kaynamaktadır:

 # do some stuff to make your root volume available.
 # The rescue disk may, or may not do it automatically.
 mkdir /tmp/my-root
 mount /dev/$SOME_ROOT_DEV /tmp/my-root
 $EDITOR /tmp/my-root/etc/shadow
 # Follow the `/etc/shadow` editing instructions near the top
 cd /
 umount /tmp/my-root
 reboot

Açıkçası, $SOME_ROOT_DEVne olursa olsun blok cihaz adı kök dosya sisteminize kurtarma diski tarafından atanmış ve $EDITORfavori editörünüzdür ( vikurtarma sisteminde olması gerekebilir ). Bundan sonra, rebootmakinenin normal şekilde açılmasını sağlayın; root şifresi kendi kullanıcınızın şifresi olacaktır. Kök olarak giriş yapın ve hemen değiştirin.

Diğer yollar

Açıkçası, yukarıda sayısız değişiklik var. Hepsi iki adımda kaynatılır:

  1. Bilgisayara kök erişimi (catch-22 - ve gerçek numara)
  2. Kökün şifresini bir şekilde değiştir.

Yine de bunu uzaktan yapmak için? SSH'nin kapandığını varsayarsak.
CMCDragonkai

1
SSH olmadan (veya, rsh veya telnet gibi birbirinden tamamen güvenli olmayan yöntemlerden herhangi birini varsayarsak), makineye uzaktan erişiminiz yoktur, bu yüzden şifreyi değiştiremezsiniz. Tabii ki, hedef bilgisayarın, bir şekilde bir kabuk üretmenize yardımcı olabilecek, uzaktan işletilebilir bir sorunu var. Düşünce beni üzerinde çalışan bir telnet daemon daha fazla korkutuyor. :)
Alexios

Yani onu düzeltmek için fiziksel olarak ışınlanmalı mıyım?
CMCDragonkai

WRT "Kökün şifresini bir şekilde değiştir", buraya bakın: unix.stackexchange.com/a/168422/25985
goldilocks

7

Bu hemen hemen herhangi bir dağıtım üzerinde çalışması gerektiğini düşünüyorum.

Kök bölümüne başka bir sistemden, örneğin canlı bir CD'den erişebiliyorsanız, oradaki kök dizini kullanabilirsiniz /etc/shadow; İlk önce yapmak zorundasın chmod u+w shadow. İçin giriş bulun, rootmuhtemelen ilki ve şuna benzer:

root:$6$asdG0[..etc...]ae/:15666:0:99999:7:::

İlk iki iki nokta arasındaki her şeyi silin, böylece sona erersiniz:

root::15666:0:99999:7:::

Öyleyse chmod u-w shadow. Artık sistemi yeniden başlatabilirsiniz ve root şifresi yok. Sadece rootgiriş isteminde yazabilirsiniz ve bir sormayacak. Daha sonra passwdbir tane ayarlamak için kullanabilirsiniz .

Ekstra dikkatli olmak için:

  • /etc/shadowİlk önce bir yedek kopya oluşturun .
  • Yeni bir şifre belirleyene kadar kökten başka kimseyle giriş yapmayın. Bu kritik bir öneme sahip değildir, ancak ayrıcalıklı kötü amaçlı yazılımın bir tür dolu mary kartı geçirmesine neden olan teorik olasılıklara karşı koruma sağlar (“Hey, belki kök şifresi yok…”). Çok uzak bir IMO aldı.

Bu işe yarayacak, ancak oğlum bana bir kök hesaptaki şifreyi silmeme engel oluyor. Anladığım kadarıyla Ubuntu sizi runlevel 1'deki bir kök kabuğuna bırakmıyor mu? Yoksa passwdcanlı CD'den chroot bir ortamda çalıştırmak için daha iyi bir fikir olmaz mıydı ?
SailorCire

Önce diğer yöntemleri denemek daha güvenli olursa, devam edin. Ancak, sistemi kök şifresi olmadan bırakmadığınız sürece, bu iyi olmalı. Kötü amaçlı yazılımda bu durumdan yararlanmaya çalışmanın bir anlamı olmaz, çünkü önyükleme sırasında çalışıyorsa zaten kökten ayrıcalıklara sahiptir. Bu yüzden önce başka biri olarak giriş yapmayın, sanırım (konsola geçemiyorsanız, ekran yöneticisi aracılığıyla root kullanımına izin vermeyen sistemlerde bir sorun olabilir). O zaman bile pek mümkün görünmüyor.
goldilocks

@SailorCire ^^^
goldilocks

Kötü amaçlı yazılımların olasılığı konusunda da çok şüpheliyim. Ancak, önerdiklerimin arkasındaki fikir, çoğumuzun içine girdiği “Ah, daha sonra değiştireceğim çünkü şimdi çalışıyor” türündeki zihniyeti yasaklamasıdır.
SailorCire

Ayrıca , manuel olarak parola oluşturma yolları için bu cevaba başvurabilirsiniz/etc/shadow
NullUser

4

RHEL kullandığınızı düşündüğüm etiketlere bakılırsa, ancak bu çözüm tüm dağıtımlar için eşit derecede iyi çalışmalıdır.

Kök şifresi unutulursa, tek kullanıcı modunda önyükleme yapabilir ve bunu şifreyi değiştirmek için kullanabilirsiniz. Bu yaklaşım, adım adım Red Hat kılavuzunda açıklanmıştır :

  1. GRUB menüsüne girin ve tuşuna basın e.
  2. İle başlayan satırı seçin, tekrar kernelbasın e.
  3. Bu satırın sonuna koyun single. Sonra basın ENTERve bondan oot.

Sonunda passwd rootşifreyi yazıp değiştirebileceğiniz bir bilgi istemi alacaksınız . Ardından rebootsistemi yeniden başlatmak için yazın .


1
Bu sadece önyükleme şifreniz yoksa çalışır.
pradeepchhetri

1
Ve eğer tek kullanıcılı kabuk için / sbin / sulogin kullanmıyorsanız (root şifresini isteyecektir).
James O'Gorman

Dosya sistemine geçerseniz /boot/grub/grub.conf, bootloader şifresini kaldırmak ve /etc/inittabtek kullanıcılı kabuğunu / bin / sh gibi bir şeyle değiştirmek için düzenleyebilirsiniz (cc @pradeepchhetri)
NullUser
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.