Finestre.  Virus.  I Quaderni.  Internet.  ufficio.  Utilità.  Autisti

Il meccanismo di distribuzione dei diritti nei sistemi operativi, sviluppato negli anni '70 del secolo scorso, si è rivelato un tale successo che è ancora utilizzato nei sistemi UNIX, cioè da più di quarant'anni.

Autorizzazioni 777 - che cos'è?

Il principio di base di come viene distribuito l'accesso include l'esistenza di attributi obbligatori, come i nomi degli utenti del sistema, così come i loro gruppi. È quasi ovvio che in Linux ogni utente può avere un solo nome, che deve essere univoco all'interno di questo sistema. Con l'aiuto di un nickname, l'utente entra nel sistema, ovvero passa l'autorizzazione. Inoltre, il sistema operativo contiene un numero finito di gruppi di utenti. Ognuno di loro può essere membro di uno o più gruppi. Modificare proprietà, creare ed eliminare gruppi può essere superutente - root. I membri di diversi gruppi hanno vari diritti per le azioni nel sistema. Quindi, ad esempio, l'amministratore ha più diritti dell'ospite.

L'inode (che ha ogni file) contiene il nome utente del proprietario e il nome del gruppo di utenti che ha diritti su questo file.

Quando viene creato un file, l'utente sotto il cui nome è in esecuzione questo processo ne diventa il proprietario. Il gruppo del file appena creato è determinato anche dall'ID gruppo del processo in esecuzione. Con ulteriore lavoro, tutti questi valori possono essere modificati utilizzando i comandi della console, che verranno discussi di seguito.

Come modificare i permessi

Il comando chmod può modificare la modalità di accesso dell'utente a un file. Modificare questi diritti in qualsiasi modo è consentito solo al suo proprietario o superutente. Nei sistemi Unix, il codice viene solitamente specificato come numero in forma ottale o utilizzando speciali caratteri mnemonici (lettere). L'uso di ogni metodo ha i suoi vantaggi e svantaggi. Pertanto, con l'ausilio dell'indicazione numerica dei diritti di accesso, l'amministratore di sistema potrà configurare rapidamente il tipo di accesso desiderato e, con l'ausilio di codici mnemonici, potrà farlo in modo più preciso, ad esempio aggiungere o rimuovere l'accesso in scrittura o negare l'accesso in lettura.

Il primo argomento del comando della console chmod è la specifica delle autorizzazioni dell'utente, che è un numero mnemonico o ottale. Il secondo e il successivo argomento sono i nomi dei file a cui stiamo cercando di modificare i permessi. Quando si impostano i diritti come tre numeri, il primo numero definisce i diritti per il proprietario, il secondo per il gruppo e il terzo per tutti gli altri utenti.

Mnemonici dei diritti di accesso

L'accesso ai file nel sistema dei diritti presenta le seguenti variazioni:

  • r - accesso per leggere il file;
  • w - il diritto di modificare i dati (ma non di cancellarli);
  • x - la possibilità di eseguire il file per l'esecuzione.

In relazione agli elenchi, si applica il seguente sistema di diritti:

  • r - l'utente può leggere qualsiasi file nella directory;
  • w - con questi diritti è possibile creare ed eliminare file nella cartella, anche se alcuni di essi nella directory appartengono a un altro utente;
  • x - indica il diritto di entrare nella directory. Se si dispone delle autorizzazioni w per la sottocartella ma non si dispone delle autorizzazioni per la cartella di un livello superiore, non è possibile accedere alla cartella.

In totale sono possibili 8 diverse combinazioni, mostrate nella figura sottostante.

Con l'aiuto della tabella seguente, puoi capire come implementare opzioni complesse per l'assegnazione di autorizzazioni, nonché come impostare le autorizzazioni su 777 utilizzando le specifiche mnemoniche di chmod.

Come impostare le autorizzazioni su 777 tramite SSH

Ecco alcuni esempi di utilizzo del comando chmod:

  • chmod 711 nome_file.txt.

L'utilizzo di uno script di condivisione file di questo tipo comporterebbe che il proprietario abbia pieni diritti sul file, mentre tutti gli altri gruppi di utenti sarebbero solo in grado di eseguirlo.

Quando si utilizza il codice 775, forniremo al proprietario e al suo intero gruppo un elenco completo dei diritti. Gli altri utenti non saranno in grado di apportare modifiche al file. Va detto che per specificare un file solo con il proprio nome, deve trovarsi nella directory in cui si trova questo file. Altrimenti, puoi passare a questa directory con cd directory_name/sub-directory_name, o usare la seguente struttura:

  • chmod 775 /var/bin/nome_file.txt.

Per modificare in modo ricorsivo le autorizzazioni di tutti i file in una directory e di tutte le sottocartelle, è necessario aggiungere l'opzione -R al comando chmod. Il comando risultante sarà simile a questo:

  • chmod -R 711 nome_file.

Di conseguenza, come impostare le autorizzazioni su 777 per un file o una directory non sarà un problema: devi solo accedere al tuo server web tramite SSH ed eseguire il comando:

  • chmod 777 nome file.

Come impostare i permessi su 777 nel pannello di controllo del server

Puoi anche implementare una procedura simile attraverso l'interfaccia visiva Cliente FTP FileZilla o client SFTP WinSCP. Per fare ciò, dovrai autorizzare il tuo server in uno di questi programmi, selezionare il file o la cartella nell'interfaccia visiva, quindi fare clic con il pulsante destro del mouse e selezionare le caselle accanto ai diritti richiesti.

A volte, in caso di urgenza, potresti non avere accesso al client Windows, quindi puoi modificare i diritti di accesso attraverso il pannello di controllo del web server. Per fare ciò, utilizzando il file manager del tuo pannello di controllo, seleziona i file richiesti e fai clic sul pulsante Modifica autorizzazioni. Successivamente, dovrai anche spuntare tutto e ora la domanda su come impostare i diritti di accesso 777 a una cartella non sarà più difficile per te.

(Il valore iniziale dei permessi dei file è rwxrwxrwx - controllo completo per tutti) Revoca il permesso di eseguire un file per tutti gli utenti e gruppi:

$ chmod a-x file(rw-rw-rw-)

Annulla la scrittura su un file da parte di un gruppo e di altri utenti:

$ chmod file go-w (rw-r–r–)

Autorizzazione all'esecuzione del file da parte del proprietario:

$ chmod u+x file (rwxr–r–)

Assegnando al gruppo gli stessi diritti di accesso del proprietario del file:

$ chmod g=u file (rwxrwxr–)

Annulla la lettura e la scrittura su un file da parte di utenti del gruppo e altri utenti:

$ chmod file go-rw (rwx-x-)

Esempi di utilizzo del comando chmod in modalità assoluta

Autorizzazione a leggere, scrivere, eseguire il file file da tutti gli utenti e gruppi (controllo completo):

$ file chmod 777 (rwxrwxrwx)

Impostazione delle autorizzazioni di lettura e scrittura per proprietario, gruppo e altri utenti:

$ file chmod 666 (rw-rw-rw-)

Impostazione dell'accesso completo ai file per il proprietario e dell'accesso in sola lettura per il gruppo e altri utenti:

$ file chmod 744 (rwxr-r-)

Impostare l'accesso completo al file al proprietario del file e negare l'accesso al gruppo e ad altri utenti:

$ file chmod 700 (rwx--)

Imposta i permessi di lettura/scrittura per il proprietario del file e i permessi di sola lettura per il gruppo e altri:

