Viimeksi päivitetty
On tärkeää tietää, kenellä on pääsy Linux-tietokoneeseesi (ja hallita tiedostojasi), mutta voit helposti luetella Linux-käyttäjiä selvittääksesi. Näin
The Linux käyttöjärjestelmä tarjoaa komentoja käyttäjien luomiseen ja poistamiseen sekä sisäänkirjautuneiden käyttäjien tarkistamiseen. Järjestelmässä ei kuitenkaan ole komentoa käyttäjien luetteloimiseksi, olivatpa ne kirjautuneita tai eivät.
Tästä huolimatta on olemassa pari tapaa päästä eroon tästä. Jos haluat oppia lisäämään käyttäjiä Linuxissa, seuraa alla olevia ohjeitamme.
Miksi sinun pitäisi tarkistaa Linux-käyttäjäluettelosi
On useita syitä, miksi saatat haluta luetteloida käyttäjiä Linuxissa. Se on hyvä käytäntö käyttämättömien tilien etsimisessä ja poistamisessa. Turvallisuuden näkökulmasta se on myös hyvä tapa varmistaa, etteivät tunkeilijat luo käyttäjätilejä.
Tämä on hallinnollinen tehtävä, joka sinun pitäisi todennäköisesti tehdä vähintään kerran kuukaudessa. Jos käytät yrityksen Linux-palvelinta, saatat haluta tehdä sen useammin.
Käyttäjät, jotka on lueteltu tiedostossa /etc/passwd
Kaikissa Linux-palvelimesi käyttäjätileissä on merkintöjä tiedostossa /etc/passwd. Jokainen rivi edustaa käyttäjää, ja siinä on seitsemän kaksoispisteillä erotettua kenttää. Kentissä on tietoa käyttäjästä.
- Käyttäjänimi.
- Salattu salasana (x osoittaa, että salasana on todellakin /etc/shadow)
- Käyttäjätunnus (UID).
- Käyttäjän ryhmätunnus (GID).
- Käyttäjän koko nimi, jos luettelossa.
- Käyttäjän kotihakemisto.
- Kirjautumiskuori
Joten tämä vie meidät yhteen tapaan luetella kaikki Linuxin käyttäjät. Voit käyttää Vähemmän -komento nähdäksesi koko tiedoston, yksi näyttö kerrallaan.
vähemmän /etc/passwd.
Jos haluat tarkistaa, onko tietty käyttäjä Linux-järjestelmässä, se on hyvä käyttö komennolle grep:
vähemmän passwd | grep jeff.
Jos et saa tulosta, kyseistä käyttäjää ei ole Linux-palvelimella.
Silti se on paljon tietoa. Voit leikata sen esimerkiksi vain käyttäjänimeen käyttämällä joko awk tai leikata komennot:
awk -F: '{print $1}' /etc/passwd. cut -d: -f1 /etc/passwd.
Se on yleensä paljon helpompi ymmärtää, mutta silti voit tarkastella kaikkia järjestelmäpohjaisia käyttäjätilejä, jotka on sekoitettu ihmiskäyttäjiisi.
Getentin käyttäminen käyttäjien luetteloimiseksi
Toinen käsky, kohtelias, on paljon hyödyllisempi. Se näyttää merkinnät kohteesta mikä tahansa määritetty tietokanta palvelimellasi /etc/nsswitch.conf tiedosto. Yksi niistä on passwd tietokanta. Käyttää kohtelias näyttääksesi luettelon kaikista Linux-käyttäjistä, se toimii näin:
getent passwd
Tulos näyttää täsmälleen samalta kuin käytettäessä Vähemmän -komentoa, mutta luetteloi kaikki LDAP-käyttäjät Linux-järjestelmässä. Jälleen kerran meidän awk ja leikata komennot voivat auttaa näkemään vain ensimmäisen kentän, käyttäjätunnukset.
Jos haluat tarkistaa, onko Linux-järjestelmässä tietty käyttäjä, kohtelias tekee siitä helppoa:
getent passwd jeff.
Jälleen, mikään tämän komennon tulos ei kerro, että käyttäjää ei ole olemassa.
Toinen loistava käyttökohde kohtelias on selvittää kuinka monta käyttäjätiliä palvelimella on. Tämä tehdään putkella kohtelias's tulosteen kautta WC komento näin:
getent passwd | wc -l.
Kuten näet, Linux-järjestelmässäni on yhteensä 48 tiliä. Melko mielenkiintoista, koska olen ainoa, joka käyttää sitä, mutta se näyttää vain kuinka monta järjestelmätiliä on luotu Linuxissa.
Järjestelmän käyttäjien karsiminen tavallisista käyttäjistä
Linuxin silmissä järjestelmän käyttäjän ja ihmisen välillä ei ole eroa. Aina kun asennat käyttöjärjestelmän, se luo useita järjestelmän käyttäjiä. Muut järjestelmän käyttäjät luodaan erilaisille paketeille, kuten web- tai sähköpostipalveluohjelmistoille.
Joten, kuinka voit luetella vain tavalliset ihmiskäyttäjät Linux-järjestelmässä? Tärkeintä tässä on ymmärtää, että kun luot tavallisen käyttäjän, sen UID määritetään tietyllä numeroalueella. Tarkistamalla /etc/login.defs tiedosto, voimme määrittää UID-arvot, jotka ovat saatavilla tavallisille käyttäjätileille.
grep -E '^UID_MIN|^UID_MAX' /etc/login.defs.
Tulosten perusteella tiedän, että tavallisten käyttäjien UID: n tulisi olla välillä 1000-60000. Tästä voin rakentaa a kohtelias kysely, joka näyttää vain normaalit käyttäjät.
getent passwd {1000..60000}
Pidä mielessä, kohtelias näyttää roikkuvan, vaikka se näyttää tulostensa. Voit painaa Ctrl-C lopettaaksesi prosessin tai odottamalla sen päättymistä. Haun suorittaminen kestää yleensä alle 15 sekuntia passwd tietokanta.
Tämän komennon yleisempi versio ottaa huomioon eri UID_MIN ja UID_MAX arvot, joita eri palvelimet voivat käyttää.
eval getent passwd {$(awk '/^UID_MIN/ {print $2}' /etc/login.defs)..$(awk '/^UID_MAX/ {tulosta $2}' /etc/login.defs)}
Tässä komennossa hyödynnämme Linuxin kykyä tehdä useita asioita kerralla. The awk komennot saavat UID_MIN ja UID_MAX arvoja, käytä niitä sitten kohtelias komento.
Sanotaan nyt, että haluamme vain käyttäjänimiä. Jälleen kerran ohjaamme tulosteemme läpi leikata komento näin:
eval getent passwd {$(awk '/^UID_MIN/ {print $2}' /etc/login.defs)..$(awk '/^UID_MAX/ {tulosta $2}' /etc/login.defs)} | leikkaa -d: -f1.
Tämän komennon suorittaminen voi kestää 10–15 sekuntia, joten ole kärsivällinen.
Hallitse Linux-käyttäjiäsi tehokkaasti
On tärkeää seurata, mitä käyttäjätilejä Linux-järjestelmässäsi on. Kun tiedät, että työntekijä on lähtenyt, pyydä poistamaan hänen käyttäjätilinsä. Linux-käyttäjien luetteloiminen säännöllisin väliajoin auttaa varmistamaan, että saat kiinni tilit, jotka ovat saattaneet juuttua.
Samalla muista pysyä kärjessä salasanan suojauskäytännöt ja kannusta käyttäjiäsi siihen vaihtaa salasanansa säännöllisesti.