Permessi di chmod (lettura/scrittura/esecuzione) su file e cartelle

22 maggio 2010 Pidicci Nessun commento

Nel mondo dei sistemi operativi e nelle applicazioni web oriented sono di fondamentale importanza le operazioni di lettura/scrittura/aggiornamento su file e cartelle. Nel sistema Linux in particolar modo (ma anche su Windows in forma diversa) e’ possibile impostare su un file o su una cartella dei permessi particolari che ne determinano le policy di scrittura e lettura da parte dei utenti, gruppi ed altro.

Se abbiamo necessita’ ad esempio di scrivere un file via web e’ importante sapere che il file in questione dovrebbe avere i permessi sufficienti per essere aggiornato da parte dell’utente web user. E’ necessario conoscere se il web user e’ nello stesso gruppo dell’utente che ha pubblicato il file in questione altrimenti si dovranno fare alcune considerazioni per impostare i permessi in maniera adeguata.

In pratica, un permesso stabilisce le azioni che un utente/gruppo/altro può eseguire su un file o una cartella. Si usa il termine CHMOD per assegnare/cambiare i permessi di un file e di una cartella (sta per Change Mode).

Per ogni file presente sul server, possono essere assegnati 3 tipi di permessi. Ognuno provvede a far eseguire l’operazione corrispondente al suo proprietario (owner).

Lettura: identificata con la lettera r (read) o dalla cifra 4 (nel formato ottale). Chiaro quello che significa : il file sarà leggibile da tutti coloro i quali avranno tale permesso.
Scrittura: identificata con la lettera w (write) o dalla cifra 2. Permette modifiche, la riscrittura del file oppure la scrittura all’interno della directory.
Esecuzione: identificata dalla lettera x (exe) o dalla cifra 1. Permette l’esecuzione di uno script o l’accesso ai contenuti di una directory.

Da tenere presente che i permessi sono cosi’ divisi:

permessi di lettura: il proprietario può ottenere la lista dei files situati nella directory;
permessi di scrittura: è possibile creare e cancellare nuovi files e nuove directories all’interno di quella in cui si dispone dei permessi;
permessi di esecuzione: è possibile accedere alla directory.

A questo punto sarebbe utile fare un esempio: Vogliamo fare in modo che su un file l’utente che l’ha creato possa fare qualsiasi operazione (lettura/scrttura/esecuzione) mentre vogliamo che il gruppo associato al file possa solo leggerlo ed eseguirlo. Allo stesso tempo vogliamo che qualsiasi altro utente/gruppo sia impossibilitato nell’effettuare qualsiasi operazione. I permessi di CHMOD devono essere quindi impostati a 750!

7 → (4 + 2 + 1) -> leggibile/scrivibile/eseguibile al proprietario
5 → (4 + 0 + 1) -> leggibile/eseguibile al gruppo
0 → (0 + 0 + 0) -> nessun permesso agli altri utenti .

Si intuisce bene che un file o una directory con permessi assegnati a 777 mette indubbiamente a rischio la sicurezza ma a volte e’ l’unica soluzione per poter aggirare i blocchi imposti dal maintainer.

Per cambiare i permessi utilizzando il programma Client FTP FileZilla seguite i seguenti passi:

1. Aprite il vostro programma FTP FileZilla e connettetevi al vostro sito web.
2. Selezionate il file o la directory su cui desiderate impostare il permesso d´accesso.
3. Cliccate con il tasto destro del mouse per attivare il menu contestuale.
4. Selezionate “Attributi file” ed apparirà la seguente finestra, a questo punto selezionare o scrivere direttamente il valore numerico degli attributi desiderati e confermare.

Permessi chmod

Con altri client FTP più o meno occorre seguire gli stessi passi. Alcuni nominano i permessi come “attributi”.

E’ tutto.

Categorie:Altro Tag:

Limitare le connessioni in proftpd

14 aprile 2010 Luca Nessun commento

Per permettere l’accesso al server solamente a determinati indirizzi ip, bastera’ inserire queste righe nel file di configurazione:

# Permetti l’accesso FTP solo dall’ip  217.64.202.205
<Class IpFidato>
From 217.64.202.205/32
</Class>

<Limit ALL>
AllowClass IpFidato
DenyAll
</Limit>

217.64.202.205
Categorie:Altro Tag:

Plesk: Ottenere l’elenco dei database attivi completo di dominio di appartenza e password di accesso

7 aprile 2010 Pidicci Nessun commento

Sa avete la necessita’ di visualizzare tutti i database mysql attivi su un server con Plesk e di evidenziarne i riferimenti come sito di appartenenza e le credenziali di accesso potete eseguire una semplice query sul database di Plesk. La query è la seguente:

SELECT domains.name AS domain_name,
data_bases.name AS database_name, db_users.login, accounts.password
FROM data_bases, db_users, domains, accounts
WHERE data_bases.dom_id = domains.id
AND db_users.db_id = data_bases.id
AND db_users.account_id = accounts.id
ORDER BY domain_name;

Categorie:Altro Tag:

Filtrare una porta con iptables

19 marzo 2010 Luca Nessun commento

iptables e’ un’applicazione utilizzata per configurare il firewall del kernel linux. La gestione dei pacchetti avviene mediante l’utilizzo di ‘catene’ utili per poter distinguere e gestire il traffico di rete.  Di default sono attive le seguenti catene:

INPUT, OUTPUT, PREROTING, POSTROUTING, FORWARD

e vengono accettate tutte le connessioni.

Per filtrare una porta e’ necessario operare solamente su INPUT (traffico diretto al server) o OUTPUT (traffico in uscita dal server).

Potrete verificare lo stato del firewall con questo comando:

iptables -L -n

Con questo comando filtreremo la porta tcp 61282

iptables -A INPUT -p tcp –dport 61282 -j DROP

Per rimuovere la suddetta regola si puo’ utilizzare

iptables -D INPUT -p tcp –dport 61282 -j DROP

Potrete bloccare l’accesso ad un range di porte con un unico comando utilizzando il carattere ‘:’ nell’opzione –dport, ecco un esempio per filtrare le porte tcp dalla 600 alla 700

iptables -D INPUT -p tcp –dport 600:700 -j DROP

Ovviamente e’ possibile consentire l’accesso ad una determinata porta solamente ad un  indirizzo ip predefinito (nell’esempio viene utilizzato 127.0.0.1)

iptables -A INPUT -p tcp –dport 443 -s ! 127.0.0.1 -j DROP

Per eliminare tutte le regole si puo’ utilizzare

iptables -F

Categorie:Altro, Sicurezza Tag: ,