Tilpasning af en dedikeret virtuel webserver

May 22, 2025
Privatliv og sikkerhed
UCACHED INDHOLD

Når du får en dedikeret virtuel server til at køre dit websted, er chancerne gode, at den er konfigureret til alle og ikke tilpasset til at maksimere ydeevnen til at køre et websted.

Indhold

[ skjule ]

  • 1 Oversigt
  • 2 Linux-konfiguration
    • 2.1 Deaktiver DNS
    • 2.2 Deaktiver SpamAssassin
    • 2.3 Deaktiver xinetd
    • 2.4 Begræns brug af Plesk-hukommelse
    • 2.5 Deaktiver eller sluk for Plesk (valgfrit)
  • 3 MySQL-konfiguration
    • 3.1 Aktivér forespørgselscache
    • 3.2 Deaktiver TCP / IP
  • 4 Apache-konfiguration
  • 5 PHP-konfiguration
    • 5.1 Fjern unødvendige PHP-moduler
    • 5.2 PHP Opcode-cache
  • 6 Sikkerhedskopier
    • 6.1 Opret automatisk script til sikkerhedskopiering
    • 6.2 Synkroniser sikkerhedskopier uden for webstedet med Rsync
  • 7 Sikkerhed
    • 7.1 Deaktiver rodindlogning via SSH
    • 7.2 Deaktiver SSH version 1
    • 7.3 Genstart SSH-server
    • 7.4 Kontroller for åbne porte
    • 7.5 Opsætning af en firewall
  • 8 Se også
  • 9 Referencer

Oversigt

Der er en række problemområder, hvor vi vil maksimere ydeevnen:

  • Linux-konfiguration
    Der kører normalt tjenester, der ikke behøver at være, der spilder hukommelse, der kan bruges til flere forbindelser.
  • MySQL-konfiguration
    Ofte er standardindstillingerne baseret på en lille server, vi kan tilføje et par vigtige ændringer for at øge ydeevnen meget.
  • Apache-konfiguration
    Som standard installerer de fleste hostingudbydere apache med næsten alle moduler installeret. Der er ingen grund til at indlæse moduler, hvis du ikke nogensinde vil bruge dem.
  • PHP-konfiguration
    Standard-PHP-konfigurationen er ligeledes oppustet, der er normalt masser af unødvendige ekstra moduler installeret.
  • PHP Opcode-cache
    I stedet for at tillade PHP at kompilere scriptsne hver eneste gang, vil en opcode-cache cache de kompilerede scripts i hukommelsen for enorme ydeevneforøgelser.
  • Sikkerhedskopier
    Skal sandsynligvis konfigurere nogle automatiske sikkerhedskopier, da din hostingudbyder ikke vil gøre det for dig.
  • Sikkerhed
    Sikker på, Linux er sikker nok som standard, men der er normalt nogle skarpe sikkerhedsproblemer, som du kan løse med et par hurtige indstillinger.

Linux-konfiguration

Der er et stort antal tweaks, du kan udføre, som vil variere lidt afhængigt af den server, du bruger. Disse tweaks er til en server, der kører CentOS, men de skal fungere for de fleste DV-servere.

Deaktiver DNS

Hvis din hostingudbyder håndterer DNS for dit domæne (sandsynligt), kan du deaktivere, at DNS-tjenesten kører.

deaktiver dns
/etc/init.d/navngivet stop
chmod 644 /etc/init.d/navn

Kommandoen chmod fjerner eksekveringstilladelse fra scriptet og forhindrer den i at køre ved opstart.

Deaktiver SpamAssassin

Hvis du ikke bruger e-mail-konti på selve serveren, skal du ikke gider at køre anti-spam-værktøjer. (Du skal også tjekke Google Apps, meget bedre e-mail-løsning)

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

Deaktiver xinetd

Xinetd-processen huser en række andre processer, hvoraf ingen er nyttige til en typisk webserver.

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

Begræns Plesk-hukommelsesbrug

Hvis du bruger plesk-panelet, kan du tvinge det til at bruge mindre hukommelse ved at tilføje en indstillingsfil.

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

