Modificarea unui server web virtual dedicat

May 22, 2025
Confidențialitate și securitate
CONȚINUTUL NECACHAT

Când primiți un server virtual dedicat pentru a vă rula site-ul web, sunt mari șanse ca acesta să fie configurat pentru toată lumea și să nu fie personalizat pentru a maximiza performanțele pentru rularea unui site web.

Cuprins

[ ascunde ]

  • 1. Prezentare generală
  • 2 Configurare Linux
    • 2.1 Dezactivați DNS
    • 2.2 Dezactivați SpamAssassin
    • 2.3 Dezactivați xinetd
    • 2.4 Limitați utilizarea memoriei Plesk
    • 2.5 Dezactivează sau dezactivează Plesk (opțional)
  • 3 Configurare MySQL
    • 3.1 Activați memoria cache a interogării
    • 3.2 Dezactivați TCP / IP
  • 4 Configurare Apache
  • 5 Configurare PHP
    • 5.1 Eliminați modulele PHP inutile
    • 5.2 cache Opcode PHP
  • 6 copii de rezervă
    • 6.1 Creați un script de backup automat
    • 6.2 Sincronizarea copiilor de rezervă în afara site-ului cu Rsync
  • 7 Securitate
    • 7.1 Dezactivați autentificarea Root peste SSH
    • 7.2 Dezactivați versiunea SSH 1
    • 7.3 Reporniți serverul SSH
    • 7.4 Verificați dacă există porturi deschise
    • 7.5 Configurați un firewall
  • 8 A se vedea, de asemenea
  • 9 Referințe

Prezentare generală

Există o serie de domenii cu probleme în care dorim să maximizăm performanța:

  • Configurare Linux
    Există, de obicei, servicii care nu trebuie să fie, risipind memorie care ar putea fi folosită pentru mai multe conexiuni.
  • Configurare MySQL
    De multe ori setările implicite se bazează pe un server mic, putem adăuga câteva modificări cheie pentru a crește foarte mult performanța.
  • Configurație Apache
    În mod implicit, majoritatea furnizorilor de găzduire instalează apache cu aproape fiecare modul instalat. Nu există niciun motiv pentru a încărca module dacă nu le veți folosi vreodată.
  • Configurare PHP
    Configurația PHP implicită este umflată în mod similar, există de obicei o mulțime de module suplimentare inutile instalate.
  • Cache Opcode PHP
    În loc să permită PHP-ului să recompileze scripturile de fiecare dată, o memorie cache opcode va memora scripturile compilate în memorie pentru creșteri imense de performanță.
  • Copii de rezervă
    Probabil ar trebui să configurați unele copii de rezervă automate, deoarece furnizorul dvs. de găzduire nu o va face pentru dvs.
  • Securitate
    Sigur, Linux este suficient de sigur în mod implicit, dar există de obicei unele probleme de securitate evidente pe care le puteți remedia cu câteva setări rapide.

Configurare Linux

Puteți face destul de multe modificări, care vor varia ușor în funcție de serverul pe care îl utilizați. Aceste modificări sunt pentru un server care rulează CentOS, dar ar trebui să funcționeze pentru majoritatea serverelor DV.

Dezactivați DNS

Dacă furnizorul dvs. de găzduire gestionează DNS-ul pentru domeniul dvs. (probabil), atunci puteți dezactiva serviciul DNS din rularea acestuia.

dezactivați dns
/etc/init.d/numit stop
chmod 644 /etc/init.d/named

Comanda chmod elimină permisiunea de executare din script, oprindu-l să ruleze la pornire.

Dezactivați SpamAssassin

Dacă nu utilizați conturi de e-mail pe serverul dvs. însuși, nu ar trebui să vă deranjați să folosiți instrumente anti-spam. (De asemenea, ar trebui să verificați Google Apps, o soluție de e-mail mult mai bună)

/etc/init.d/psa-spamassassin stop
chmod 644 /etc/init.d/psa-spamassassin

Dezactivați xinetd

Procesul xinetd găzduiește o serie de alte procese, dintre care niciunul nu este util pentru un server web tipic.

/etc/init.d/xinetd stop
chmod 644 /etc/init.d/xinetd

Limitați utilizarea memoriei Plesk

Dacă utilizați panoul plesk, îl puteți forța să utilizeze mai puțină memorie adăugând un fișier de opțiuni.

vi /usr/local/psa/admin/conf/httpsd.custom.include

Adăugați următoarele linii în fișier:

MinSpareServers 1
MaxSpareServers 1
StartServers 1
MaxClients 5

