RHEL7:Sicurezza Host-based e User-based

By | Dicembre 1, 2018

Sicurezza basata su host (Host-based)

La sicurezza basata su host verrà configurata a livello di applicazione e non su un firewall.
Il nostro obiettivo è configurare il controllo degli accessi come segue:

Consentire da: *.rhce.local (10.8.8.0/24),
Rifiutare da: my1337.hacker.local (10.8.9.99/32).

SSH

Permetti al firewall l’accesso SSH per tutti:

# firewall-cmd --permanent --add-service=ssh

Aprire /etc/hosts.deny e aggiungere quanto segue:

sshd:   my1337.hacker.local

Apri /etc/hosts.allow e aggiungi quanto segue:

sshd:   *.rhce.local

Di default tutto è permesso.

# journalctl -xlf
[...]
sshd[3069]: refused connect from my1337.hacker.local (10.8.9.99)

HTTP / HTTPS (Apache)

Permetti al firewall l’accesso HTTP / S per tutti:

# firewall-cmd --permanent --add-service={http,https}

Inserisci quanto segue nel file di configurazione httpd:

<RequireAll>
  Require host rhce.local
  Require not host my1337.hacker.local
</RequireAll>
# journalctl -xlf
[...]
[authz_core:error] [pid 3057] [client 10.8.9.99:43378] AH01630: client denied by server configuration: /var/www/html/

DNS (Unbound)

Permetti al firewall l’accesso DNS per tutti:

# firewall-cmd --permanent --add-service=dns

Aprire /etc/unbound/unbound.conf e aggiungere la seguente riga:

access-control: 10.8.8.0/24 allow

Di default tutto è rifiutato.

NFS

Consenti l’accesso NFS del firewall per tutti:

# firewall-cmd --permanent --add-service=nfs

Apri / etc / exports e configura l’accesso:

/nfs *.rhce.local(ro)

Tutto il resto è rifiutato.

SMB

Consenti l’accesso SMB al firewall per tutti:

# firewall-cmd --permanent --add-service=samba

Aprire /etc/samba/smb.conf e configurare gli host consentono le voci:

hosts allow = 10.8.8.

È anche possibile utilizzare la lista degli host deny, ma si noti che quando gli elenchi sono in conflitto, l’elenco di autorizzazioni ha la precedenza.

SMTP (Postfix)

Permetti al firewall l’accesso SMTP per tutti:

# firewall-cmd --permanent --add-service=smtp

Apri / etc / postfix / access e aggiungi quanto segue:

rhce.local          OK
my1337.hacker.local REJECT

eseguire:

# postmap /etc/postfix/access

Aggiungi la seguente riga a /etc/postfix/main.cf:

smtpd_client_restrictions = check_client_access hash:/etc/postfix/access
# journalctl -xlf
[...]
postfix/smtpd[3939]: connect from my1337.hacker.local[10.8.9.99]
postfix/smtpd[3939]: NOQUEUE: reject: RCPT from my1337.hacker.local[10.8.9.99]: 554 5.7.1 <my1337.hacker.local[10.8.9.99]>: Client host rejected: Access denied; from=<root@my1337.hacker.local> to=<root@rhce.local> proto=ESMTP helo=
postfix/smtpd[3939]: disconnect from my1337.hacker.local[10.8.9.99]
[...]
postfix/smtpd[3939]: connect from srv1.rhce.local[10.8.8.71]
postfix/smtpd[3939]: A075621186: client=srv1.rhce.local[10.8.8.71]
postfix/cleanup[3944]: A075621186: message-id=<20160801150634.86753207E9@srv1.rhce.local>
postfix/qmgr[3882]: A075621186: from=<root@rhce.local>, size=610, nrcpt=1 (queue active)
postfix/smtpd[3939]: disconnect from srv1.rhce.local[10.8.8.71]
postfix/local[3946]: A075621186: to=<root@rhce.local>, relay=local, delay=0.08, delays=0.06/0.01/0/0.01, dsn=2.0.0, status=sent (delivered to mailbox)
postfix/qmgr[3882]: A075621186: removed

Sicurezza basata sull’utente (User-based)

SSH

Apri /etc/ssh/sshd_config e configura le seguenti sezioni:

AllowUsers sandy
DenyUsers root

Non dimenticare di riavviare il servizio sshd.

HTTP / HTTPS (Apache)

Apri /etc/httpd/conf/httpd.conf e configura l’autenticazione dell’utente:

<Directory "/var/www/html">
   AuthType Basic
   AuthName "Login Required"
   AuthUserFile "/etc/httpd/conf/htpasswd"
   Require valid-user
</Directory>


Dovrai creare un file password con un utente valido:

# htpasswd -c /etc/httpd/conf/htpasswd sandy

Non dimenticare di riavviare il servizio httpd.

NFS

Il server NFS non richiede l’autenticazione e applica solo restrizioni di accesso basate su indirizzi IP o nomi host di un client. Utilizzando il metodo di sicurezza predefinito, che è sec = sys, il server NFS si fida di qualsiasi uid inviato dal client.

Kerberos dovrebbe essere usato per dimostrare l’identità dell’utente.

SMB

Apri /etc/samba/smb.conf e configura le seguenti sezioni:

valid users = sandy, alice
write list = alice
read list = sandy


Gli utenti validi sono un elenco di utenti che dovrebbero poter accedere a questo servizio.

L’elenco di scrittura è un elenco di utenti a cui è stato concesso l’accesso in lettura e scrittura a un servizio. Se l’utente che si connette si trova in questo elenco, verrà loro fornito l’accesso in scrittura, indipendentemente dall’opzione di sola lettura impostata.

Non dimenticare di riavviare il servizio smb.

SMTP (Postfix)

Controllo degli accessi per-address /etc/postfix/access di Postfix:

user@domain REJECT

 

One thought on “RHEL7:Sicurezza Host-based e User-based

  1. Pingback: Obiettivi esame RHCE 7 - prometheusproject

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.