Føj følgende linjer til filen:

MinSpareServers 1
MaxSpareServers 1
StartServers 1
MaxClients 5

Bemærk, at denne indstilling er kendt for at arbejde på MediaTemple DV-servere, men er ikke blevet kontrolleret på andre. (Se Referencer )

Deaktiver eller sluk for Plesk (valgfrit)

Hvis du kun bruger Plesk en gang om året, er der meget lidt grund til at lade det køre overhovedet. Bemærk, at dette trin er helt valgfrit og lidt mere avanceret.

Kør følgende kommando for at slukke for plesk:

/etc/init.d/psa stop

Du kan deaktivere den fra at køre ved opstart ved at køre følgende kommando:

chmod 644 /etc/init.d/psa

Bemærk, at hvis du deaktiverer det, kan du ikke starte det manuelt uden at ændre filtilladelserne tilbage (chmod u + x).

MySQL-konfiguration

Aktivér forespørgselscache

Åbn din /etc/my.cnf fil, og tilføj følgende linjer i din [mysqld] sektion som denne:

[mysqld]
forespørgsel-cache-type = 1
forespørgsel-cache-størrelse = 8M

Du kan tilføje mere hukommelse til forespørgselscachen, hvis du vil, men ikke bruge for meget.

Deaktiver TCP / IP

Et overraskende antal værter muliggør som standard adgang til MySQL på TCP / IP, hvilket ikke giver mening for et websted. Du kan finde ud af, om mysql lytter på TCP / IP ved at køre følgende kommando:

netstat -an | grep 3306

For at deaktivere skal du tilføje følgende linje til din /etc/my.cnf-fil:

spring over netværk

Apache-konfiguration

Åbn din httpd.conf-fil, der ofte findes i /etc/httpd/conf/httpd.conf

Find den linje, der ser sådan ud:

Timeout 120

Og skift det til dette:

Timeout 20

Find nu sektionen, der indeholder disse linjer, og juster til noget lignende:

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

PHP-konfiguration

En af de ting, man skal huske på, når man tilpasser en server på PHP-platformen, er at hver eneste apache-tråd vil indlæse PHP et separat sted i hukommelsen. Dette betyder, at hvis et ubrugt modul tilføjer 256k hukommelse til PHP, spilder du på tværs af 40 apache-tråde 10 MB hukommelse.

Fjern unødvendige PHP-moduler