$ file chmod 644 (rw-r–r–)

Imposta i permessi di lettura e scrittura per il proprietario di un file e il suo gruppo e nega l'accesso ad altri:

$ file chmod 640 (rw-r--)

Impostazione dell'accesso ai file con permesso di lettura per tutti gli utenti e i gruppi:

$ file chmod 444 (r–r–r–)

Autorizzazioni file per lettura, scrittura, esecuzione per proprietario e lettura, esecuzione per gruppo e altri:

$ file chmod 755 (rwxr-xr-x)

Consentire l'accesso in lettura ed esecuzione al file per l'utente e altri e negare l'accesso al gruppo:

$ file chmod 505 (r-x-r-x)

Se vuoi assegnare i permessi a tutti i file nella directory corrente, metti semplicemente un * (asterisco) dopo i permessi assegnati:

$ chmod 755 *

Come risultato dell'esecuzione di questo comando, il proprietario riceverà pieni diritti (lettura, modifica, esecuzione) su tutti i file della directory corrente, mentre il gruppo e gli altri utenti riceveranno solo lettura ed esecuzione. Se vuoi che le tue azioni si propaghino in modo ricorsivo (incluse tutte le sottodirectory), usa l'opzione -R:

$ chmod -R 777 *

Il risultato dell'esecuzione del comando precedente sarà quello di "attraversare" in modo ricorsivo tutte le sottodirectory della directory corrente e assegnare l'accesso completo a tutti gli utenti e gruppi. Questo articolo copre solo alcuni esempi di come utilizzare il comando chmod. Se vuoi saperne di più su come funziona il comando chmod e sui permessi di Linux, dai un'occhiata a questo articolo.

Modificare le autorizzazioni solo per le directory (in modo ricorsivo)

$ find /path/to/base/dir -type d -exec chmod 755 () +

$ chmod 755 $(trova /path/to/base/dir -type d)

$ chmod 755 `trova /percorso/della/base/dir -tipo d`

$ find /path/to/base/dir -type d -print0 | xargs -0 chmod 755

Modificare le autorizzazioni solo per i file (in modo ricorsivo)

$ find /path/to/base/dir -type f -exec chmod 644 () +

$ chmod 644 $(trova /path/to/base/dir -type f)

$ chmod 0755 `trova ./ -digita f`

$ find /path/to/base/dir -type f -print0 | xargs -0 chmod 644

Sintassi chmod per cartelle e file

Comprendiamo prima l'essenza del problema con Chmod per capire cosa esattamente e come configuriamo. Quindi iniziamo. I permessi sono divisi in Chmod per i file e Chmod per le directory. Sono designati allo stesso modo, ma hanno un significato leggermente diverso.

I diritti di accesso (Chmod) ai file si dividono in:

    r - il diritto di leggere i dati.

    w - il diritto di modificare il contenuto (scrivi - modifica solo il contenuto, ma non elimina).

    x - il diritto di eseguire il file.

Soffermiamoci un po' di più sulla destra per eseguire un file. Il fatto è che in Linux (Unix) è possibile eseguire qualsiasi file. Se si tratta di un eseguibile non è determinato dalla sua estensione (il concetto di estensione è assente in sistema di file Unix), e per i permessi Chmod. Se un file ha il permesso "X" (chmod x) impostato, significa che può essere eseguito per l'esecuzione.

Ora sui diritti di accesso (Chmod) alla cartella (directory):

    r - il diritto di leggere la directory (puoi leggere il contenuto della directory, ovvero ottenere un elenco di oggetti in essa contenuti)

    w - il diritto di modificare il contenuto della directory (puoi creare ed eliminare oggetti in questa directory e, se disponi del permesso di scrittura, puoi eliminare anche quei file che non ti appartengono)

    x - il diritto che ti permette di entrare nella directory (questo diritto è sempre spuntato per primo, e anche se hai tutti i file diritti necessari a un oggetto che è sepolto in profondità nella catena di directory, ma non hai il diritto "X" per accedere ad almeno una directory sul percorso di questo file, quindi non riuscirai ad accedervi)

Nei sistemi Linux (Unix), tutti questi diritti sono concessi dall'amministratore principale del computer, l'accesso al quale ottiene inserendo una password. E se la maggior parte degli oggetti ha diritti di accesso di sola lettura (Chmod), i virus non avranno praticamente nulla da fare su un computer del genere. non potranno registrarsi lì, né essere adempiuti. È questo risultato che dobbiamo ottenere impostando i diritti di accesso (Chmod) agli oggetti del nostro sito.

Sintassi Chmod per gruppi di utenti

I permessi stessi (Chmod) sono divisi in tre categorie, a seconda di chi accede all'oggetto:

    "utente" - u (proprietario diretto del file)

    "gruppo" - g (membro dello stesso gruppo del proprietario)

    "mondo" - o (tutti gli altri)

Il server determina a quale gruppo di utenti appartieni quando ti connetti al server. Quando ti connetti a un server tramite FTP, ad esempio, accedi con il tuo nome utente (e password), quindi il server ti assegna al gruppo "utente" ("u)". Altri utenti che si connettono anche tramite FTP al server verranno assegnati al gruppo "gruppo" ("g") e l'utente che accede al tuo sito utilizzando il suo browser rientra nel gruppo "mondo" ("o").

Le variazioni dei tre possibili valori "r", "w" e "x" per le tre categorie "u", "g" e "o" definiscono Chmod per i file. Se una categoria non è specificata, viene sostituita da un trattino "-". i diritti di accesso (Chmod) sono specificati in sequenza nell'ordine indicato:

    primi diritti per il proprietario - "u"

    quindi per il gruppo - "g"

    e alla fine del diritto per tutti gli altri - "o"

Dopo che il server ha assegnato l'utente a un determinato gruppo, gli concede i diritti di agire sugli oggetti, dopodiché l'utente sarà in grado di leggere, scrivere o eseguire il file (a seconda di ciò che il suo gruppo è autorizzato a fare con questo oggetto) . Per vedere il contenuto di una cartella, questa deve avere l'attributo read "r" (per il gruppo a cui il server ha assegnato l'utente). Per creare un file o una cartella all'interno di uno esistente, deve avere l'attributo Chmod impostato sulla voce "w".

