Fout "Toestemming geweigerd" oplossen bij het aanmaken van Ubuntu Sudo-gebruiker met AI
Paul Grieselhuber
Introductie
Tijdens het installatieproces van Nginx op Ubuntu, is een van de eerste vereisten het instellen van een gewone, niet-root gebruiker met sudo privileges.
Dit proces wordt beschreven in een tutorial van Digital Ocean, installing Nginx and initial server setup with Ubuntu. Door de tutorial te volgen, konden we eenvoudig een gebruiker (Sammy) aanmaken, maar we kwamen een toestemmingsfout tegen toen we probeerden in te loggen als Sammy::
ssh sammy@uw_server_ip
De weergegeven fout was "Permission denied (publickey)" en er stond niets over een oplossing in de tutorial, dus we hebben het zelf opgelost, met een beetje hulp van AI.
Dit is hoe.
Stap 1. Controleer of de openbare sleutel bestaat op de lokale computer
Controleer eerst of je een SSH-sleutel hebt op je lokale machine. De publieke sleutel begint meestal met ssh-ed25519 gevolgd door een lange reeks tekens.
Voer dit commando uit:
cat ^/.ssh/id_ed25519.pub
Je zou zoiets als dit moeten zien:
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAILM4XeQ...1x sammy@example.com
Kopieer de hele sleutel (inclusief het deel ssh-ed25519) voor gebruik in de volgende stappen.
Stap 2. Schakel over naar de server
Log in op uw server als rootgebruiker:
ssh root@uw_server_ip
Stap 3. Schakel over naar Sammy
Zodra u ingelogd bent, schakelt u over naar de Sammy-gebruiker:
su sammy
Stap 4. Maak de .ssh directory
Als de .ssh directory niet bestaat, maakt u deze aan:
mkdir -p /.ssh
Stap 5. Machtigingen voor de .ssh-directory instellen
Stel de juiste rechten in voor de .ssh directory:
chmod 700 ~/.ssh
Stap 6. Maak of open het bestand authorized_keys
Open het bestand geautoriseerde_keys om het te bewerken:
nano ~/.ssh/authorized_keys
Stap 7. Plak de openbare sleutel
Plak de publieke SSH-sleutel die u eerder gekopieerd heeft in het bestand geautoriseerde_keys. Om het bestand authorized_keys in een teksteditor te openen, voert u dit commando in Terminal in:
nano ~/.ssh/authorized_keys
Je zou een scherm als dit moeten zien:
Kopieer je SSH sleutel en plak deze in de eerste regel, klik dan op Ctrl \ X, dan Y en Enter om op te slaan.
De teksteditor zou er zo uit moeten zien:
Stap 8. Machtigingen instellen voor geautoriseerde_keys
Stel de juiste rechten in voor het bestand authorized_keys:
chmod 600 ~/.ssh/authorized_keys
Stap 9. Probeer in te loggen als Sammy
Log nu uit van de server en probeer opnieuw in te loggen als Sammy:
ssh sammy@uw_server_ip
Conclusie
We gebruikten ChatGPT om dit probleem op te lossen en hadden het binnen ongeveer 30 minuten opgelost. Door een live gesprek te voeren, instructies op te volgen en de resultaten te delen leidde AI ons stap voor stap door dit proces totdat we in staat waren om succesvol in te loggen als de nieuwe gebruiker met sudo privileges. Deze fout werd niet behandeld in het oorspronkelijke artikel, dus hopelijk is dit nuttig voor iedereen die hetzelfde probleem ondervindt. Als het niet werkt voor jou, wat dacht je dan van een poging met ChatGPT om te zien of het je kan helpen het probleem op te lossen?