Du bliver nødt til at finde din php.ini-fil, som normalt findes på /etc/php.ini (Bemærk at der i nogle distributioner vil være en /etc/php.d/ mappe med et antal .ini filer, en til hvert modul.

Kommenter eventuelle belastningsmodullinjer med disse moduler:

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

Todo: Tilføj flere oplysninger her.

PHP Opcode-cache

Der er et antal opcode-cache, som du kan bruge, herunder APC, eAccelerator og Xcache, hvor den sidste er min personlige præference på grund af stabilitet.

Download xcache og udpak det i en mappe, og kør derefter følgende kommandoer fra xcache-kildekataloget:

phpize
./configure --enable-xcache
lave
foretage installation

Åbn din php.ini-fil, og tilføj en ny sektion til xcache. Du bliver nødt til at justere stierne, hvis dine php-moduler indlæses fra et andet sted.

vi /etc/php.ini

Føj følgende afsnit til filen:

[xcache-common]
zend_extension = /usr/lib/php/modules/xcache.so
[xcache.admin]
xcache.admin.user = "mit brugernavn"
xcache.admin.pass = "putanmd5hashhere"
[xcache]
; Skift xcache.size for at indstille størrelsen på opcode-cachen
xcache.size = 16M
xcache.shm_scheme = "mmap"
xcache.count = 1
xcache.slots = 8K
xcache.ttl = 0
xcache.gc_interval = 0
; Skift xcache.var_size for at justere størrelsen på den variable cache
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 = Fra
xcache.readonly_protection = Til
xcache.mmap_path = "/ tmp / xcache"
xcache.coredump_directory = ""
xcache.cacher = Til
xcache.stat = Til
xcache.optimizer = Fra

Todo: Brug for at udvide dette lidt og linke til xcache i referencerne.

Sikkerhedskopier

Der er meget lidt vigtigere end at have automatiske sikkerhedskopier af dit websted. Du kan muligvis få snapshot-sikkerhedskopier fra din hostingudbyder, hvilket også er meget nyttigt, men jeg foretrækker også at have automatiserede sikkerhedskopier.

Opret automatisk sikkerhedskopieringsscript

Jeg starter normalt med at oprette en / backups-mappe med en / backups / files-katalog under den. Du kan justere disse stier, hvis du vil.

mkdir -p / sikkerhedskopier / filer

Opret nu et backup.sh-script inde i sikkerhedskopimappen:

vi /backups/backup.sh

Føj følgende til filen ved at justere stierne og mysqldump-adgangskoden efter behov:

#! / bin / sh

THEDATE = `dato +% 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 / sikkerhedskopier / filer / site * -mtime +5 -exec rm {} \;
find / sikkerhedskopier / filer / db * -mtime +5 -exec rm {} \;

Scriptet opretter først en datovariabel, så alle filerne bliver navngivet ens for en enkelt sikkerhedskopi, derefter dumpes databasen, opjusterer webfilerne og gzips dem. Findkommandoer bruges til at fjerne filer, der er ældre end 5 dage, da du ikke vil have, at dit drev løber tør for plads.

Gør scriptet eksekverbart ved at køre følgende kommando:

chmod u + x / backup / backup.sh

Derefter skal du tildele det til at køre automatisk af cron. Sørg for at bruge en konto, der har adgang til sikkerhedskopimappen.

crontab -e

Føj følgende linje til crontab:

1       1       *       *       *       /backups/backup.sh

Du kan teste scriptet på forhånd ved at køre det, mens du er logget på brugerkontoen. (Jeg kører normalt sikkerhedskopierne som root)

Synkroniser sikkerhedskopier uden for webstedet med Rsync

Nu hvor du har automatiserede sikkerhedskopier af din server, der kører, kan du synkronisere dem et andet sted ved hjælp af rsync-værktøjet. Du vil gerne læse denne artikel om, hvordan du konfigurerer ssh-nøgler til automatisk login: Føj offentlig SSH-nøgle til ekstern server i en enkelt kommando

Du kan teste dette ved at køre denne kommando på en Linux- eller Mac-maskine et andet sted (jeg har en linux-server derhjemme, det er her jeg kører dette)

rsync -a [email protected]: / sikkerhedskopier / filer / * / offsitebackups /

Dette vil tage et stykke tid at køre første gang, men i slutningen skal din lokale computer have en kopi af filmappen i / offsitebackups / biblioteket. (Sørg for at oprette den mappe, før du kører scriptet)

Du kan planlægge dette ved at tilføje det til en crontab-linje:

crontab -e

Tilføj følgende linje, som kører rsync hver time ved 45-minutters markeringen. Du vil bemærke, at vi bruger den fulde sti til rsync her.

45 * * * * / usr / bin / rsync -a [email protected]: / sikkerhedskopier / filer / * / offsitebackups /

Du kan planlægge, at den kører på et andet tidspunkt eller kun en gang om dagen. Det er virkelig op til dig.

Bemærk, at der er mange værktøjer, der giver dig mulighed for at synkronisere via ssh eller ftp. Du behøver ikke bruge rsync.

Sikkerhed

Den første ting du vil gøre er at sikre dig, at du har en almindelig brugerkonto, der skal bruges gennem ssh, og sørg for at du kan bruge su til at skifte til root. Det er en meget dårlig idé at tillade direkte login til root over ssh.

Deaktiver rodindlogning over SSH

Rediger / etc / ssh / sshd_config filen, og se efter følgende linje:

#PermitRootLogin ja

Skift linjen for at se sådan ud:

PermitRootLogin-nr

Sørg for, at du har en almindelig brugerkonto og kan su til root, før du foretager denne ændring, ellers kan du låse dig selv ude.

Deaktiver SSH version 1

Der er virkelig ingen grund til at bruge andet end SSH version 2, da den er mere sikker end tidligere versioner. Rediger filen / etc / ssh / sshd_config, og se efter følgende afsnit:

# Protokol 2,1
Protokol 2

Sørg for, at du kun bruger protokol 2 som vist.

Genstart SSH Server

Nu skal du genstarte SSH-serveren for at få denne til at træde i kraft.

/etc/init.d/sshd genstart

Kontroller for åbne porte

Du kan bruge følgende kommando til at se, hvilke porte serveren lytter til:

netstat -an | grep LISTEN

Du burde virkelig ikke have andet at lytte end port 22, 80 og muligvis 8443 til plesk.

Konfigurer en firewall

Du kan eventuelt konfigurere en iptables-firewall for at blokere for flere forbindelser. For eksempel blokerer jeg normalt adgang til andre porte end fra mit arbejdsnetværk. Hvis du har en dynamisk IP-adresse, vil du undgå denne mulighed.

Hvis du allerede har fulgt alle trin i denne vejledning hidtil, er det sandsynligvis ikke nødvendigt at tilføje en firewall til blandingen, men det er godt at forstå dine muligheder.

Se også

  • Brug af Iptables på Linux

Referencer

.indgangsindhold .indgangsfod

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


Privatliv og sikkerhed - Mest populære artikler

Sådan startes altid Google Chrome i inkognitotilstand på Windows 10

Privatliv og sikkerhed Jun 10, 2025

Google Chrome husker normalt din browserhistorik. Du kan dog stoppe det, hvis du indstiller det til altid at åbne i inkognitotilstand. Sådan konfigurerer du Chrome til privat brow..


Sletter Snapchat virkelig mine snap?

Privatliv og sikkerhed Jan 4, 2025

Snapchat er en chat-app og et socialt netværk, der er super populært blandt årtusinder og teenagere. Hovedfunktionen er, at hver "Snap" (aka foto eller video) automatisk slettes ..


Sådan spejles din iPhone eller iPad's skærm på din Windows-pc

Privatliv og sikkerhed Jul 30, 2025

Med AirPlay kan du spejle din iPhone eller iPad's skærm på din Mac eller dit Apple TV . Men hvad nu hvis du har en Windows-pc? Vi viser dig et gratis værktøj, der..


Sådan synkroniseres filer mellem Android og din pc med FolderSync

Privatliv og sikkerhed Jul 14, 2025

På skrivebordet synkroniserer apps som Dropbox og Google Drive mapper mellem dine enheder. Men på din telefon giver det dig kun adgang til din cloudlager. En app kaldet FolderSync..


Sådan forsikres din personlige elektronik mod skader og tyveri

Privatliv og sikkerhed Aug 3, 2025

UCACHED INDHOLD Ligesom biler og hjem før dem er mobile enheder blevet en integreret del af vores liv, noget vi alle har brug for for at holde os ajour med de dage, begivenhedern..


Hvorfor tager det længere tid for en computer at reagere på en forkert adgangskode i forhold til en korrekt?

Privatliv og sikkerhed May 28, 2025

UCACHED INDHOLD Har du nogensinde indtastet den forkerte adgangskode på din computer ved et uheld og bemærket, at det tager et øjeblik at svare i forhold til at indtaste den ri..


Download aldrig et driveropdateringsværktøj; De er værre end nytteløse

Privatliv og sikkerhed Aug 3, 2025

Download aldrig et driveropdateringsværktøj. Synes godt om Programmer til rengøring af pc'er , prøver de at opkræve penge for en tjeneste, du ikke har brug for. ..


Windows 8 Screenshot Tour: Alt hvad du muligvis vil vide

Privatliv og sikkerhed Oct 30, 2025

UCACHED INDHOLD I går frigav Microsoft den første forhåndsvisning af Windows 8, og vi brugte hele natten på at teste den og dykke ned i, hvordan det hele fungerer. Her er vore..


Kategorier