Per chiarezza, diamo un'occhiata a un esempio in cui il proprietario del file ("utente" - "u") ha tutti i diritti: il diritto di leggere, scrivere su di esso ed eseguire, e tutti gli altri utenti hanno solo il diritto di leggere. Una tale voce Chmod sarebbe simile a questa: "rwx r-- r--". Consideriamolo in dettaglio: "rwx" (questa voce imposta i diritti sull'oggetto per il proprietario - "u"), "r--" (questa voce imposta i diritti sullo stesso oggetto, ma se l'utente è assegnato da il server al gruppo - "g "), "r--" (questa voce imposta i diritti sull'oggetto per tutti gli altri utenti - o").

Qual è la differenza tra i file e le cartelle Chmod

Non può essere fatto nulla

L'accesso alla directory e alle relative sottodirectory è negato

Può visualizzare e modificare i contenuti

Può aggiungere, eliminare, modificare il file della cartella

Esegui se il file è binario

L'utente può eseguire un file binario di cui conosce l'esistenza, l'accesso o la lettura della directory è proibito

Sintassi Chmod Numerico (777)

Puoi vedere che qui usiamo le voci using Lettere latine e trattini, ma probabilmente ti sei già imbattuto nel fatto che solitamente Chmod è ambientato in forma digitale, ad esempio, la nota combinazione: Chmod 777, che consente tutto e tutti. Infatti, i diritti di accesso (Chmod) sono indicati anche da numeri:

    w (record) è sostituito da 2

    x (esecuzione) è sostituito da 1

0 significa non fare nulla (che è indicato da un trattino nella notazione alfabetica) Torniamo all'esempio della notazione dei diritti di accesso che ho dato poco prima: rwx r-- r--. Se sostituiamo le lettere e i trattini in esso contenuti con numeri, secondo la regola appena descritta, e allo stesso tempo aggiungiamo i numeri in ogni triplo, otteniamo la forma digitale di questa voce: 744. Cioè, si scopre che la somma di questi numeri mostra Chmod in file o in una cartella. Per esempio:

    7 (rwx) = 4 + 2 +1 (pieni diritti)

    5 (r-x)= 4 + 0 + 1 (leggi ed esegui)

    6 (rw-) = 4 + 2 + 0 (lettura e scrittura)

    4 (r--) =4 + 0 + 0 (sola lettura)

Questa tabella elenca tutte le possibili combinazioni Chmod in forma numerica:

E ora diamo un'occhiata alle varie combinazioni di Chmod in numeri, in relazione ai gruppi di utenti:

""Proprietario""

""Gruppo""

""Riposo""

eseguire

eseguire

eseguire

Tu stesso (tranne quando accedi al sito tramite FTP) e tutti gli altri visitatori del tuo sito appartieni al gruppo "parola" (tutti gli altri), quindi per lavorare con il sito web, dobbiamo prima guardare l'ultima (terza) cifra Chmod. Affinché lo script possa “eseguire il file” quando l'utente lavora con il sito, sarà sufficiente che su di esso siano impostati i diritti di accesso (Chmod) a partire da “4” (r-- – sola lettura) (5, 6,7 sono anche adatti, ma questo sarebbe eccessivo per motivi di sicurezza.

"Per la cartella" in cui si trova il file di questo script, è necessario impostare almeno "5" (r-x - puoi andare alla cartella e leggerne il contenuto, non puoi eliminare o aggiungere). 7 è anche adatto, ma sarà anche superfluo in termini di sicurezza. Se hai bisogno che lo script non solo legga, ma anche "scriva" alcuni dati (ad esempio, inseriti dall'utente), i diritti minimi sulla "cartella" saranno ancora "5", ma il "file" sarà già servono i diritti “6” (leggi e scrivi).

Molto probabilmente, sul server in cui hai copiato i contenuti del motore del tuo sito, verrà installato il seguente Chmod to objects:

Cartelle 755

il proprietario (utente) può fare tutto, il gruppo e tutti gli altri possono solo leggere le cartelle e accedervi, ma non sono autorizzati a scrivere file, cambiare nome ed eliminarli nelle directory. (rwxr-xr-x)

File 644

Se tu avessi un sito composto da qualche html, allora potresti lasciare tutto così. Ma i siti moderni sono costruiti su motori e potrebbero esserci oggetti a cui è necessario scrivere per conto degli utenti del gruppo "mondo" - o (tutti gli altri). Queste possono essere cartelle utilizzate per la memorizzazione nella cache delle pagine o quelle in cui verranno caricate immagini, ecc.. Naturalmente, se accedi al sito tramite FTP, puoi scrivere su questi file o cartelle, ma con l'interfaccia del sito Web come utente normale, potresti riscontrare problemi. Pertanto, l'installazione di determinati Chmod deve essere affrontata in modo selettivo.

Quando si lavora con i file individuati sul server web, spesso è necessario impostare o modificare i diritti di accesso a cartelle e file (chmod) vista 777. In famiglia server I sistemi operativi Unix, i diritti di accesso (chmod) di tipo 777 regolano tali azioni: lettura, scrittura in una cartella o in un file ed esecuzione di un file.

Cosa sono le "autorizzazioni" nel sistema operativo

Le autorizzazioni per file o cartelle sono una caratteristica di sicurezza di qualsiasi sistema operativo multiutente o Software dall'accesso non autorizzato a informazioni (di sistema) importanti.

Se il sistema operativo è per utente singolo, ad esempio, come versione home (home) di Windows, non ha senso limitare in modo particolare il potere dell'utente sul suo utente e file di sistema e cartelle. Perché, in questo caso, la stessa persona è contemporaneamente utente e amministratore.

Se il sistema operativo (o programma) è multiutente e al suo interno è possibile trovare più di un utente, è necessario prima capirlo e decidere a quale utente può essere consentito l'accesso a file di sistema e utente importanti e chi dovrebbe “farli stare da parte”. Per differenziare le possibilità e il grado di accesso a file e cartelle per gli utenti, all'interno del sistema operativo - ci sono "diritti di accesso".

I diritti di accesso a file e cartelle sono assegnati a livello amministratore di sistema e determinare le capacità tecniche di ciascun utente per le sue operazioni con file e cartelle all'interno delle directory da lui controllate

Allo stesso tempo, i diritti di accesso ti consentono di chiudere parzialmente o completamente accesso generale a file e directory importanti, impedendo così l'intervento non autorizzato nel funzionamento del sistema (programma, server, sito Web) o la modifica dei dati dell'utente (database, database) sul server.

Come funzionano i "permessi".

In generale, il lavoro dell'utente in qualsiasi sistema operativo o programma è il solito lavoro con file o cartelle. Inizialmente, quando si accede a qualsiasi file o cartella, l'utente è libero di fare qualsiasi cosa con essi: eseguire, eliminare, modificare (sovrascrivere) o creare un nuovo oggetto. Tuttavia, il sistema operativo è vigile - è sempre all'erta - ogni volta che l'utente accede a un file o una cartella, con ogni azione all'interno del sistema operativo, controlla scrupolosamente se l'utente è autorizzato o meno a lavorare con questo file o cartella . Questo è ciò che sono i "permessi". Pertanto, le capacità dell'utente sono limitate nelle azioni che lui (l'utente) può eseguire con un file o una cartella nell'area del computer sotto il suo controllo.

Autorizzazioni in Unix

Come già accennato, i diritti di accesso a file e cartelle sono disponibili in tutti i sistemi operativi che prevedono il lavoro multiutente. Sia in Windows che in Unix, e in qualsiasi altro sistema operativo multiutente, esiste una funzione per configurare e impostare i diritti di accesso a file e directory (cartelle, directory) per varie categorie di utenti. Questo articolo si concentrerà sui diritti di accesso per server I sistemi operativi della famiglia Unix, spesso chiamati .

Autorizzazioni (chmod) come 777 for server I sistemi operativi Unix regolano l'autorizzazione o il divieto per l'utente di eseguire azioni come: leggere, scrivere in una cartella o in un file ed eseguire file eseguibili

Cos'è chmod

Cos'è 777

IN server Nei sistemi operativi Unix, i diritti di accesso sono scritti su un'unica riga composta da tre cifre, dove ogni cifra si riferisce a un diverso tipo di gruppo di utenti. A loro volta, tutti gli utenti sono divisi in gruppi di tre tipi:

  1. proprietario del gruppo - "Il proprietario della cartella o del file"
  2. gruppo Gruppo - "Membro del gruppo del proprietario della cartella o del file"
  3. gruppo Mondo o Pubblico - "Tutti gli altri utenti"

Pertanto, le tre cifre nella designazione, come 777, sono i diritti di accesso impostati per tre gruppi di utenti della cartella o del file contemporaneamente, dove - ciascuna delle tre cifre indica i diritti di accesso per il proprio gruppo di utenti.

Ora resta da capire chi è il "Proprietario",
Che cos'è "Membro del gruppo di proprietari"
e chi sono "Tutti gli altri utenti".

Proprietario, membro del gruppo proprietario e tutti gli altri utenti

Dato che qui stiamo parlando di server, siti e sistemi operativi per server Unix, allora:

La divisione di tutti gli utenti in gruppi nei sistemi operativi del server Unix è implementata come segue: il proprietario e i membri del gruppo del proprietario si connettono al server utilizzando una connessione speciale (FTP, SSH) (protocollo FTP, SSH) e tutti gli altri utenti accedono il sito da un browser web (protocollo http)

Ne consegue che, a seconda del protocollo di accesso ai file sul server, il sistema operativo del server Unix divide immediatamente gli utenti in due parti, il proprietario o un membro del gruppo del proprietario o tutti gli altri utenti. La base per un tale "ordinamento" (ripeto) è protocollo di rete connessioni: se l'utente si è connesso al server utilizzando un account FTP (protocollo FTP), questo è il proprietario o un membro del suo gruppo. E se l'utente ha effettuato l'accesso al server da un browser Web (protocollo http), questo è il terzo gruppo: tutti gli altri utenti.

Pertanto, per il sistema operativo del server Unix, esiste una distinzione molto chiara e di facile comprensione tra i primi due e il terzo gruppo: il proprietario e un membro del suo gruppo accedono al server utilizzando una connessione speciale (FTP, SSH) e tutti altri utenti attraverso i loro browser web.

Ma le differenze tra i primi due gruppi - il proprietario e un membro del suo gruppo - sono fortemente cancellate e velate. È qui che inizia già la giungla di un pacchetto di hosting e un approccio individuale per ogni caso.

Riferimento:
Tutti i file in Unix (Linux) possono avere due proprietari: il loro diretto proprietario-creatore (proprietario dell'utente) e il suo gruppo (proprietario del gruppo). Il concetto di gruppo del proprietario indica un certo elenco di utenti che è stato creato dal proprietario stesso per condividere un file o una cartella.

Pertanto, per un sistema operativo server Unix, il proprietario di un file o di una cartella è direttamente l'amministratore del server. Tutti gli altri, a cui il proprietario consentirà l'accesso ai file sul suo server e che si connetteranno a questo server tramite il protocollo FTP / SSH, sono membri del gruppo del proprietario.

In locazione spazio sul disco si riferisce allo spazio sul server occupato dai file del sito. Di norma, si tratta di pacchetti di hosting economici, in cui i loro utenti non hanno accesso al pannello di amministrazione del server (da non confondere con il pannello di controllo dell'account CP). Di conseguenza, gli amministratori del sito (proprietari) seduti su tali pacchetti, quando si connettono al server tramite il protocollo FTP, rientrano esclusivamente nel gruppo del proprietario. Considerando che il proprietario stesso (amministratore del server) è da qualche parte là fuori, "lontano tra le montagne", nel suo accogliente ufficio servizio tecnico hoster.

Quando si affitta spazio su disco, il proprietario di tutti i file sul sito è l'host stesso, mentre l'inquilino dello spazio su disco è solo un membro del gruppo del proprietario.

Per gli inquilini del server (reali e virtuali), la situazione è leggermente diversa. Quando si affitta un server, l'affittuario installa lui stesso il sistema operativo, ovviamente, allo stesso tempo: è il proprietario diretto dei file per questo sistema. Ma creare un gruppo e aggiungervi altri utenti è già affare suo, del proprietario.
Cosa segue da tutto quanto sopra?

E la conclusione è questa: - Gli inquilini dello spazio su disco non devono preoccuparsi della prima cifra come (chmod) 777, perché non sono i proprietari e non saranno mai i proprietari dei loro file. Per loro, la prima cifra dovrebbe essere sempre sette. - Gli inquilini dei server (reali e virtuali) non devono preoccuparsi della seconda cifra del modulo (chmod) 777. A condizione che non abbiano creato e non creeranno alcun gruppo di utenti sul proprio server. Qui, in quanto tale, non c'è una distinzione pronunciata e forte. Piuttosto, lo sarà se crei un gruppo di proprietari e aggiungi un elenco di utenti ad esso. Ma solo l'amministratore del server stesso può creare un tale gruppo. Quando crea, penserà a cosa fare con la seconda cifra.

Cosa significano i numeri 777 o 456?

Ogni cifra, per ogni gruppo, rappresenta
somma aritmetica di tre cifre,
denotare i seguenti diritti:

  • 4 = Leggi (diritto di leggere)
  • 2 = Scrivi (diritto di scrivere)
  • 1 = Esegui (autorizzazione all'esecuzione)

Per esempio:

  • 6=4+2 - Read+Write (diritto di lettura + diritto di scrittura)
  • 5=4+1 - Read+Execute (diritto di lettura + diritto di esecuzione)
  • eccetera.

Tutte le possibili 7 opzioni aggiuntive per queste tre cifre
sull'impostazione dei diritti di accesso a una cartella oa un file per i gruppi di utenti
Assomiglia a questo:

  • 7 = 1+2+4 - Read, Write, Execute (lettura, scrittura ed esecuzione)
  • 6 = 4+2 - Leggi, scrivi (leggi e scrivi)
  • 5 = 4+1 - Leggi, esegui (leggi ed esegui)
  • 4 = 4 - Lettura (sola lettura)
  • 3 = 1+2 - Scrivi, esegui (registra ed esegui)
  • 2 =2 - Scrivi (solo scrittura)
  • 1 =1 - Esegui (solo esecuzione)

Quindi, mettendo autorizzazioni (chmod) come 765,
imposteremo le seguenti autorizzazioni per i gruppi:

  • Prima cifra, Proprietario del gruppo, Proprietario del file o della cartella
    Prima cifra = 7
    Ciò significa che il proprietario di una cartella o di un file ha il diritto di:
    7=4+2+1 - Read (lettura) + Write (scrittura) + Execute (esecuzione)
  • Seconda cifra, gruppo di gruppo, membro del gruppo del proprietario
    Seconda cifra = 6
    Ciò significa che un membro del gruppo del proprietario ha il diritto di:
    6=4+2 - Leggi (leggi)+Scrivi (scrivi)
  • Terza cifra, Gruppo mondiale, Tutti gli altri utenti
    Terza cifra = 6
    Ciò significa che tutti gli altri utenti hanno il diritto di:
    5=4+1 - Read (lettura)+Execute (esecuzione)

Ora è chiaro che impostando i diritti di accesso con una combinazione di numeri 777 (tre assi), apriamo l'accesso completo al file per assolutamente tutti i gruppi di utenti. Un risultato simile può essere ottenuto posizionando il file nella cartella "Documenti pubblici" di Windows.

Va notato che alcune combinazioni di numeri possono indicare situazioni molto folli con diritti di accesso ai file. Ad esempio, una combinazione come 477 consentirà l'accesso per sovrascrivere ed eseguire un file per tutti tranne il suo proprietario (lettura - amministratore). Ahimè, questo non accade.

I diritti di accesso sono sempre impostati "in ordine decrescente" dal "Proprietario" al "Membro del gruppo del proprietario" e, successivamente, al gruppo "Tutti gli altri". Ma non viceversa!

Come impostare i diritti di accesso come 777 sul server

Ora che è diventato assolutamente chiaro cosa significano questi tre amati numeri: set autorizzazioni (chmod) come 777, non sarà difficile. Per impostare i permessi (chmod) come 777 per una cartella o un file che è sul server, ne hai bisogno gestore di file, che è in grado di stabilire e mantenere una connessione FTP al server. Potrebbe essere Comandante totale, Windows Commander, CuteFTP, Filezilla o qualsiasi altra cosa. Personalmente, preferisco il file manager FTP semplice e gratuito di Filezilla, anche se sono un fan di Total Commander.

Per impostare i permessi (chmod) come 777, andiamo al server tramite FTP sotto i diritti dell'amministratore!, dopo un paio di login-password dell'amministratore!. Inoltre, troviamo e selezioniamo l'oggetto richiesto (cartella o file). Successivamente, fai clic con il pulsante destro del mouse sul menu di scelta rapida "File - Modifica attributi". Successivamente, specificare l'attributo desiderato (diritti di accesso) e fare clic su "OK". Per "inserire" la combinazione di numeri desiderata, dovrai inserire o deselezionare le caselle di controllo (segni di spunta) accanto agli elementi necessari, oppure inserire il codice richiesto del modulo 777 dalla tastiera nella finestra che si apre. Tutti i file manager FTP supportano entrambi i metodi.

Guarda il relitto del 777 a Denver

Come tutti gli alieni dallo spazio, comunico regolarmente con rappresentanti di varie civiltà extraterrestri che iniziano a costruire i loro siti prima del loro arrivo sulla Terra.

Messaggio per gli alieni:
Non è necessario provare a impostare autorizzazioni (chmod) come 777 quando si lavora con un pacchetto noto che simula solo il funzionamento di un server Web che esegue un sistema operativo Unix su computer locale effettivamente in esecuzione sotto il sistema operativo Windows. Non esiste un pulsante del genere.

I file in Linux hanno due proprietari

È necessario impostare correttamente i diritti su file e cartelle. Puoi farlo con FileZilla. In generale, ogni server necessita delle proprie impostazioni specifiche, che è meglio apprendere dal proprio provider di hosting. Ma di solito i diritti sono impostati come segue: 444 per i file che si trovano nella directory principale, 755 per le cartelle nella directory principale, 705 per le cartelle tmp e logs, 555 per la tua cartella template, 755 per la cartella image / stories, 755 per la cartella Cache 777.

Il proprietario del nuovo file è l'utente che ha creato il file.

I file in Linux hanno due proprietari: un utente (proprietario dell'utente) e un gruppo (proprietario del gruppo) inteso come un certo elenco di utenti e inoltre il proprietario del file non deve essere un membro del gruppo che possiede il file. Ogni utente può essere membro di più gruppi contemporaneamente, uno dei quali è chiamato primario (primario) e tutto il resto - aggiuntivo (supplementare). Ciò offre una maggiore flessibilità nell'organizzazione dell'accesso a un particolare file. Condivisioneè molto facile organizzare alcune risorse, è sufficiente creare nuovo gruppo e includi in esso tutti coloro che ne hanno veramente bisogno, e se una persona, supponiamo, si è trasferita in un altro dipartimento e non è più necessario utilizzare questo file. E tutto è molto semplice, devi solo disattivarlo da questo gruppo. Bene, cosa fare con il resto, non saranno davvero in grado di leggere almeno il contenuto del file o dovranno essere inclusi ed esclusi dal gruppo ogni volta.
Ma per tutti gli altri (altro) che non appartengono né al proprietario dell'utente né al proprietario del gruppo, i diritti di accesso sono impostati separatamente e, di norma, i più minimi. Di solito il proprietario del file è l'utente che lo ha creato. dato file. Di nuovo gruppo proprietario file creatoè impostato sul gruppo primario dell'utente che ha creato il file, ma in alcune versioni di Unix, il proprietario del gruppo viene ereditato dal proprietario del gruppo della directory in cui è stato creato il file. Per cambiare il proprietario di un file, usa comando chown prendendo come parametri il nome del nuovo proprietario e una lista di file: # chown nuovo_proprietario file1 file2 ...Ovviamente, al posto del nome del file, può esserci un nome di directory, ma il proprietario dei file all'interno della directory non lo farà cambia, perché ciò avvenga, è meglio usare il flag -R (chown -R). Quando usi questo comando (tuttavia, come la maggior parte), puoi usare espressioni regolari se è necessario selezionare file che soddisfano un determinato criterio (chown - R lys *.c). Per cambiare il proprietario di un gruppo, utilizzare il comando chgrp, la sintassi per l'utilizzo di questo comando è simile a quella precedente: # chgrp sales /home/sales/*. A proposito, il comando chown ti consente di impostare immediatamente il gruppo proprietario, per questo devi mettere i due punti immediatamente dopo il nome del proprietario senza spazi e altri caratteri e scrivere il nome del gruppo richiesto
# chown - R sergej:gljuk * , anche questa opzione è consentita # chown - R:gljuk * (cioè analogo al comando chgrp).
La proprietà del file determina le operazioni che un utente può eseguire su un file. Il più ovvio di questi è cambiare il proprietario e il gruppo per alcuni file. Queste operazioni possono essere eseguite dal superutente e dal proprietario del file (nei derivati ​​BSD UNIX, solo il superutente). Se tutto è chiaro con il primo, ad esempio scrivendo un programma e poi rendendolo proprietario, ad esempio un superutente, ahimè, non funzionerà, e sebbene sia consentita l'opzione di cambiare proprietario, onestamente l'ho fatto non trovare una tale applicazione. Ma il gruppo, se sei il proprietario del file, può essere cambiato solo in quello principale (per impostazione predefinita ha lo stesso nome del nome dell'utente corrispondente). Tutte queste restrizioni sono state introdotte per diversi motivi, in modo che nessuno potesse inserire alcun file dannoso e in modo che se un computer ha un limite di spazio su disco per un determinato utente, non sarebbe possibile semplicemente ignorare il proprietario sovrascrivendolo.
Prossimo operazioni di base che possono essere eseguiti su un file: si tratta dell'accesso in lettura (Read), dell'accesso in scrittura (Write) e dell'accesso in esecuzione (eXecute). Queste operazioni sono impostate separatamente per ciascuno dei tre gruppi di utenti. Inoltre, solo l'utente proprietario e, ovviamente, il superutente può farlo. Il comando chmod viene utilizzato per impostare le autorizzazioni appropriate. Viene utilizzato in due forme: assoluto - quando i vecchi diritti vengono ignorati e nuovi vengono stabiliti incondizionatamente e relativo - quando altri vengono aggiunti / rimossi ai diritti esistenti. La forma assoluta implica la specifica dei permessi dei file specificandoli direttamente in forma ottale. Per ricevere codice completo modalità file richiesta, è sufficiente sommare i valori dei codici riportati in tabella.

Buona salute, cari lettori del blog! Tutti vorremmo che ciascuna o cartella situata sul server di hosting e appartenente al sito fosse il più protetta possibile da accessi non autorizzati.

Tale protezione è fornita dal fatto che il 90% degli hoster utilizza sistemi operativi simili a Unix, in cui è possibile regolare i diritti di accesso a tutti i file e le directory. Il server del mio provider di hosting, che ospita molti dei miei progetti, non fa eccezione.

A proposito, assicurati di chiedere facendo clic sul collegamento fornito. Ma continuiamo. Le regole stabilite in Unix differiscono dalle regole di lavoro familiari a molti in sala operatoria. Sistema Windows, dove la protezione in questo aspetto non è così forte, il che a volte porta a conseguenze disastrose sotto forma di infezione da virus del sistema.

CHMOD per utenti e autorizzazioni a file e cartelle (directory)

Sui sistemi basati su Unix, la situazione è diversa e c'è la possibilità di rendere la vita molto difficile ai malintenzionati che cercano di approfittare del tuo duro lavoro per un lungo periodo di tempo. Vale a dire, configurare correttamente i diritti di accesso CHMOD. Il nostro compito è fornire le autorizzazioni minime possibili per l'accesso a file e cartelle, che, tuttavia, non violeranno il corretto funzionamento del sito.

D'accordo, è un peccato non cogliere l'occasione per rafforzarsi seriamente. Certo, in questo caso, la modifica di alcuni file richiederà un po 'più di tempo, ma qui devi scegliere: o ottimizzare la sicurezza del sistema o ... Di seguito cercherò di sistematizzare le informazioni su CHMOD (diritti di accesso), perché lì sono diverse sfumature che devono essere conosciute dal webmaster. Quindi, cominciamo.

I diritti di accesso differiscono per i diversi gruppi di utenti. Quando si tenta di connettersi, il server determina a quale gruppo assegnare un particolare utente. Tutti gli utenti sono divisi in tre categorie:

  1. "utente" - proprietario del file
  2. "gruppo" - uno dei membri del gruppo a cui appartiene il proprietario
  3. "mondo" - "il resto del mondo", ovvero tutti gli altri utenti

Se ti connetti al server tramite e accedi con il tuo nome utente e password, verrai identificato come "utente"(u) se qualcun altro si connette tramite FTP, sarà definito come gruppo(g) se l'utente utilizza un browser, rientra nella categoria mondo(o).

Ora sui diritti di accesso CMOD a file e directory. In effetti, sono leggermente diversi, sebbene le designazioni siano le stesse. Autorizzazioni file:

  • r (read) - permesso di leggere i dati del file
  • w (wright) - il diritto di modificare il contenuto (è possibile solo modificare il contenuto - registrare, ma non eliminare)
  • x (eXutive) - il diritto di eseguire il file

Diritti di accesso alle cartelle (directory):

  • r - il diritto di leggere la cartella (è possibile ottenere il contenuto della directory, ovvero l'elenco dei file inclusi in essa)
  • w - il diritto di modificare i contenuti (autorizzazione a creare ed eliminare oggetti nella directory, se hai il diritto di scrivere file, puoi eliminare anche quegli oggetti che non ti appartengono)
  • x - il diritto di accedere a questa o quella directory (la particolarità qui è che anche se hai tutti diritti necessari a un file che si trova "in profondità" nelle directory, ma non si dispone dei diritti di accesso ad almeno una sottodirectory sul percorso di questo oggetto, non sarà possibile accedervi)

Un trattino "-" indica l'assenza di diritti. Tutti questi diritti sono prescritti dall'amministratore, che ottiene questa opportunità inserendo una password. Se riusciamo a impostare le massime restrizioni possibili sui diritti di accesso CHMOD a determinati file di risorse, possiamo praticamente eliminare il pericolo dell'implementazione della nostra "azione sporca" da parte dei programmi antivirus.

Per chiarezza, considera un esempio in cui il proprietario del file u ha tutti i diritti possibili: leggere, scrivere ed eseguire. Gli utenti classificati come g (gruppo) sono di sola lettura e scrittura, tutti gli altri (w) sono di sola lettura. La voce CHMOD sarebbe quindi simile a questa: "rwx rw- r- -".

Autorizzazioni per file e cartelle in termini numerici: CHMOD (777, 755, 444)

Ma più spesso i webmaster nella loro pratica devono assegnare determinati diritti di accesso in termini digitali:

  • r (leggi) - 4
  • w (scrivi) - 2
  • x (esecuzione) - 1
  • - (nessun diritto) - 0

Ora rivisitiamo l'esempio precedente per l'assegnazione dei permessi "rwx rw- r- -". Per visualizzare i diritti di ciascun utente, viene utilizzata la somma dei suoi diritti (r read + w write + x execute). Così la parte del record per il proprietario del file u (utente) - "rwx" si trasformerà in 7 (4+2+1). Per il membro del gruppo g (gruppo) - "rw-" in 6 (4+2+0) e per gli altri utenti o (mondo) - "r- -" in 4 (4+0+0). In sintesi, presenterò una tabella pivot con i valori dei permessi CHMOD, espressi sia in lettere che in numeri:


Ora presenterò un'altra tabella che riflette i diritti CHMOD totali per tutti i gruppi di utenti nel formato dei numeri:


Queste sono le principali combinazioni che vengono utilizzate più spesso nel lavoro di un webmaster. Il resto è formato per analogia. Se sei un amministratore di un sito o di un blog, ma lavori con un progetto senza connetterti tramite FTP, appartieni anche tu al gruppo “Altri utenti”. In questo caso, quando si lavora con il sito in questa modalità, è necessario tenere conto dell'ultima cifra nel valore CHMOD.

Di solito sul server in cui si trovano i tuoi file Blog Wordpress, le autorizzazioni sono impostate su 755 per le cartelle e su 644 per i file che ne fanno parte, questo vale quando la risorsa viene creata utilizzando File HTML, tuttavia, in condizioni moderne, i CMS (sistemi di gestione dei contenuti), che includono WordPress, vengono utilizzati in modo massiccio per creare un sito. E qui potrebbero esserci oggetti che devono essere scritti dal gruppo di utenti "mondo". Potrebbero esserci cartelle in cui viene caricato il contenuto, comprese le immagini.

Quindi appuntamenti diritti chmod su determinati file devono essere differenziati. Se accedi alla gestione del sito tramite FTP, puoi eseguire qualsiasi azione, tuttavia, in molti casi lavoriamo con il nostro progetto tramite, e in questo caso possono sorgere problemi se i diritti sono troppo alti e viceversa, se i diritti di accesso a uno o un altro file (cartella) vengono sottovalutati, quindi aumenta il rischio per la sicurezza. Pertanto, sulla base di quanto sopra, possiamo determinare alcune raccomandazioni per l'applicazione pratica di CHMOD per un blog WordPress:

777 - per cartelle in cui i file vengono costantemente scritti e cancellati (per una cartella cache)
755 - in relazione alle cartelle in cui i file vengono costantemente scritti ma non cancellati
666 - per i file in cui è necessario aggiungere una voce di volta in volta (ad esempio, il file .htaccess)
644 - per file di sola lettura (.php, .html, ecc.)

Come impostare le autorizzazioni CHMOD con il gestore FTP di FileZilla

Se è necessario apportare alcune modifiche mentre si lavora con la risorsa, ma a causa della presenza di un divieto di modifica è impossibile, è necessario connettersi al server di hosting tramite FTP e modificare i diritti di accesso in 777. Tuttavia, dopo aver apportato le modifiche al file, si consiglia di reimpostare il precedente CHMOD .

Ora di più su come eseguire questa operazione utilizzando. Per fare ciò, apri il programma e connettiti tramite FTP al server di hosting. Sul lato sinistro "Server remoto" Innanzitutto, contrassegna i file i cui attributi verranno modificati:

E fuori menù contestuale causato dalla pressione bottone giusto topi, selezionare "Autorizzazioni file". Successivamente, verrà visualizzata una finestra di dialogo. "Cambia attributi file":

Qui assegniamo i valori CHMOD desiderati per i file selezionati (o selezionati). Ma questo è solo se hai selezionato un file o un gruppo di file. Nel caso in cui si desideri impostare o modificare i valori CHMOD per una directory (cartella), quando si seleziona "Cambia attributi file", verrà visualizzata una finestra analogica, leggermente diversa da quella precedente, ovvero:

Vedi, ci sono impostazioni aggiuntive qui. Se selezioni la casella accanto alla riga "Reindirizza a directory nidificate", ciò significa che i diritti di accesso specificati verranno applicati alle directory (cartelle) o ai file nidificati in questa directory. Quando la casella di controllo è selezionata sotto, il gruppo di impostazioni situato sotto diventerà attivo e dovrai anche scegliere come vuoi applicare le impostazioni: a tutti i file e directory, solo ai sottofile o solo alle directory.

Oggi vorrei parlare dei permessi di file e cartelle (leggi). Questo concetto è arrivato nel mondo del webmastering da sistemi simili a Linux (Unix), su cui funziona la maggior parte degli hosting.

E il nome stesso Chmod è il nome di un programma in Linux che consente di assegnare diritti di accesso a vari oggetti. E poiché il tuo sito è installato su un server che esegue Linux (Unix) di una variante o dell'altra, lavorare con gli oggetti del tuo sito web sarà soggetto alle regole stabilite da sistemi operativi Linux (Unix).

In Windows, praticamente tutti i file sono impostati sulle autorizzazioni massime, il che, di fatto, porta al dominio sui nostri computer e, a sua volta, non fa morire di fame i proprietari delle società di antivirus. Nei sistemi Linux (Unix), le cose sono diverse: tutto è più complicato, ma allo stesso tempo più sicuro. Se tutto è impostato correttamente e con abilità, puoi aumentare notevolmente la sicurezza del tuo sito web.

Concetti di base sui permessi di file e cartelle

Se tutto è lasciato al caso e non si preoccupa di impostare i privilegi necessari, la probabilità che la tua risorsa venga violata o infettata da codice dannoso sarà molto alta. Bene, se hai portato tutti i tuoi dati, ma se no?!

Pertanto, è meglio immediatamente, senza indugio, configurare e modificare Chmod per tutti gli oggetti importanti nel tuo motore, in base al principio del minimalismo. Quelli. attribuire agli oggetti i diritti minimi necessari per il corretto funzionamento del sito web.

Comprendiamo prima l'essenza del problema per capire cosa esattamente e come configuriamo. Quindi iniziamo. I diritti di accesso sono separati in relazione a file e directory. Sono designati allo stesso modo, ma hanno un significato leggermente diverso.

A sua volta, rispetto ai file è possibile:

  • r - il diritto di leggere i dati.
  • w - per modificare il contenuto (registrazione - solo modifica del contenuto, non eliminazione).
  • x - per eseguire il file.

Soffermiamoci un po 'di più sulla possibilità di eseguire il file. La questione è che in Linux qualsiasi file può essere eseguito. Se si tratta di un eseguibile non è determinato dalla sua estensione (il concetto di estensione è assente nel file system Unix), ma dai diritti di accesso di Chmod. Se un file ha il diritto di esecuzione "X", significa che può essere avviato per l'esecuzione.

Per le directory è possibile:

  1. r - il diritto di leggere la directory (puoi leggere il contenuto della directory, ovvero ottenere un elenco di oggetti in essa contenuti)
  2. w - per modificare il contenuto della directory (puoi creare ed eliminare oggetti in essa contenuti e, se disponi del permesso di scrittura, puoi eliminare anche quei file che non ti appartengono)
  3. x - per entrare in una directory (è sempre selezionata per prima, e anche se si dispone di tutti i privilegi necessari su un oggetto che è sepolto in profondità nella catena di directory, ma non si dispone dell'attributo "X" per accedere ad almeno una directory su il percorso del file, quindi non ci riuscirai)

Nei sistemi Linux, tutto questo è distribuito dall'amministratore principale del computer, accesso al quale ottiene inserendo una password. E se la maggior parte degli oggetti avrà diritti di sola lettura, i virus non avranno praticamente nulla da fare su un computer del genere. non potranno registrarsi lì, né essere adempiuti. È questo risultato che dobbiamo ottenere impostando il Chmod necessario sugli oggetti del nostro sito.

Privilegi per gruppi di utenti

I privilegi stessi rientrano in tre categorie, a seconda di chi accede all'oggetto:

  • "utente" - u (direttamente il proprietario del file)
  • "gruppo" - g (membro dello stesso gruppo del proprietario)
  • "mondo" - o (tutti gli altri)

Il server determina a quale gruppo di utenti appartieni quando ti connetti al server. Quando ti connetti a un server tramite FTP, ad esempio, accedi con il tuo nome utente (e password), quindi il server ti assegna al gruppo "utente" ("u)".

Altri utenti che si connettono anch'essi tramite FTP al server verranno assegnati al gruppo "group" ("g") e un visitatore che accede al tuo sito Web utilizzando il suo browser rientrerà nel gruppo "world" ("o").

Variazioni dei tre possibili valori "r", "w" e "x" per le tre categorie "u", "g" e "o" e definire chmod nei file. Se una categoria non è specificata, viene sostituita da un trattino "-". I privilegi sono specificati in sequenza nell'ordine indicato:

  1. prima i diritti per il proprietario - "u"
  2. quindi per il gruppo - "g"
  3. e alla fine - per tutti gli altri - "o"

Dopo che il server ha assegnato il visitatore a un determinato gruppo, gli concede i diritti di agire sugli oggetti, dopodiché il visitatore sarà in grado di leggere, scrivere o eseguire il file (a seconda di ciò che il suo gruppo è autorizzato a fare con questo oggetto) .

Per vedere il contenuto di una directory, deve avere l'attributo read "r" (per il gruppo a cui il server ha assegnato il visitatore). Per creare un file o una cartella in uno esistente, è necessario che questa directory esistente abbia un attributo per la voce "w".

Per chiarezza, diamo un'occhiata a un esempio in cui il proprietario del file ("utente" - "u") ha tutti i diritti: leggere, scrivere ed eseguire, e tutti gli altri utenti hanno solo il privilegio di lettura. Una tale voce Chmod sarebbe simile a questa: "rwx r-- r--".

Consideriamolo in dettaglio: "rwx" (questa voce imposta i diritti sull'oggetto per il proprietario - "u"), "r--" (questa voce imposta i diritti sullo stesso oggetto, ma se il visitatore è assegnato da il server al gruppo - " g"), "r--" (questa voce imposta i privilegi sull'oggetto per tutti gli altri utenti - "o").

Qual è la differenza tra i permessi di file e cartelle

Si scopre che ci sono tre gruppi di utenti e tre azioni possibili con oggetti. Non sei ancora confuso? Mettiamo tutto quanto sopra sugli scaffali sotto forma di compresse. Innanzitutto, vediamo in cosa differiscono:

Oltre a una targa che mostra varie combinazioni di Chmod per tipi diversi oggetti:

Non può essere fatto nulla

L'accesso alla directory e alle relative sottodirectory è negato

Può visualizzare e modificare i contenuti

È possibile aggiungere, eliminare, modificare il file catalogo

Esegui se il file è binario

L'utente può eseguire un file binario di cui conosce l'esistenza, l'accesso o la lettura della directory è proibito

Chmod espresso in numeri (777, 400, 666, 755, 444)

Puoi vedere che qui le voci che utilizzano lettere latine e trattini sono usate per descrivere i diritti di accesso, ma probabilmente hai già riscontrato il fatto che Chmod è solitamente dato numericamente, ad esempio, la nota combinazione: 777, che consente tutto e tutti.

I privilegi, infatti, sono indicati anche da numeri:

  1. r (leggi) è sostituito da 4
  2. w (record) è sostituito da 2
  3. x (esecuzione) è sostituito da 1
  4. 0 significa - non fare nulla (ciò che è indicato da un trattino nella notazione alfabetica)

Torniamo alla voce di esempio che ho fornito poco prima: rwx r-- r-- . Se sostituiamo le lettere e i trattini in esso contenuti con numeri, secondo la regola appena descritta, e allo stesso tempo aggiungiamo i numeri in ogni triplo, otteniamo la forma digitale di questa voce: 744.

Quelli. si scopre che la somma di questi numeri mostra Chmod in relazione a file oa una cartella. Per esempio:

  • 7 (rwx) = 4 + 2 +1 (pieni diritti)
  • 5 (r-x)= 4 + 0 + 1 (leggi ed esegui)
  • 6 (rw-) = 4 + 2 + 0 (lettura e scrittura)
  • 4 (r--) =4 + 0 + 0 (sola lettura)
  • eccetera.

Questa tabella elenca tutte le possibili combinazioni di privilegi, registrati numericamente:

E ora diamo un'occhiata a varie combinazioni di voci in numeri, in relazione ai gruppi di utenti:

"Proprietario"

"Gruppo"

"Riposo"

eseguire

eseguire

eseguire

Tu stesso (tranne quando accedi al sito tramite FTP) e tutti gli altri visitatori della tua risorsa appartieni al gruppo "parola" (tutti gli altri), quindi per lavorare con il sito web, dobbiamo prima guardare l'ultima (terza) cifra questa voce.

Affinché lo script possa “eseguire il file” quando l'utente lavora con il sito, sarà sufficiente che su di esso siano impostati i diritti, a partire da “4” (r-- - sola lettura) (5,6,7 sono anche adatti, ma saranno ridondanti in termini di sicurezza).

Per la directory in cui si trova il file di questo script, devi impostare almeno "5" (r-x - puoi andare nella directory e leggerne il contenuto, non puoi eliminare o aggiungere). 7 è anche adatto, ma sarà anche superfluo in termini di sicurezza.

Se hai bisogno dello script non solo per leggere, ma anche per "scrivere" alcuni dati (ad esempio, inseriti dal visitatore), i diritti minimi per la "cartella" saranno ancora "5", ma per il "file" tu avrà bisogno di "6" (leggi e scrivi).

Molto probabilmente, sul server in cui hai copiato i contenuti del motore del tuo sito, verrà installato il seguente Chmod to objects:

Se avessi una risorsa composta da solo pagine html, allora sarebbe possibile lasciare tutto così com'è. Ma i siti moderni sono costruiti su motori e potrebbero esserci oggetti a cui è necessario scrivere per conto dei visitatori del gruppo "mondo" - o (tutti gli altri). Queste possono essere directory utilizzate per la memorizzazione nella cache delle pagine o quelle in cui le immagini, ecc., Verranno caricate nel corso del lavoro con il sito.

Naturalmente, se accedi al sito tramite FTP, potrai scrivere su questi file o directory, ma lavorando con l'interfaccia web come un normale utente, potresti avere problemi. Pertanto, l'installazione di determinati diritti deve essere affrontata in modo selettivo:

per tutte le directory in cui i file devono essere scritti, ma non devono essere cancellati regolarmente

per le cartelle in cui i file devono essere scritti e cancellati (ad esempio, per la cache)

per semplici file di sola lettura (.html, .php, ecc.)

per file su cui potrebbe essere necessario scrivere (ad esempio, con database .dat)

Come assegnare Chmod usando PHP

Come si può mettere in pratica tutto questo per il tuo sito? In linea di principio, tutto è semplice. Per assegnare i diritti di accesso, puoi:

Ma se Chmod non può essere modificato in nessun file, puoi provare ad assegnarli PHP significa. Puoi usare il seguente codice:

Dovrai sostituire file_name_x.php e directory_name_x con i nomi reali dei file e delle cartelle che desideri modificare. Di conseguenza, per i file verrà impostato 666 e per le directory 777. Inserisci questo codice PHP in un file utilizzando un blocco note di testo (consigliato) e assegnagli un'estensione .php, ad esempio prava.php.

copiare prava.php via FTP nella directory in cui è impossibile assegnare i diritti di accesso con mezzi regolari. IN barra degli indirizzi browser, scrivi il percorso prava..php) e premi "Start" o invio sulla tastiera. Ecco fatto, ora i privilegi verranno completamente modificati tramite PHP.

Per Joomla, subito dopo averlo installato, puoi impostare 777 nelle seguenti directory:

Amministratore/backup/ amministratore/cache/ amministratore/componenti/ amministratore/moduli/ amministratore/modelli/ cache/ componenti/ immagini/ immagini/banner/ immagini/storie/ lingua/ lingua/en-GB/ lingua/ru-RU/ media/ moduli/ plug-in/ plug-in/contenuto/ plug-in/ricerca/ plug-in/sistema/ modelli/

Dopo aver installato tutte le estensioni per Joomla e aver effettuato le impostazioni finali, Chmod alla maggior parte delle directory di cui sopra dovrebbe essere al fine di aumentare la sicurezza del sito torna al 755. Dovrai lasciare 777 per le directory con cache, con backup e con immagini.

Per i file del motore che si trovano nella root del sito, ad eccezione di sitemap.xml, è preferibile impostare 444 (sola lettura per tutti i gruppi di visitatori). Su setting.php, a volte si consiglia di impostare anche 400.

Posso dare esattamente lo stesso consiglio sull'impostazione dei diritti di accesso agli oggetti nei motori SMF e WordPress. È auspicabile, se possibile, partire su base permanente per le directory 755(ad eccezione della cache, delle immagini, delle directory di backup specificate sopra e forse di altre, se necessario), e per file - 644.

È meglio mettere 444 sui file nella root del sito.

Se, quando si lavora con il sito, si verifica un problema con l'impossibilità di scrivere le impostazioni su un file o l'impossibilità di creare un qualche tipo di directory, è possibile assegnare temporaneamente diritti elevati su di essi (777, ad esempio), quindi restituire tutto indietro (fuori pericolo). E in nessun modo non andartene(per facilità d'uso del sito) Chmod irragionevolmente alto.

Buona fortuna a te! A presto sul sito delle pagine del blog

Potresti essere interessato

Codifica del testo ASCII (Windows 1251, CP866, KOI8-R) e Unicode (UTF 8, 16, 32): come risolvere il problema con krakozyabry
OpenServer - moderno server locale e un esempio del suo utilizzo per l'installazione di WordPress su un computer
Che è successo Indirizzo URL Qual è la differenza tra assoluto e collegamenti relativi per sito
Ricerca Yandex sul sito e nel negozio online
Mappa del sito in formato xml per Yandex e Google - come creare una mappa del sito in Joomla e WordPress o in un generatore online

Se noti un errore, seleziona una parte di testo e premi Ctrl + Invio
CONDIVIDERE: