Chmod-laskin
Muunna Unix-tiedostooikeudet ruutujen, oktaalin (755) ja symbolisen (rwxr-xr-x) muodon välillä. Mukana setuid, setgid, sticky ja valmiit chmod-komennot.
| Luokka | Luku (4) | Kirjoitus (2) | Suoritus (1) |
|---|---|---|---|
| Omistaja (u) | |||
| Ryhmä (g) | |||
| Muut (o) |
Komennot
- Numeerinen
- Symbolinen
- Kuten ls -l näyttää
- Suhteellinen muutos tilasta {from}
Kuka saa tehdä mitä
Yleiset esiasetukset
Näin käytät chmod-laskinta
- Aloita mistä tahansa esitystavasta: rastita ruudut Oikeudet-taulukossa, kirjoita tila kenttään Oktaali (esim. 755 tai 4755) tai liitä merkkijono, kuten
rwxr-xr-xtaidrwxr-sr-x(suoraanls -l-tulosteesta), kenttään Symbolinen (esim. rwxr-xr-x). Muut näkymät seuraavat heti. - Aseta Erikoisbitit, jos tarvitset niitä: Setuid (4000), Setgid (2000) tai Sticky (1000). Oktaalitilassa on silloin neljä numeroa.
- Kirjoita Tiedoston tai hakemiston nimi, rastita tarvittaessa Kyseessä on hakemisto ja Rekursiivinen (-R) ja kopioi Numeerinen tai Symbolinen komento.
- Jos haluat kokeilla suhteellista muutosta, kirjoita se kenttään Symbolinen muutos (esim. u+x,go-w) ja napsauta Käytä muutosta.
Yleiset esiasetukset -painikkeet lataavat tyypillisiä tiloja, kuten 644, 600, 755 tai 2775. Suhteellinen muutos tilasta … -rivi näyttää chmod-lausekkeen, joka muuttaa viimeisimmän esiasetuksen tai kirjoitetun tilan nykyiseksi, esimerkiksi a+x tilasta 644 tilaan 755.
Unix-oikeuksien lukeminen
Jokaisella tiedostolla on kolme käyttäjäluokkaa: omistaja (u), tiedoston ryhmä (g) ja muut (o) eli kaikki muut. Jokainen luokka saa kolme oikeutta, joilla kullakin on numeroarvo: luku = 4, kirjoitus = 2, suoritus = 1. Yhteenlaskettuna ne antavat yhden oktaalinumeron luokkaa kohden: rwx = 7, rw- = 6, r-x = 5, r– = 4. Siksi rwxr-xr-x on 755.
Hakemistossa samat kirjaimet tarkoittavat hieman eri asioita, jotka Kuka saa tehdä mitä -luettelo kertoo selvästi: r sallii kohteiden listaamisen, w sallii kohteiden luomisen, uudelleennimeämisen ja poistamisen (yhdessä x:n kanssa), ja x sallii hakemistoon siirtymisen ja sen sisällä olevien tiedostojen käytön.
Erikoisbitit
- Setuid (4000) suoritettavassa tiedostossa saa sen toimimaan tiedoston omistajan oikeuksilla.
passwdkäyttää sitä kirjoittaakseen salasanatietokantaan. Se näkyy merkkinäsomistajan suoritusoikeuden kohdalla taiS, jos suoritusoikeus puuttuu. - Setgid (2000) suoritettavassa tiedostossa suorittaa sen ryhmän oikeuksilla. Hakemistossa uudet tiedostot perivät hakemiston ryhmän, mikä pitää jaetut projektikansiot johdonmukaisina (2775).
- Sticky (1000) hakemistossa sallii vain tiedoston omistajan poistaa tai nimetä sen uudelleen, vaikka kaikki voisivat kirjoittaa hakemistoon.
/tmpon 1777. Se näkyy merkkinät(taiT) muiden suoritusoikeuden kohdalla.
Symboliset muutokset
Symbolinen lauseke on muotoa ”kenelle, operaattori, oikeudet”: u+x lisää omistajalle suoritusoikeuden, go-w poistaa ryhmältä ja muilta kirjoitusoikeuden, a=r asettaa kaikille vain luku -oikeuden ja g=u kopioi omistajan oikeudet ryhmälle. Erota lausekkeet pilkuilla. Iso X lisää suoritusoikeuden vain hakemistoille tai tiedostoille, joilla on jo suoritusbitti, minkä ansiosta chmod -R a+X on turvallinen sekalaisten tiedostojen puulle. Kun ”kenelle” jätetään pois, tämä työkalu soveltaa muutosta kaikkiin luokkiin, kuten GNU chmod tekee umaskin ollessa 0.
Turvallisuusvinkit
Vältä 777:ää. Se sallii mille tahansa koneen tilille, myös vaarantuneelle web-palvelinprosessille, tiedoston muokkaamisen tai korvaamisen. Tyypillisiä turvallisia valintoja ovat 644 tiedostoille, 755 hakemistoille ja skripteille, 600 yksityisille avaimille ja 700 yksityisille hakemistoille. Laskin varoittaa kaikille kirjoitettavista tiloista, 777:stä ja setuid-ohjelmista.
Usein kysytyt kysymykset
Mitä eroa on chmod 755:llä ja chmod 775:llä?
Tilassa 755 vain omistaja voi kirjoittaa, ja ryhmä ja muut voivat lukea ja suorittaa. Tila 775 antaa kirjoitusoikeuden myös ryhmälle, mikä sopii tiimin jakamille hakemistoille.
Mitkä oikeudet SSH-yksityisavaimella pitäisi olla?
600 (rw-------). OpenSSH kieltäytyy käyttämästä yksityistä avainta, jonka ryhmä tai muut voivat lukea.
Miksi oktaalitilassa on joskus neljä numeroa?
Ensimmäinen numero sisältää erikoisbitit: 4 setuidille, 2 setgidille ja 1 stickylle. 0755 ja 755 ovat sama tila.
Toimiiko chmod 644 hakemistolle?
Se asettaa bitit, mutta ilman x-oikeutta kukaan ei pääse hakemistoon eikä voi avata sen tiedostoja. Käytä hakemistoille 755:tä tai 750:tä.
Mitä iso S tai T tarkoittaa ls -l -tulosteessa?
Erikoisbitti on asetettu, mutta vastaavaa suoritusbittiä ei. Yleensä kyseessä on virhe: lisää suoritusoikeus tai poista erikoisbitti.
Aiheeseen liittyvät työkalut
- Kantalukumuunnin Muunna luvut binäärin, oktaalin, desimaalin ja heksadesimaalin sekä mihin tahansa kantalukuun 2–36 välillä. Mukana kahden komplementti ja vaiheet.
- .htaccess-uudelleenohjausgeneraattori Luo 301- ja 302-ohjaukset .htaccess-tiedostoon tai Nginxiin, pakota HTTPS ja www, siirrä verkkotunnus ja korjaa loppukauttaviivat silmukka- ja ketjutarkistus.
- Cron-lausekkeen rakentaja Rakenna cron-lauseke kenttä kerrallaan, lue se selkokielellä, katso seuraavat ajot aikavyöhykkeittäin ja muunna se systemd-, Quartz- tai AWS-muotoon.