Ubuntu VPS root password మార్చడం ఎలా
Ubuntu VPSలో root లేదా user passwordను passwd, chpasswd, chageతో మార్చండి. SSH access కోల్పోకుండా రెండో sessionలో పరీక్షించి, password మరచితే తిరిగి login అయ్యే మార్గాలను చూడండి.
Ubuntuలో మీ VPS root password ను ఎలా మార్చాలి
Ubuntuలో మీ VPS (virtual private server) root password మార్చడానికి, sudo అమలు చేయగల userగా SSH (secure shell) sessionను తెరిచి, తరువాత sudo passwd root అమలు చేయండి. కొత్త passwordను రెండుసార్లు నమోదు చేయమని ఇది అడుగుతుంది. పాత passwordను అడగదు, ఎందుకంటే sudo మీరు ఎవరో ఇప్పటికే నిర్ధారించింది. మీ స్వంత login passwordను మార్చాలంటే, arguments లేకుండా passwd అమలు చేయండి. అప్పుడు ముందుగా మీ ప్రస్తుత passwordను నమోదు చేయమని అడుగుతుంది.
passwd # your own password
sudo passwd deploy # another user's password
sudo passwd root # root's passwordఇదే మొత్తం ప్రక్రియ. క్రింద ఉన్నది సాధారణంగా సమస్యలు ఏర్పడే భాగం: session కోల్పోయే ముందు కొత్త password పనిచేస్తుందో నిర్ధారించడం, script నుంచి passwords సెట్ చేయడం, ఒక passwordను ఉద్దేశపూర్వకంగా expire చేయడం, అలాగే password ఇప్పటికే కోల్పోయినప్పుడు మళ్లీ login కావడం.
పాస్వర్డ్ను మార్చే ముందు రెండవ session తెరవండి
ఇప్పుడే రెండవ SSH session తెరిచి, దాన్ని connected గా ఉంచండి. ఈ guide లోని దాదాపు ప్రతి వైఫల్యాన్ని, ఒక authenticated shell ఇంకా పనిచేస్తున్నప్పుడు రెండు నిమిషాల్లో పరిష్కరించవచ్చు. చివరి shell కూడా మూసుకున్న తర్వాత మాత్రం console కు వెళ్లాల్సి రావచ్చు.
ఇప్పటికే తెరిచి ఉన్న shell, దానికి చెందిన account ను మార్చినా, lock చేసినా లేదా expire చేసినా పనిచేస్తూనే ఉంటుంది. SSH login సమయంలో credentials ను పరిశీలిస్తుంది. తరువాత మళ్లీ పరిశీలించదు. దీనికి మినహాయింపు sudo. దాని timestamp గడువు ముగిసిన తర్వాత ఇది PAM (pluggable authentication modules) ద్వారా మీ పాస్వర్డ్ను మళ్లీ పరిశీలిస్తుంది. డిఫాల్ట్గా, చివరి prompt వచ్చిన 15 నిమిషాల తర్వాత timestamp గడువు ముగుస్తుంది. అందువల్ల కొత్త పాస్వర్డ్కు మొదటి వాస్తవ పరీక్ష login సమయంలో కాదు; sudo పాస్వర్డ్ అడిగే తదుపరి సమయంలో జరుగుతుంది.
మొదటి session తెరిచి ఉన్నప్పుడే రెండవ session లో కొత్త పాస్వర్డ్ను పరీక్షించండి.
passwd తో మీ స్వంత password మార్చండి
passwdChanging password for deploy.
Current password:
New password:
Retype new password:
passwd: password updated successfullypasswd: password updated successfully మాత్రమే /etc/shadow లోని hash మార్చబడిందని సూచించే output. మరేదైనా కనిపిస్తే పాత password అలాగే ఉంది.
ఇక్కడ రెండు failures జరుగుతాయి. passwd: Authentication token manipulation error తర్వాత passwd: password unchanged కనిపిస్తే, మీరు నమోదు చేసిన ప్రస్తుత password తప్పు అని లేదా /etc/shadow ఉన్న filesystem పై రాయడం సాధ్యం కాదని అర్థం. Recovery mode లో ఇది సాధారణ స్థితి. You must choose a longer password. అనేది /etc/pam.d/common-password లోని pam_unix నుంచి వస్తుంది. ఇది సాధారణ users కోసం password పొడవు మరియు సారూప్యత తనిఖీలను అమలు చేస్తుంది.
చాలా VPS images లో default account (ubuntu లేదా మీ provider అందించే పేరు) కు password ఉండదు; SSH key మాత్రమే ఉంటుంది. passwd కు తనిఖీ చేయడానికి ప్రస్తుత password లేకపోవడంతో, అది మొదటి prompt ను దాటలదు. దాని బదులుగా sudo passwd $USER ఉపయోగించండి. ఆ image లోని sudoers drop-in file ఆ account కు password లేకుండానే sudo అమలు చేయడానికి అనుమతిస్తుంది.
sudo passwd తో మరొక వినియోగదారు password మార్చడం
sudo passwd deployroot ఖాతాను పాత password అడగదు. అలాగే, సాధారణ వినియోగదారులకు వర్తించే password బల పరీక్షలను pam_unix దాటవేస్తుంది. అందువల్ల ఆ వినియోగదారు స్వయంగా సెట్ చేయలేని password ను root సెట్ చేయగలదు.
Password ను lock చేయడం వేరు. sudo passwd -l deploy నిల్వ చేసిన hash ముందు ! ను ఉంచుతుంది. దాంతో ఏ password కూడా దానికి సరిపోదు. sudo passwd -u deploy దాన్ని తొలగిస్తుంది. స్థితిని తిరిగి చూడటానికి sudo passwd -S deploy ఉపయోగించండి.
Password ను lock చేయడం వల్ల ఆ వినియోగదారు login చేయడం ఆగదు. వారి ~/.ssh/authorized_keys లోని ఏ key అయినా పనిచేస్తుంది, ఎందుకంటే public key authentication /etc/shadow ను ఎప్పుడూ చదవదు. ఖాతాను పూర్తిగా నిలిపివేయడానికి ఖాతానే expire చేయండి:
sudo usermod --expiredate 1 deployఇది ఖాతా expiry ను 1970లోని తేదీకి సెట్ చేస్తుంది. అందువల్ల ఏ credential ఇచ్చినా sshd login ను తిరస్కరిస్తుంది. దీన్ని రద్దు చేయడానికి sudo usermod --expiredate '' deploy ఉపయోగించండి.
passwd -d ను ఉపయోగించవద్దు. ఇది password ను lock చేయకుండా ఖాళీ password గా సెట్ చేస్తుంది. పాత release లో PAM stack లో ఇప్పటికీ nullok ఉంటే, ఖాళీ password ను ఎవరైనా ఉపయోగించగలరు.
VPSలో rootకు password అవసరమా?
Ubuntuలో root ఖాతా locked స్థితిలో విడుదలవుతుంది. /etc/shadow లో hash స్థానంలో ! ఉంటుంది, మరియు sudo passwd -S root root L తో ప్రారంభమయ్యే ఒక line ను చూపుతుంది. మీరు password సెట్ చేసే వరకు passwordతో rootగా login చేయడం సాధ్యం కాదు. అందుకే image మీకు sudo సామర్థ్యం ఉన్న userను అందిస్తుంది. rootగా కాకుండా VPSలో least privilege user accounts విధానాన్ని అనుసరించాలి.
root password సెట్ చేయడం ద్వారా ఒక ప్రత్యేక ప్రయోజనం లభిస్తుంది: provider console ద్వారా serverలోకి ప్రవేశించే మార్గం. ఆ console network stack కింద virtual machineకు అనుసంధానమవుతుంది. అందువల్ల sshd తప్పుగా configure అయినా లేదా firewall rule తప్పుగా ఉన్నా అది పనిచేస్తుంది. అయితే దీనికి ఒక ప్రతికూలత కూడా ఉంది. rootకు password ఉన్నప్పుడు GRUB recovery menuలోని root shell ఆ passwordను అడుగుతుంది. అంటే మరచిపోయిన passwordను reset చేయడానికి ఉపయోగించే tool కూడా అదే password వెనుక ఉంటుంది.
root password సెట్ చేసినంత మాత్రాన SSH ద్వారా rootగా login చేయడం సాధ్యం కాదు. Ubuntuలో PermitRootLogin prohibit-password అమలులో ఉంటుంది. అంటే keys మాత్రమే అనుమతించబడతాయి. మీ server వాస్తవంగా ఏ configurationను ఉపయోగిస్తుందో పరిశీలించండి:
sudo sshd -T | grep -i permitrootloginప్రతి Include line resolve చేసిన తర్వాత effective configurationను sshd -T చూపుతుంది. అందువల్ల /etc/ssh/sshd_config.d/ drop-in filesను కలిగి ఉన్నప్పుడు ఇది మాత్రమే నిజమైన సమాధానం.
స్క్రిప్ట్లో chpasswd తో పాస్వర్డ్ను సెట్ చేయడం
passwd టెర్మినల్ నుంచి ఇన్పుట్ చదువుతుంది. అందువల్ల దాన్ని స్క్రిప్ట్ ద్వారా నడపలేరు. chpasswd ప్రామాణిక ఇన్పుట్ నుంచి ప్రతి పంక్తికి ఒకటి చొప్పున user:password జతలను చదువుతుంది.
printf '%s:%s\n' 'deploy' "$NEW_PASSWORD" | sudo chpasswdఇది పనిచేస్తుంది. కానీ plaintext పాస్వర్డ్ మీ shell history లోకి మరియు మీ CI (continuous integration) logs లోకి చేరుతుంది. ముందుగా దానికి hash రూపొందించండి:
HASH=$(openssl passwd -6)
printf '%s:%s\n' 'deploy' "$HASH" | sudo chpasswd -eopenssl passwd -6 పాస్వర్డ్ను echo చేయకుండా రెండుసార్లు అడుగుతుంది. తరువాత $6$ తో ప్రారంభమయ్యే SHA-512 crypt hash ను ముద్రిస్తుంది. రెండవ field ఇప్పటికే hashed గా ఉందని -e కు chpasswd తెలియజేస్తుంది. అందువల్ల అది ఉన్న విధంగానే /etc/shadow లోకి కాపీ అవుతుంది. ఈ hash ను repository లేదా CI variable లో భద్రంగా ఉంచవచ్చు. మీరు టైప్ చేసిన machine ను plaintext ఎప్పటికీ విడిచిపెట్టదు.
passwd పాస్వర్డ్లను సెట్ చేసినప్పుడు, Ubuntu 24.04 కొత్త పాస్వర్డ్లకు yescrypt ($y$) ఉపయోగిస్తుంది. అయితే openssl passwd -6 SHA-512 ను ఇస్తుంది. login సమయంలో రెండూ verify అవుతాయి, ఎందుకంటే libxcrypt రెండు formats ను చదవగలదు. వాటిని కలిపి ఉపయోగించడం సమస్య కాదు. ప్రతి Ubuntu LTS release లో openssl passwd -6 ఒకే విధంగా పనిచేస్తుంది. కానీ chpasswd -c YESCRYPT అలా పనిచేయదు. 20.04 లోని పాత shadow package కు ఆ method name తెలియదు. Release మార్పు చేసిన తర్వాత కూడా ఈ hashes పనిచేస్తాయి. కాబట్టి 24.04 server ను 26.04 కు upgrade చేయడం వల్ల ఎవరి పాస్వర్డ్ను కూడా మళ్లీ reset చేయాల్సిన అవసరం ఉండదు.
పాస్వర్డ్ నిజంగా మారిందో ఎలా తనిఖీ చేయాలి?
ముందుగా metadata ను చూడండి. తరువాత login ద్వారా దాన్ని నిర్ధారించండి.
sudo passwd -S deploydeploy P 08/01/2026 0 99999 7 -1రెండవ field స్థితిని చూపిస్తుంది: ఉపయోగించగల password కోసం P, locked స్థితికి L, password అసలు లేనప్పుడు NP. తేదీ password చివరిసారి మార్చిన తేదీ. కాబట్టి అది ఈరోజు తేదీగా ఉండాలి. దాని తరువాతి సంఖ్యలు క్రింద వివరించే aging fields.
సురక్షితమైన ప్రత్యక్ష పరీక్ష sudo. sudo -k cached timestamp ను తొలగిస్తుంది. sudo -v కొత్త prompt ను తప్పనిసరిగా చూపిస్తుంది. అక్కడ కొత్త password అంగీకరించబడితే PAM దాన్ని అంగీకరించినట్లు. మీ ప్రస్తుత session లో ఏ మార్పూ జరగదు.
sudo -k && sudo -vమరో account ను పరీక్షించడానికి, privileged కాని shell నుంచి su - deploy అమలు చేయండి. sudo su - deploy అమలు చేయవద్దు. root ను password అడగరు కాబట్టి ఆ పరీక్ష ఏ విషయాన్నీ నిరూపించదు. తప్పు password ఇస్తే su: Authentication failure ముద్రించబడుతుంది.
నిజమైన పరీక్ష, ప్రస్తుత పని session తెరిచి ఉంచి, మీ laptop నుంచి కొత్త SSH login చేయడం:
ssh -o PubkeyAuthentication=no deploy@203.0.113.10ఇక్కడ Permission denied (publickey). అంటే server password authentication ను అందించలేదని అర్థం. అందువల్ల password మార్చినా login సాధ్యం కాదు. Permission denied, please try again. అంటే server password authentication ను అందించింది, కానీ మీరు టైప్ చేసిన password ను తిరస్కరించింది.
తదుపరి login సమయంలో password మార్చేలా chage తో అమలు చేయండి
sudo chage -d 0 deploy-d 0 చివరి మార్పు తేదీని epoch కు సెట్ చేస్తుంది. అందువల్ల PAM password గడువు ముగిసిందిగా పరిగణిస్తుంది. తదుపరి interactive login సమయంలో shell ఇవ్వడానికి ముందు ప్రస్తుత password ను, తరువాత కొత్త password ను అడుగుతుంది. sudo passwd -e deploy కూడా ఇదే పని చేస్తుంది.
దీన్ని password తో interactive login చేసే accounts కు మాత్రమే ఉపయోగించండి. key ఆధారిత login లపై కూడా expired password ప్రభావం చూపుతుంది. కారణం, key authentication చేసినప్పటికీ sshd PAM account దశను అమలు చేస్తుంది. Script లోని ssh deploy@203.0.113.10 'systemctl restart app' ఈ కారణంగా విఫలమై ఆగిపోతుంది:
Password change required but no TTY available.ఆ line తర్వాత ఏదీ అమలు కాదు. Job non-zero exit code మాత్రమే నివేదిస్తుంది.
పాస్వర్డ్ గడువు ఫీల్డ్ల అర్థం
sudo chage -l deployLast password change : Aug 01, 2026
Password expires : never
Password inactive : never
Account expires : never
Minimum number of days between password change : 0
Maximum number of days between password change : 99999
Number of days of warning before password expires : 7ఆ సంఖ్యలు /etc/shadow లోని ఆ వినియోగదారు లైన్లోని 4 నుంచి 8 ఫీల్డ్లు. కనిష్ఠ రోజులు (chage -m) అంటే పాస్వర్డ్ను మళ్లీ మార్చడానికి ముందు వినియోగదారు వేచి ఉండాల్సిన కాలం. బలవంతంగా మార్చిన తర్వాత ఎవరైనా వెంటనే పాత పాస్వర్డ్కు తిరిగి మారకుండా ఇది నిరోధిస్తుంది. గరిష్ఠ రోజులు (chage -M) అంటే పాస్వర్డ్ చెల్లుబాటులో ఉండే కాలం. హెచ్చరిక రోజులు (chage -W) అంటే login సమయంలో హెచ్చరికలు చూపించడం ప్రారంభమయ్యే సమయం. నిష్క్రియ రోజులు (chage -I) అంటే పాస్వర్డ్ గడువు ముగిసిన తర్వాత అది పూర్తిగా అంగీకరించబడకుండా నిలిపివేయడానికి ముందు ఇచ్చే grace period. ఖాతా గడువు (chage -E) అనేది ఖచ్చితమైన తేదీ. ఇది పాస్వర్డ్ గడువుతో సంబంధం లేకుండా విడిగా పనిచేస్తుంది.
sudo chage -M 90 -W 14 deployPolicy తప్పనిసరిగా కోరినప్పుడు మాత్రమే దీన్ని సెట్ చేయండి. NIST (US National Institute of Standards and Technology) 2017 నుంచి సాధారణ పాస్వర్డ్ గడువు విధానానికి వ్యతిరేకంగా సూచిస్తోంది. అటువంటి విధానం ఒకే పాస్వర్డ్కు ఊహించగల మార్పులు చేయడానికి వినియోగదారులను ప్రోత్సహిస్తుంది. దాని బదులుగా compromise జరిగినట్లు ఆధారం ఉన్నప్పుడు పాస్వర్డ్ మార్చడాన్ని తప్పనిసరి చేయాలని NIST సూచిస్తోంది. Password manager లో భద్రపరిచిన పొడవైన, ప్రత్యేకమైన పాస్వర్డ్ మరియు key based SSH, 90 రోజుల చక్రం కంటే మెరుగైన రక్షణను అందిస్తాయి.
root password కోల్పోయినప్పుడు ఏమి చేయాలి
సర్వర్లోని ఏదైనా account sudo అమలు చేయగలిగితే, password ను recover చేయాల్సిన అవసరం లేదు: sudo passwd root కొత్త password ను సెట్ చేస్తుంది. అసలు క్లిష్ట పరిస్థితి పనిచేసే login ఏదీ అందుబాటులో లేనప్పుడు ఏర్పడుతుంది.
క్రింద పేర్కొన్న అన్ని దశలకు provider console అవసరం. చాలా panels లో దీనిని VNC (virtual network computing) లేదా serial consoleగా చూపిస్తారు. ఇది network stack కింద ఉన్న virtual machine కు నేరుగా అనుసంధానమవుతుంది. అందువల్ల sshd settings మరియు firewall rules దీనిపై ప్రభావం చూపవు.
- panel నుంచి server ను reboot చేసి console ను monitor చేయండి.
- GRUB menu ను తెరవండి. Cloud images సాధారణంగా
GRUB_TIMEOUT=0ను సెట్ చేస్తాయి. అందువల్ల BIOS boot సమయంలోShiftను నొక్కి ఉంచండి లేదా UEFI boot సమయంలో reboot ప్రారంభమైన వెంటనేEscను పదేపదే నొక్కండి. Advanced options for Ubuntuను ఎంచుకోండి. తరువాత(recovery mode)తో ముగిసే entry ను ఎంచుకోండి. ఆపై recovery menu లోrootను ఎంచుకోండి.- ముందుగా
mount -o remount,rw /అమలు చేయండి. Recovery root filesystem ను read-onlyగా mount చేస్తుంది. అందువల్ల ఇది చేయకపోతేpasswdవిఫలమవుతుంది, ఎందుకంటే అది/etc/shadowకు రాయలేకpasswd: Authentication token manipulation errorచూపిస్తుంది. - అవసరమైన account కోసం
passwd ubuntuఅమలు చేసి, తరువాత panel నుంచి reboot చేయండి.
root కు ఇప్పటికే password ఉండి, మీరు కోల్పోయింది అదే password అయితే, recovery shell ఆ password ను అడుగుతుంది. అప్పుడు ఈ విధానం పనిచేయదు. బదులుగా provider యొక్క rescue image నుంచి boot చేయండి. తరువాత అసలు disk ను mount చేసి, దాని లోపల password ను మార్చండి.
lsblk
sudo mount /dev/vda1 /mnt
sudo mount --bind /dev /mnt/dev
sudo mount --bind /proc /mnt/proc
sudo mount --bind /sys /mnt/sys
sudo chroot /mnt passwd ubuntu
sudo umount -R /mntఈ పేజీ నుంచి /dev/vda1 ను copy చేయకుండా, partition layout ను lsblk నుంచి చదవండి. root partition పెద్దది. UEFI image లో దాని పక్కనే చిన్న EFI partition ఉంటుంది. ఆ partition లో /etc directory అసలు ఉండదు.
మీ SSH password ను అంగీకరించడం ఆపినప్పుడు చేయాల్సినవి
మీకు ఇంకా ఉన్న session నుంచే పని చేయండి. ఏ session కూడా మిగలకపోతే console ను ఉపయోగించండి.
Permission denied, please try again. అంటే server password authentication ను అందించింది, కానీ మీరు పంపిన password ను తిరస్కరించింది. సాధారణ కారణాలు caps lock ఆన్లో ఉండటం లేదా password సెట్ చేసినప్పుడు ఉపయోగించిన keyboard layout కు console keyboard layout భిన్నంగా ఉండటం.
Permission denied (publickey). అంటే server password authentication ను అసలు అందించలేదు. PasswordAuthentication no ఎక్కడో సెట్ అయి ఉంది. Ubuntu 22.04 మరియు తరువాతి versions లో ఇది సాధారణంగా /etc/ssh/sshd_config.d/ కింద ఉన్న drop-in file లో ఉంటుంది. ఆ file, main file ను override చేస్తుంది. ప్రభావంలో ఉన్న values ను చదవండి:
sudo sshd -T | grep -Ei 'passwordauthentication|kbdinteractiveauthentication|permitrootlogin'KbdInteractiveAuthentication yes ను PasswordAuthentication no తో పాటు ఉంచితే కూడా password ద్వారా login చేయవచ్చు, ఎందుకంటే keyboard-interactive method అదే PAM stack ను అమలు చేస్తుంది. ఒకదాన్ని ఆపి, మరొకదాన్ని ప్రారంభంగా ఉంచితే server key-only authentication ఉపయోగిస్తున్నట్లు కనిపించినా typed passwords ను అంగీకరిస్తుంది.
Key login తిరస్కరించబడినప్పుడు కూడా అదే line కనిపిస్తుంది. కాబట్టి మీరు password కాకుండా key ను అందించి ఉంటే, server password setting అనేది Permission denied (publickey) వెనుక ఉన్న ఐదు లోపాల్లో ఒకటి మాత్రమే. మీ సమస్య ఏదో ssh -v output చెబుతుంది.
Disconnect message లో Too many authentication failures కనిపిస్తే, password కు చేరుకునే ముందు మీ client అనేక keys ను అందించింది. Server MaxAuthTries పరిమితిని చేరుకుంది. దీని default విలువ 6. ఒకే method ను బలవంతంగా ఉపయోగించండి:
ssh -o IdentitiesOnly=yes -o PubkeyAuthentication=no deploy@203.0.113.10ఒక నిమిషం క్రితం పనిచేసిన port పై Connection refused కనిపిస్తే, repeated failures తర్వాత SSH ను monitor చేస్తున్న fail2ban మీ address ను ban చేసి ఉండవచ్చు. దీని default ban rule packet ను drop చేయకుండా reject చేస్తుంది. అందుకే connection timeout కాకుండా refusal త్వరగా వస్తుంది. Console నుంచి sudo fail2ban-client status sshd banned addresses ను చూపిస్తుంది. sudo fail2ban-client set sshd unbanip 203.0.113.10 మీ address ను clear చేస్తుంది.
పాస్వర్డ్లు తాత్కాలిక దశ మాత్రమే; keys తుది విధానం
SSH ద్వారా పనిచేసే పాస్వర్డ్ను ఇంటర్నెట్లోని ప్రతి scanner ఊహించడానికి ప్రయత్నించగలదు. Key based authentication కు మారితే ఈ guessing ప్రయత్నాలు ప్రాధాన్యం కోల్పోతాయి. ముందుగా key pair ను generate చేసి, public భాగాన్ని install చేయండి. తరువాత మరొక terminal నుంచి ఆ keyతో login అవుతున్నదని నిర్ధారించండి. ఆ తర్వాతే మిగతా మార్పులు చేయండి. SSH key management basics లో key generation, authorized_keys మరియు passphrases గురించి వివరాలు ఉన్నాయి.
తర్వాత password authentication ను off చేయండి. మీరు మార్చిన file ను మాత్రమే నమ్మకుండా, sudo sshd -T తో అది నిజంగా off అయిందని నిర్ధారించండి. VPSలో SSH hardening మార్చదగిన ముఖ్యమైన sshd settings ను మిగతావాటితో కలిపి వివరిస్తుంది. కొత్త VPSలో మొదటి పది నిమిషాలు కొత్త serverలో వీటిని ఏ క్రమంలో చేయాలో చూపిస్తుంది.
ఆ తర్వాత ఒక password ను తప్పనిసరిగా ఉంచండి. Key-only serverలో sshd config దెబ్బతింటే provider console ద్వారానే చేరుకోవచ్చు. ఆ console username మరియు password అడుగుతుంది. మీరు భద్రంగా నిల్వచేసిన బలమైన password ఉన్న account ఉంటే, సమస్యను ఐదు నిమిషాల్లో పరిష్కరించగలుగుతారు; లేకపోతే server ను మళ్లీ install చేయాల్సి రావచ్చు.
FAQ
root పాస్వర్డ్ పాతది తెలియకపోతే నా VPSలో దాన్ని ఎలా మార్చాలి?
sudo అమలు చేయగల వినియోగదారుగా login చేసి, sudo passwd root అమలు చేయండి. ఇది పాత పాస్వర్డ్ అడగకుండా కొత్త పాస్వర్డ్ను సెట్ చేస్తుంది, ఎందుకంటే sudo ఇప్పటికే మీకు authentication పూర్తి చేసింది. ఆ సిస్టమ్లోని ఏ account కూడా sudo అమలు చేయలేకపోతే, provider console తెరిచి, GRUB recovery menuలోకి reboot చేసి, root shell entryని ఎంచుకోండి. తరువాత mount -o remount,rw / అమలు చేసి, ఆపై passwd అమలు చేయండి. rootకు ఇప్పటికే పాస్వర్డ్ ఉండి, మీరు కోల్పోయింది అదే అయితే recovery shell దాన్ని అడుగుతుంది. అప్పుడు మిగిలే మార్గం provider యొక్క rescue imageను ఉపయోగించి diskను mount చేసి chroot చేయడం.
passwd "Authentication token manipulation error" అని ఎందుకు చూపిస్తుంది?
ఈ సందేశానికి రెండు కారణాలు ఉన్నాయి. సాధారణ కారణం Current password: prompt వద్ద తప్పు సమాధానం ఇవ్వడం. దాని కింద ఉన్న passwd: password unchanged line ఏదీ వ్రాయబడలేదని నిర్ధారిస్తుంది. మరొక కారణం వ్రాయలేని filesystem. recovery modeలో ఇదే సమస్య ఎదురవుతుంది, ఎందుకంటే అక్కడ / read-onlyగా mount అయి ఉంటుంది. mount -o remount,rw / అమలు చేసి మళ్లీ ప్రయత్నించండి.
నా Linux పాస్వర్డ్ మార్చితే sudo పాస్వర్డ్ కూడా మారుతుందా?
అవును. sudoకు స్వంత పాస్వర్డ్ ఉండదు. ఇది PAM ద్వారా అదే /etc/shadow entryను ఉపయోగించి మీ authenticationను నిర్ధారిస్తుంది; SSH మరియు su కూడా అదే entryను ఉపయోగిస్తాయి. అందువల్ల ప్రతి accountకు ఒకే పాస్వర్డ్ ఉంటుంది. మార్పు తర్వాత కనిపించే మొదటి sudo promptనే వాస్తవ పరీక్షగా పరిగణించడానికి ఇదే కారణం. పని చేస్తున్న session ఉన్నప్పుడే ఆ promptను బలవంతంగా చూపించడానికి sudo -k && sudo -v అమలు చేయండి.
నా పాస్వర్డ్ మార్చితే SSH keys లేదా ప్రస్తుతం తెరిచి ఉన్న sessions పనిచేయడం ఆగిపోతుందా?
లేదు. Public key authentication /etc/shadowను ఎప్పుడూ చదవదు. అందువల్ల పాస్వర్డ్ మార్చిన తర్వాత, passwd -l తర్వాత, అలాగే chage -d 0 తర్వాత కూడా keys పనిచేస్తాయి. ఇప్పటికే తెరిచి ఉన్న sessions కొనసాగుతాయి, ఎందుకంటే SSH login సమయంలో మాత్రమే credentialsను తనిఖీ చేస్తుంది. Live sessionలో మారేది ఒక్క sudo మాత్రమే. దాని 15 minute timestamp ముగిసిన తర్వాత ఇది కొత్త పాస్వర్డ్ను ఒక్కసారి అడుగుతుంది.
తదుపరి login సమయంలో వినియోగదారు తన పాస్వర్డ్ మార్చేలా ఎలా చేయాలి?
sudo chage -d 0 deploy అమలు చేయండి. లేదా అదే పని చేసే sudo passwd -e deploy అమలు చేయండి. నిల్వ చేసిన last-change date epochకు మారుతుంది. PAM పాస్వర్డ్ గడువు ముగిసిందిగా పరిగణిస్తుంది. తదుపరి interactive loginలో shell ప్రారంభమయ్యే ముందు కొత్త పాస్వర్డ్ సెట్ చేయాలి. SSH ద్వారా scripts ఉపయోగించే accountపై దీన్ని చేయవద్దు. అప్పుడు non-interactive command Password change required but no TTY available.తో విఫలమై, ఎప్పుడూ అమలు కాదు.