Rețineți că se știe că această opțiune funcționează pe serverele MediaTemple DV, dar nu a fost bifată pe niciun alt server. (Vedea Referințe )

Dezactivați sau dezactivați Plesk (opțional)

Dacă utilizați Plesk doar o dată pe an, există foarte puține motive să îl lăsați să funcționeze. Rețineți că acest pas este complet opțional și puțin mai avansat.

Rulați următoarea comandă pentru a dezactiva plesk:

/etc/init.d/psa stop

Puteți să-l dezactivați de la rulare la pornire executând următoarea comandă:

chmod 644 /etc/init.d/psa

Rețineți că, dacă îl dezactivați, nu îl puteți porni manual fără a modifica înapoi permisiunile fișierului (chmod u + x).

Configurare MySQL

Activați memoria cache a interogărilor

Deschideți fișierul /etc/my.cnf și adăugați următoarele linii în secțiunea [mysqld] astfel:

[mysqld]
query-cache-type = 1
query-cache-size = 8M

Puteți adăuga mai multă memorie în memoria cache a interogării, dacă doriți, dar nu utilizați prea mult.

Dezactivați TCP / IP

Un număr surprinzător de gazde permite accesul la MySQL pe TCP / IP în mod implicit, ceea ce nu are sens pentru un site web. Vă puteți da seama dacă mysql ascultă pe TCP / IP executând următoarea comandă:

netstat -an | grep 3306

Pentru a dezactiva, adăugați următoarea linie în fișierul /etc/my.cnf:

sări peste rețea

Configurare Apache

Deschideți fișierul httpd.conf, adesea găsit în /etc/httpd/conf/httpd.conf

Găsiți linia care arată astfel:

Expirare 120

Și schimbați-l astfel:

Expirare 20

Acum găsiți secțiunea care include aceste linii și ajustați-vă la ceva similar:

StartServers 2
MinSpareServers 2
MaxSpareServers 5
ServerLimit 100
MaxClients 100
MaxRequestsPerChild 4000

Configurare PHP

Unul dintre lucrurile pe care trebuie să le aveți în vedere atunci când modificați un server pe platforma PHP este că fiecare fir de apache va încărca PHP într-o locație separată în memorie. Aceasta înseamnă că dacă un modul neutilizat adaugă 256k de memorie la PHP, pe 40 de fire de apache pierdeți 10 MB de memorie.

Eliminați modulele PHP inutile

