Forutsetninger
Trinn 1: Installere sudo
Trinn 2: Legge til sudo-brukeren
Trinn 3: Legge til den nye brukeren i hjulgruppen (valgfritt)
Forskjellen mellom hjul og sudo.
Trinn 4: Sørg for at sudoers-filen er riktig konfigurert
Trinn 5: La en bruker som verken tilhører hjulet eller sudo-gruppen utføre sudo-kommandoen
Trinn 6: Starte SSHD-serveren på nytt
Trinn 7: Testing
Trinn 8: Deaktiver direkte rottilgang
Å bruke en sudobruker til å få tilgang til en server og utføre kommandoer på rotnivå er en svært vanlig praksis blant Linux- og Unix-systemadministratorer. Bruken av en sudobruker kobles ofte ved å deaktivere direkte rottilgang til ens server i et forsøk på å forhindre uautorisert tilgang.
I denne opplæringen vil vi dekke de grunnleggende trinnene for å deaktivere direkte root-tilgang, opprette en sudo-bruker og sette opp sudo-gruppen på CentOS, Debian og FreeBSD.
Forutsetninger
- En nyinstallert Linux-server med din foretrukne distribusjon.
- Et tekstredigeringsprogram installert på serveren enten det er nano, vi, vim, emacs.
Trinn 1: Installere sudo
Debian
apt-get install sudo -y
CentOS
yum install sudo -y
FreeBSD
cd /usr/ports/security/sudo/ && make install clean
eller
pkg install sudo
Trinn 2: Legge til sudo-brukeren
En sudobruker er en vanlig brukerkonto på en Linux- eller Unix-maskin.
Debian
adduser mynewusername
CentOS
adduser mynewusername
FreeBSD
adduser mynewusername
Trinn 3: Legge til den nye brukeren i hjulgruppen (valgfritt)
Hjulgruppen er en brukergruppe som begrenser antall personer som kan suroote. sudoDet wheeler helt valgfritt å legge til brukeren din i gruppen, men det anbefales.
Merk: I Debian finnes sudogruppen ofte i stedet for wheel. Du kan imidlertid legge til wheelgruppen manuelt ved å bruke groupaddkommandoen. For formålet med denne opplæringen vil vi bruke sudogruppen for Debian.
Forskjellen mellom wheelog sudo.
I CentOS og Debian kan en bruker som tilhører wheelgruppen kjøre suog gå direkte opp til root. I mellomtiden sudoville en bruker ha brukt den sudo suførste. I hovedsak er det ingen reell forskjell bortsett fra syntaksen som ble brukt til å bli root , og brukere som tilhører begge gruppene kan bruke sudokommandoen.
Debian
usermod -aG sudo mynewusername
CentOS
usermod -aG wheel mynewusername
FreeBSD
pw group mod wheel -m mynewusername
Trinn 4: Sørg for at sudoersfilen er riktig konfigurert
Det er viktig å sikre at sudoersfilen som ligger i /etc/sudoerser riktig konfigurert for å tillate sudo userseffektiv bruk av sudokommandoen. For å oppnå det, vil vi se innholdet i /etc/sudoersog redigere det der det er aktuelt.
Debian
vim /etc/sudoers
eller
visudo
CentOS
vim /etc/sudoers
eller
visudo
FreeBSD
vim /etc/sudoers
eller
visudo
Merk: Den visudokommandoen vil åpne /etc/sudoersved hjelp av systemets foretrukne teksteditor (vanligvis vi eller vim) .
Begynn gjennomgang og redigering under denne linjen:
# Allow members of group sudo to execute any command
Denne delen av /etc/sudoersser ofte slik ut:
# Allow members of group sudo to execute any command
%sudo ALL=(ALL:ALL) ALL
I noen systemer finner du kanskje ikke i %wheelstedet for %sudo; i så fall vil dette være linjen du vil begynne å endre under.
Hvis linjen som starter med %sudoi Debian eller %wheeli CentOS og FreeBSD ikke er kommentert ut (prefikset av #) , betyr dette at sudo allerede er satt opp og er aktivert. Du kan deretter gå til neste trinn.
Trinn 5: La en bruker som verken tilhører gruppen wheeleller sudogruppen utføre sudokommandoen
Det er mulig å la en bruker som ikke er i noen av brukergruppene utføre sudokommandoen ved å legge dem til /etc/sudoerssom følger:
anotherusername ALL=(ALL) ALL
Trinn 6: Starte SSHD-serveren på nytt
For å bruke endringene du har gjort på /etc/sudoers, må du starte SSHD-serveren på nytt som følger:
Debian
/etc/init.d/sshd restart
CentOS 6
/etc/init.d/sshd restart
CentOS 7
systemctl restart sshd.service
FreeBSD
/etc/rc.d/sshd start
Trinn 7: Testing
Etter at du har startet SSH-serveren på nytt, logg ut og deretter på igjen som din sudo user, og prøv deretter å utføre noen testkommandoer som følger:
sudo uptime
sudo whoami
Enhver av kommandoene nedenfor vil tillate sudo userå bli root.
sudo su -
sudo -i
sudo -S
Merknader:
- Den
whoamikommandoen vil komme tilbake rootnår kombinert med sudo.
- Du vil bli bedt om å skrive inn brukerens passord når du utfører
sudokommandoen med mindre du uttrykkelig instruerer systemet om ikke å be sudo usersom passordene deres. Vær oppmerksom på at det ikke er en anbefalt praksis.
Valgfritt: tillate sudouten å skrive inn brukerens passord
Som tidligere forklart, er dette ikke en anbefalt praksis og er inkludert i denne opplæringen kun for demonstrasjonsformål.
For å tillate deg sudo userå utføre sudokommandoen uten å bli bedt om passordet, suffiks tilgangslinjen inn /etc/sudoersmed NOPASSWD: ALLsom følger:
%sudo ALL=(ALL:ALL) ALL NOPASSWD: ALL
Merk: Du må starte SSHD-serveren på nytt for å bruke endringene.
Trinn 8: Deaktiver direkte rottilgang
Nå som du har bekreftet at du kan bruke din sudo useruten problemer, er det på tide med det åttende og siste trinnet, som deaktiverer direkte root-tilgang.
Først åpner du /etc/ssh/sshd_configved å bruke din favoritttekstredigerer og finn linjen som inneholder følgende streng. Det kan være prefikset med et #tegn.
PermitRootLogin
Uavhengig av prefikset eller verdien av alternativet i /etc/ssh/sshd_config, må du endre den linjen til følgende:
PermitRootLogin no
Til slutt starter du SSHD-serveren på nytt.
Merk: Ikke glem å teste endringene dine ved å prøve å SSH inn på serveren din som root. Hvis du ikke klarer det, betyr dette at du har fullført alle nødvendige trinn.
Dette avslutter veiledningen vår.