![IObit Advanced SystemCare Review - Gratuit și Pro](/f/19cefefdeb540702080aaee041c9dd03.jpg?width=100&height=100)
Cu toții suntem foarte familiarizați Apache server web, este un server web foarte popular pentru a găzdui fișierele dvs. web sau site-ul dvs. web pe web. Iată câteva linkuri care vă pot ajuta să configurați serverul web Apache pe cutia dvs. Linux.
Aici, în acest tutorial, voi acoperi câteva sfaturi principale pentru a vă securiza serverul web. Înainte de a aplica aceste modificări pe serverul dvs. web, ar trebui să aveți câteva elemente de bază ale serverului Apache.
Când instalați Apache cu sursa sau orice alt program de instalare de pachete precum da, afișează fișierul versiunea Apache server web instalat pe serverul dvs. cu Numele sistemului de operare a serverului dvs. din Erori. De asemenea, afișează informații despre Module Apache instalate în serverul dvs.
În imaginea de mai sus, puteți vedea asta Apache își arată versiune cu SO instalat în serverul dvs. Aceasta poate fi o amenințare majoră pentru securitate pentru serverul dvs. web, precum și pentru caseta Linux. A preveni Apache pentru a nu afișa aceste informații lumii, trebuie să facem unele modificări în fișierul principal de configurare Apache.
Deschideți fișierul de configurare cu editorul vim și căutați „ServerSignature„, Este activat implicit. Avem nevoie să Dezactivat aceste semnături de server și a doua linie „ServerTokens Prod”Îi spune lui Apache să returneze doar Apache ca produs în antetul de răspuns al serverului de la fiecare solicitare de pagină, suprimă sistemul de operare, informațiile despre versiunile majore și minore.
# vim /etc/httpd/conf/httpd.conf (RHEL / CentOS / Fedora) # vim /etc/apache2/apache2.conf (Debian / Ubuntu)
ServerSignature Off. ServerTokens Prod
# service httpd restart (RHEL / CentOS / Fedora) # service apache2 restart (Debian / Ubuntu)
În mod implicit, Apache listează toate conţinut din directorul rădăcină al documentului în absența fișier index. Vă rugăm să vedeți imaginea de mai jos.
Putem opriți listarea directorului folosind Directiva opțiuni în fișierul de configurare pentru un anumit director. Pentru asta trebuie să facem o intrare în httpd.conf sau apache2.conf fişier.
Opțiuni -Indexe.
Comunitatea dezvoltatorilor Apache lucrează continuu probleme de securitate și eliberarea lui versiune actualizata cu noi Opțiuni de securitate. Deci, este întotdeauna recomandat să utilizați ultima versiune de Apache ca server web.
A verifica Versiunea Apache: Puteți verifica versiunea curentă cu httpd -v comanda.
# httpd -v. Versiune server: Apache / 2.2.15 (Unix) Server construit: 13 august 2013 17:29:28
Vă puteți actualiza versiunea cu următoarea comandă.
# yum actualizare httpd. # apt-get install apache2
De asemenea, este recomandat să păstrați Nucleu și OS actualizat la cele mai recente versiuni stabile dacă nu executați nicio aplicație specifică care funcționează numai pe un anumit sistem de operare sau kernel.
Este întotdeauna bine să minorezi șansele de a fi victima oricăruia atac web. Prin urmare, este recomandat să le dezactivați module care nu sunt utilizate în prezent. Puteți lista toate modulele compilate ale serverului web, utilizând următoarea comandă.
# grep LoadModule /etc/httpd/conf/httpd.conf # trebuie să plaseze liniile corespunzătoare `LoadModule 'în această locație, astfel încât. # LoadModule foo_module modules / mod_foo.so. LoadModule auth_basic_module modules / mod_auth_basic.so. LoadModule auth_digest_module modules / mod_auth_digest.so. LoadModule authn_file_module modules / mod_authn_file.so. LoadModule authn_alias_module modules / mod_authn_alias.so. LoadModule authn_anon_module modules / mod_authn_anon.so. LoadModule authn_dbm_module modules / mod_authn_dbm.so. LoadModule authn_default_module modules / mod_authn_default.so. LoadModule authz_host_module modules / mod_authz_host.so. LoadModule authz_user_module modules / mod_authz_user.so. LoadModule authz_owner_module modules / mod_authz_owner.so. LoadModule authz_groupfile_module modules / mod_authz_groupfile.so. LoadModule authz_dbm_module modules / mod_authz_dbm.so. LoadModule authz_default_module modules / mod_authz_default.so. LoadModule ldap_module modules / mod_ldap.so. LoadModule authnz_ldap_module modules / mod_authnz_ldap.so. LoadModule include_module modules / mod_include.so. LoadModule log_config_module modules / mod_log_config.so. LoadModule logio_module modules / mod_logio.so. LoadModule env_module modules / mod_env.so. LoadModule ext_filter_module modules / mod_ext_filter.so. ...
Mai sus este lista modulelor care sunt activate în mod implicit, dar de multe ori nu sunt necesare: mod_imap, mod_include, mod_info, mod_userdir, mod_autoindex. Pentru a dezactiva modulul particular, puteți insera un „#”La începutul acelei linii și reporniți serviciul.
Cu o instalare implicită Apache își rulează procesul cu utilizatorul nimeni sau daemon. Din motive de securitate, este recomandat să rulați Apache în propriul său neprivilegiat cont. De exemplu: http-web.
# groupadd http-web. # useradd -d / var / www / -g http-web -s / bin / nologin http-web
Acum trebuie să spuneți Apache pentru a rula cu acest nou utilizator și pentru a face acest lucru, trebuie să facem o intrare în /etc/httpd/conf/httpd.conf și reporniți serviciul.
Deschis /etc/httpd/conf/httpd.conf cu editorul vim și căutați cuvântul cheie „Utilizator" și "grup”Și acolo va trebui să specificați nume de utilizator și numele Grupului a folosi.
Utilizator http-web. Grup http-web
Putem restricționa accesul la directoare cu „Permite" și "Nega”Opțiuni în httpd.conf fişier. Aici, în acest exemplu, ne vom asigura directorul rădăcină, pentru aceasta setând următoarele în httpd.conf fişier.
Opțiuni Niciuna Comandă refuz, permite refuz de la toți.
Aceste două module „mod_security" și "mod_evaziv”Sunt module foarte populare ale Apache din punct de vedere al securității.
Unde mod_security funcționează ca un firewall pentru aplicațiile noastre web și ne permite monitorizați traficul în timp real. De asemenea, ne ajută să ne protejăm site-urile web sau serverele web atacuri de forță brută. Puteți pur și simplu să instalați mod_security pe serverul dvs. cu ajutorul instalatorilor de pachete implicite.
$ sudo apt-get install libapache2-modsecurity. $ sudo a2enmod mod-security. $ sudo /etc/init.d/apache2 forța-reîncărcare
# yum install mod_security. # /etc/init.d/httpd reporniți
mod_evaziv funcționează foarte eficient, este nevoie de o singură cerere pentru a o procesa și o procesează foarte bine. Împiedică Atacuri DDOS de la a face cât mai multe daune. Această caracteristică a mod_evaziv îi permite să se ocupe de Forța brută HTTP și Dos sau DDos atac. Acest modul detectează atacurile cu trei metode.
mod_evaziv poate fi instalat direct de la sursă. Aici, avem un ghid de instalare și configurare a acestor module care vă va ajuta să configurați aceste module Apache în caseta Linux.
În mod implicit Apache urmează legături simbolice, Putem opriți această caracteristică cu FollowSymLinks cu Directiva opțiuni. Și pentru a face acest lucru, trebuie să facem următoarea intrare în fișierul principal de configurare.
Opțiuni -FollowSymLinks
Și, dacă există vreun anume utilizator sau site-ul web nevoie FollowSymLinks permite, putem scrie pur și simplu o regulă în „.htaccess”Din acel site web.
# Activați linkurile simbolice. Opțiuni + FollowSymLinks
Notă: Pentru a activa regulile de rescriere din interiorul „.htaccess”Fișier”AllowOrride All”Ar trebui să fie prezent în configurația principală la nivel global.
Putem opriți partea serverului include (mod_include) și CGI executarea dacă nu este necesară și pentru a face acest lucru trebuie să modificăm fișierul de configurare principal.
Opțiuni - Include. Opțiuni -ExecCGI
Putem face acest lucru și pentru un anumit director cu eticheta Directory. Aici În acest exemplu, suntem oprind Include și execuții de fișiere Cgi pentru „/var/www/html/web1”Director.
Opțiuni -Include -ExecCGI.
Iată câteva alte valori cu can be pornit sau oprit cu directiva Opțiuni.
În mod implicit Apache nu are limită pentru dimensiunea totală a cererii HTTP, adică nelimitată și atunci când permiteți cereri mari pe un server web este posibil să fiți victima Atacuri de negare a serviciului. Putem limita dimensiunea cererilor unei directive Apache „LimitRequestBody”Cu eticheta de director.
Puteți seta valoarea în octeți de la 0 (nelimitat) la 2147483647 (2 GB) care sunt permise într-un organism de solicitare. Puteți seta această limită în funcție de nevoile site-ului dvs., Să presupunem că aveți un site unde permiteți încărcările și doriți să limitați dimensiunea de încărcare pentru un anumit director.
Aici, în acest exemplu, user_uploads este un director care conține fișiere încărcate de utilizatori. Punem o limită de 500K pentru asta.
LimitRequestBody 512000.
Ei bine, este adevărat că nu vă puteți proteja complet site-ul web Atacuri DDos. Iată câteva directive care vă pot ajuta să aveți un control asupra acesteia.
Apache vă permite să vă conectați independent de Înregistrarea sistemului de operare. Este înțelept să activați înregistrarea Apache, deoarece oferă mai multe informații, cum ar fi comenzile introduse de utilizatori care au interacționat cu serverul dvs. Web.
Pentru a face acest lucru, trebuie să includeți fișierul mod_log_config modul. Există trei directive principale legate de jurnalizare disponibile cu Apache.
Le puteți utiliza și pentru un anumit site web pe care îl faceți Gazduire virtuala și pentru aceasta trebuie să îl specificați în secțiunea gazdă virtuală. De exemplu, aici este configurația gazdei virtuale a site-ului meu web cu logarea activată.
DocumentRoot /var/www/html/example.com/ ServerName www.example.com. DirectoryIndex index.htm index.html index.php. ServerAlias example.com. ErrorDocument 404 /story.php. Jurnal de erori/var/log/httpd/example.com_error_log CustomLog /var/log/httpd/example.com_access_log combinat
Nu în ultimul rând Certificate SSL, vă puteți asigura comunicarea într-o manieră criptată prin Internet cu certificat SSL. Să presupunem că aveți un site web în care oamenii se conectează dovedind acreditările lor de conectare sau aveți un site web de comerț electronic unde oamenii le furnizează detalii bancare sau Debit/Credit detaliile cardului pentru a cumpăra produse, în mod implicit serverul dvs. web trimite aceste detalii în format text simplu, dar când utilizați Certificate SSL către site-urile dvs. web, Apache trimite toate aceste informații în text criptat.
Poti cumpărați certificate SSl de la atât de mulți furnizori SSL diferiți, cum ar fi namecheap.com. Dacă conduceți o afacere web foarte mică și nu doriți cumpărați un certificat SSL puteți atribui în continuare un Certificat autosemnat pe site-ul dvs. web. Apache folosește mod_ssl modul de sprijin Certificat SSL.
# openssl genrsa -des3 -out example.com.key 1024. # openssl req -new -key example.com.key -out exmaple.csr. # openssl x509 -req -days 365 -in example.com.com.csr -signkey example.com.com.key -out example.com.com.crt
Odată ce certificatul dvs. a fost creat și semnat. Acum trebuie să adăugați acest lucru în configurația Apache. Deschideți fișierul principal de configurare cu editorul vim și adăugați următoarele linii și reporniți serviciul.
SSLEngine pe SSLCertificateFile /etc/pki/tls/certs/example.com.crt SSLCertificateKeyFile /etc/pki/tls/certs/example.com.key SSLCertificateChainFile /etc/pki/tls/certs/sf_bundle.crt ServerAdmin [e-mail protejat] ServerName example.com DocumentRoot / var / www / html / example / ErrorLog /var/log/httpd/example.com-error_log CustomLog /var/log/httpd/example.com-access_log common.
Deschideți browserul, tastați https://example.com, și veți putea vedea noul certificat autosemnat.
Acestea sunt câteva sfaturi de securitate pe care le puteți folosi securizați serverul web Apache instalare. Pentru sfaturi și idei de securitate mai utile, consultați documentația oficială online a Server HTTP Apache.