Va trebui să localizați fișierul dvs. php.ini, care se găsește de obicei la /etc/php.ini (Rețineți că pe unele distribuții, va exista un director /etc/php.d/ cu un număr de fișiere .ini, câte unul pentru fiecare modul.

Comentează orice linie de module de încărcare cu aceste module:

  • odbc
  • snmp
  • pdo
  • odbc pdo
  • mysqli
  • ioncube-loader
  • json
  • imap
  • ldap
  • ncursuri

Tot: Adăugați mai multe informații aici.

Cache Opcode PHP

Există o serie de cache-uri opcode pe care le puteți utiliza, inclusiv APC, eAccelerator și Xcache, ultima fiind preferința mea personală datorită stabilității.

Descărcați xcache și extrageți-l într-un director, apoi executați următoarele comenzi din directorul sursă xcache:

phpize
./configure --enable-xcache
face
face instalare

Deschideți fișierul php.ini și adăugați o nouă secțiune pentru xcache. Va trebui să ajustați căile dacă modulele dvs. php sunt încărcate din altă parte.

vi /etc/php.ini

Adăugați următoarea secțiune în fișier:

[xcache-common]
zend_extension = /usr/lib/php/modules/xcache.so
[xcache.admin]
xcache.admin.user = "numele meu de utilizator"
xcache.admin.pass = "putanmd5hashhere"
[xcache]
; Schimbați xcache.size pentru a regla dimensiunea cache-ului opcode
xcache.size = 16M
xcache.shm_scheme = "mmap"
xcache.count = 1
xcache.slots = 8K
xcache.ttl = 0
xcache.gc_interval = 0
; Schimbați xcache.var_size pentru a ajusta dimensiunea memoriei cache variabile
xcache.var_size = 1M
xcache.var_count = 1
xcache.var_slots = 8K
xcache.var_ttl = 0
xcache.var_maxttl = 0
xcache.var_gc_interval = 300
xcache.test = Dezactivat
xcache.readonly_protection = Activat
xcache.mmap_path = "/ tmp / xcache"
xcache.coredump_directory = ""
xcache.cacher = Activat
xcache.stat = Activat
xcache.optimizer = Dezactivat

Tot: Trebuie să extindeți puțin acest lucru și să faceți legătura cu xcache în referințe.

Copii de rezervă

Este foarte puțin mai important decât să aveți copii de rezervă automate ale site-ului dvs. web. Este posibil să puteți obține copii de rezervă instantanee de la furnizorul dvs. de găzduire, care sunt, de asemenea, foarte utile, dar prefer să am și copii de rezervă automate.

Creați un script de backup automat

De obicei încep prin crearea unui director / backups, cu un director / backups / files sub el. Puteți regla aceste căi dacă doriți.

mkdir -p / backup-uri / fișiere

Acum creați un script backup.sh în directorul copiilor de rezervă:

vi /backups/backup.sh

Adăugați următoarele la fișier, ajustând căile și parola mysqldump după cum este necesar:

#! / bin / sh

THEDATE = `data +% d% m% y% H% M`

mysqldump -uadmin -pPASSWORD DATABASENAME> /backups/files/dbbackup$THEDATE.bak

tar -cf /backups/files/sitebackup$THEDATE.tar / var / www / vhosts / my-website-path / httpdocs
gzip /backups/files/sitebackup$THEDATE.tar

find / backups / files / site * -mtime +5 -exec rm {} \;
find / backups / files / db * -mtime +5 -exec rm {} \;

Scriptul va crea mai întâi o variabilă de dată, astfel încât toate fișierele vor fi denumite la fel pentru o singură copie de rezervă, apoi aruncă baza de date, aruncă fișierele web și le gzipează. Comenzile de căutare sunt utilizate pentru a elimina orice fișier mai vechi de 5 zile, deoarece nu doriți ca unitatea dvs. să rămână fără spațiu.

Faceți scriptul executabil executând următoarea comandă:

chmod u + x /backups/backup.sh

Apoi va trebui să-l atribuiți pentru a fi rulat automat de cron. Asigurați-vă că utilizați un cont care are acces la directorul copiilor de rezervă.

crontab -e

Adăugați următoarea linie în crontab:

1       1       *       *       *       /backups/backup.sh

Puteți testa scriptul din timp executându-l în timp ce sunteți conectat la contul de utilizator. (De obicei rulez copiile de rezervă ca root)

Sincronizarea copiilor de rezervă în afara site-ului cu Rsync

Acum că aveți copii de rezervă automate ale serverului dvs. care rulează, le puteți sincroniza în altă parte utilizând utilitarul rsync. Veți dori să citiți acest articol despre cum să configurați cheile ssh pentru autentificare automată: Adăugați o cheie SSH publică la serverul la distanță într-o singură comandă

Puteți testa acest lucru executând această comandă pe o mașină Linux sau Mac într-o altă locație (am un server Linux acasă, unde execut acest lucru)

rsync -a [email protected]: / backups / files / * / offsite backups /

Acest lucru va dura destul de mult pentru a rula prima dată, dar la final computerul dvs. local ar trebui să aibă o copie a directorului de fișiere din directorul / offsitebackups /. (Asigurați-vă că creați acel director înainte de a rula scriptul)

Puteți programa acest lucru adăugându-l la o linie crontab:

crontab -e

Adăugați următoarea linie, care va rula rsync la fiecare oră la marcajul de 45 de minute. Veți observa că folosim calea completă către rsync aici.

45 * * * * / usr / bin / rsync -a [email protected]: / backups / files / * / offsitebackups /

Puteți să-l programați să ruleze la o oră diferită sau doar o dată pe zi. Asta depinde de tine.

Rețineți că există o mulțime de utilități care vă vor permite să sincronizați prin ssh sau ftp. Nu trebuie să utilizați rsync.

Securitate

Primul lucru pe care doriți să-l faceți este să vă asigurați că aveți un cont de utilizator obișnuit de utilizat prin ssh și asigurați-vă că puteți utiliza su pentru a comuta la root. Este o idee foarte proastă să permiți conectarea directă pentru root peste ssh.

Dezactivați conectarea rădăcină peste SSH

Editați fișierul / etc / ssh / sshd_config și căutați următoarea linie:

#PermitRootLogin da

Schimbați această linie pentru a arăta astfel:

PermitRootLogin nr

Asigurați-vă că aveți un cont de utilizator obișnuit și că puteți face root înainte de a efectua această modificare, altfel s-ar putea să vă blocați.

Dezactivați versiunea SSH 1

Nu există niciun motiv pentru a folosi altceva decât SSH versiunea 2, deoarece este mai sigur decât versiunile anterioare. Editați fișierul / etc / ssh / sshd_config și căutați următoarea secțiune:

#Protocol 2,1
Protocolul 2

Asigurați-vă că utilizați Protocolul 2 doar așa cum se arată.

Reporniți serverul SSH

Acum va trebui să reporniți serverul SSH pentru ca acest lucru să aibă efect.

/etc/init.d/sshd reporniți

Verificați dacă există porturi deschise

Puteți utiliza următoarea comandă pentru a vedea pe ce porturi ascultă serverul:

netstat -an | grep ASCULTĂ

Într-adevăr, nu ar trebui să ascultați nimic în afară de porturile 22, 80 și, eventual, 8443 pentru plesk.

Configurați un firewall

Opțional, puteți configura un firewall iptables pentru a bloca mai multe conexiuni. De exemplu, de obicei blochez accesul la orice alte porturi, altele decât din rețeaua mea de lucru. Dacă aveți o adresă IP dinamică, veți dori să evitați această opțiune.

Dacă ați urmat deja toți pașii din acest ghid până acum, probabil că nu este necesar să adăugați și un firewall la mix, dar este bine să vă înțelegeți opțiunile.

Vezi si

  • Utilizarea Iptables pe Linux

Referințe

.intrare-conținut .pentru-intrare

Setting Up Virtual Hosts For The Apache Web Server - Tutorial

WHM Dedicated Server Configuration 3

Setting Up A Dedicated Server For A Multiplayer Game In Unity

WHM Bangla Tutorial Dedicated Server Configuration 2

Valheim Dedicated Server Setup | Host A FREE Private Server

How To Deploy A Cloud Dedicated Server With Free InterWorx - Host Unlimited Accounts

Set Up A Simple Web Server At Home In Under 10 Minutes Using Windows And WAMP

How To Setup A Cloud Dedicated Server W/InterWorx & Add Your Website, Name Servers, & Hostname SSL


Confidențialitate și securitate - Cele mai populare articole

Cum se activează sau se dezactivează conectarea securizată pentru Windows 10

Confidențialitate și securitate Oct 15, 2025

Windows este cel mai vizat sistem de operare de pe planetă. Asta înseamnă că ar trebui să fortificați apărarea computerului pentru a vă menține în siguranță atât online..


Numai procesoarele noi pot corecta cu adevărat ZombieLoad și Spectre

Confidențialitate și securitate May 16, 2025

RMIKKA / Shutterstock CPU-urile actuale au defecte de proiectare. Spectre le-a expus, dar atacuri precum Foreshadow și acum ZombieLoad exploatea..


Cum să faci fotografii în locuri publice cu respect

Confidențialitate și securitate Oct 11, 2025

CONȚINUTUL NECACHAT Fotografia începe să provoace o problemă. Fotografii - atât DSLR, cât și varietatea smartphone-urilor - provoacă ravagii în locațiile foto preferate ..


Cum să vă controlați Kodi Media Center cu un Amazon Echo

Confidențialitate și securitate Jul 13, 2025

Telecomandele sunt atât de 1950. Dacă aveți un centru media Kodi și un Amazon Echo, puteți reda toate filmele și emisiunile preferate cu o comandă vocală bine plasată ... d..


Utilizatorii Mac ar trebui să renunțe la Google Chrome pentru Safari

Confidențialitate și securitate Apr 4, 2025

Ascultă: știu că îți place Google Chrome. Aveți o colecție masivă de extensii, filele preferate fixate și există chiar și acea temă colorată pe care ați adăugat-o câ..


How-To Geek caută un scriitor de securitate

Confidențialitate și securitate Oct 3, 2025

CONȚINUTUL NECACHAT Crezi că ai combinația perfectă de cunoștințe geek și abilități de scriere? Căutăm un scriitor experimentat, axat pe securitate, care să se alătur..


Cum poate fi spațiu folosit pe o unitate flash „goală” și proaspăt formatată?

Confidențialitate și securitate Nov 12, 2024

CONȚINUTUL NECACHAT Când ștergeți totul de pe o unitate flash și îl reformatați, ați crede că ar trebui să „se afișeze” ca complet gol atunci când este bifat, dar ..


Cum poți fi infectat prin browserul tău și cum să te protejezi

Confidențialitate și securitate Feb 26, 2025

CONȚINUTUL NECACHAT Într-o lume perfectă, computerul nu ar putea fi infectat prin browser. Browserele ar trebui să ruleze pagini web într-un sandbox de încredere, izolându-..


Categorii