Veiledning for å beskytte en VPS -server med Linux

Innholdsfortegnelse

EN VPS -server (Virtual Private Server), Det er en logisk partisjon av en harddisk gjennom en virtuell maskin, en vps gir oss mer kontroll over styring av ressurser sammenlignet med den delte servertjenesten.

En VPS er ideell for de som ønsker å bruke en server profesjonelt, men til en lavere pris enn en dedikert, og også for de som ønsker å starte og gjøre tester i administrasjon av servere, men ikke er sikre på de tekniske aspektene, VPS server er et godt alternativ å starte. Den kan brukes til å teste verktøy og ferdigheter uten å bruke for mye penger og sette en produksjonsserver i fare.

Vi kan lage en VPS som vist i opplæringen:

  • Opprett en lokal VPS -server

Eller bruk noen betalinger, det er mange selskaper som tilbyr VPS -server per måned eller per dag, for eksempel DigitalOcean, for å teste konfigurasjoner i et ekte miljø.

Det viktigste når vi må administrere en server er å bestemme hvilke sikkerhetstiltak vi vil iverksette som vil være nødvendige. Selv om det er mange sikkerhetstiltak og verktøy, kan de også være kontraproduktive siden de bruker ressurser og kanskje ikke tillater noen applikasjoner å fungere godt, så vi må være klar over risikoene, behovene for å kunne bestemme balansen mellom letthet, serverytelse og sikkerhet.

I denne opplæringen vil jeg gi en rekke anbefalte konfigurasjoner for en sikker VPS

Tilgangsblokkering med brannmurer
Brannmurer fungerer som en barriere mellom generell internettrafikk og serveren. Det er viktig å gjennomgå, filtrere og blokkere intern og ekstern trafikk.

Gjennom et sett med regler som er konfigurert av administratoren, vil en server bare bruke spesifikke nettverksporter for autoriserte tjenester. Resten av havnene har ikke blitt brukt, og må beskyttes trygt bak en brannmur, for å nekte all trafikk som er bestemt for disse stedene.

For denne opplæringen antar vi at vi administrerer en Linux VPS -server for å vedta sikkerhetstiltak. For å etablere grunnleggende brannmurregler må vi først spore hvilke porter vi har åpne, for dette bruker vi kommandoen:

 ifconfig
Vi bestemmer ip:
 nmap -sT -O 192.168.0.11

Dette lar deg vite hvilke porter som lytter og betingelse for bruk av tjenester i noen tilfeller. Konfigurering av reglene for brannmuren vår er et godt grunnlag for sikkerheten til serveren og nettverket.

Det er mange brannmurer tilgjengelig, noen er:

  • IPCop -brannmur
  • ConfigServer Sikkerhet og brannmur

Den mest brukte brannmuren er Iptables som allerede følger med Linux, men det har ikke et grafisk grensesnitt, fra terminalvinduet (koblet til via SSH) kan vi bruke følgende kommandoer:

Blokker en gitt inngående IP:

 sudo iptables -A INPUT -s 190.160.45.60 -j DROP
Blokker en innkommende IP og en port via ethernet -nettverksgrensesnitt eller kablet nettverk:
 iptables -A INPUT -i eth0 -s 190.160.45.60 -destinasjonsport 25 -j DROP
Jeg blokkerer en innkommende IP, men via WiFi:
 iptables -A INPUT -i wlan0 -s 190.160.45.60 -j DROP
Hvis jeg fjerner -s IP -parameteren og forlater porten, blokkerer jeg porten for en hvilken som helst IP

Iptables er verktøyet som brukes til å administrere nettfilterbrannmuren som er inkludert i Linux -kjernen. Fordelen med Iptables er at den har gjennomgått veldig dype sikkerhetsrevisjoner for å sikre at den fungerer og er nyttig.

Et annet interessant aspekt er at vi kan lage et skript eller et grensesnitt for å definere reglene for iptables, selv om det allerede er mange tilgjengelige som lar deg konfigurere med regelsett på en veldig fleksibel måte.

Bruk SSH trygt for fjernadministrasjon
Når vi må administrere en server som vi ikke har lokal tilgang, må vi gjøre det eksternt. For dette brukes tjenesten gjennom en protokoll kalt SSH, som står for Secure Shell, som gjør at serveren kan administreres fullstendig ved hjelp av en kommandotolk,

SSH gir muligheten til å opprette og vedlikeholde en trafiktunnel mellom datamaskinen og serveren, slik at en sikker forbindelse opprettes når tunnelen overfører data over en kryptert forbindelse.

Selv om selve protokollen er veldig sikker og har blitt grundig analysert og sikkerhetstestet, kan vi legge til noen konfigurasjonsalternativer for å gjøre den mer sikker, for eksempel endre porten siden SSH -tilkoblingsporten som standard er port 22, for dette kobler vi til via SSH og redigerer deretter filen:

 / etc / ssh / sshd_config
Vi kobler til ved hjelp av følgende kommando:
 ssh bruker @ ip

Deretter redigerer vi filen og endrer porten til en annen etter vår smak som ikke forstyrrer noen tjeneste, for eksempel 9200:

 nano / etc / ssh / sshd_config

Vi tar opp og vi starter SSH på nytt slik at den vedtar den nye konfigurasjonen, ifølge linux distro:

Fedora, Centos

 sbin / service sshd omstart
Debian, Ubuntu
 /etc/init.d/sshd start på nytt
Da må vi få tilgang igjen, vi gjør det slik:
 ssh bruker @ ip -p 9200
Da blokkerer vi port 22 på denne måten, de vil ikke kunne skanne oss og prøve et brutalt angrep.
 iptables -A OUTPUT -p tcp --dport 22 -j DROP
Installer en IPS eller innbruddsforebyggende system
Et innbruddsforebyggende system er programvare som lar deg overvåke og kontrollere tilgang på et datanettverk for å beskytte ressurser eller en server mot angrep og inntrengning. Intrusjonsforebyggende teknologi er et viktig supplement til et system for inntrengingsdeteksjon (IDS), mens en IPS fungerer som en brannmur mens en IDS analyserer hvilken type trafikk som sirkulerer på nettverket, men også sjekker innholdet og hva det innholdet gjør.

Et eksempel er Fail2Ban, det er en applikasjon utviklet under Python for forebygging av inntrengning, det er en IPS, som automatisk virker ved å analysere og blokkere eksterne tilkoblinger som prøver brute force -tilgang.

Fail2ban bruker ikke bare sin egen logg over tilgangsforsøk, den bruker også logger fra annen programvare, for eksempel iptables, som angir reglene for å kunne bruke en lås.

Du kan bruke regler som er opprettet av administratoren, eller opprette nye i henhold til din egen konfigurasjon, for eksempel blokkere en IP som ikke har fått tilgang til 3 ganger.

Vi kan fra et SSH -vindu eller laste det ned fra det offisielle nettstedet, hvis det kommer i depotene til distroen vår, installerer vi det.

 apt-get install fail2ban
Deretter konfigurerer vi den ved å redigere følgende fil:
 nano /etc/fail2ban/jail.conf

Her redigerer vi noen av de viktigste parameterne

  • ignorip: ip som aldri vil bli blokkert.
  • bantime: tiden i sekunder som IP -blokken vil vare.
  • maxretry: maksimalt antall mislykkede tilgangsforsøk før de ble blokkert.

Deretter kan vi lage filtre for forskjellige applikasjoner som vi kan finne i katalogen:

 cd /etc/fail2ban/filter.d

Dette innbruddsforebyggende systemet vil tillate oss å dempe mange angrep og dermed øke den generelle sikkerheten til vår VPS -konfigurasjon.

Fail2ban er en tjeneste som overvåker loggfilene for å avgjøre om en tilgang er en legitim bruker og om ikke midlertidig å blokkere trafikken fra IP -adressen som er knyttet til brukeren som har til hensikt å få tilgang til noen tjenester, det være seg ftp, ssh, e -post, web, etc.

Dette er en enkel måte å blokkere brute force -metoder automatisk, siden blokkering av det vil føre til at angrepet slutter å fungere så lenge vi indikerer. Dette er vanligvis nok til å motvirke ytterligere forsøk på brutal kraft.

Implementere a inntrengingsdeteksjonssystem eller IDS
Et system for inntrengingsdeteksjon, eller IDS, er det obligatoriske komplementet til et system for forebygging av inntrengning. En IDS oppdager fil- eller registreringsendringer ved å kjøre sammenligninger Mot disse tidligere registrerte statene å vite om filene har blitt endret eller noen konfigurasjon er blitt endret og for å registrere hvilken bruker som har gjort det.

Det er mange IDS som Snort, som vi så i opplæringen:

  • Verktøy for forebygging og sikkerhet av hackere
Surikat så vi i opplæringen:
  • Suricata Intruder Detection System
Tripwire som vi så i opplæringen:
  • Forsterker sikkerheten til servere og operativsystemer.

Disse verktøyene bruker en database med systemfiler og beskytter konfigurasjonsfiler. Ved å konfigurere regler og unntak definerer du hvilke filer som skal beskyttes og hva som skal rapporteres, slik at når du begynner å overvåke systemet, kan du gå gjennom henrettelser og eventuelle endringer av filene som overvåkes.

Alle verktøyene kan konfigureres til å sjekke med cronjob automatisk fra tid til annen og til og med implementere e -postvarsler i tilfelle uvanlig aktivitet.

Hvis vi tar Snort for eksempel, installerer vi det fra depotene:

 apt-get install snort

Deretter går vi til katalogen der regelfilene er:

 cd / etc / snort / rules

La oss for eksempel se på filen mysql.regler

 nano mysql.regler
Der vi ser spesifisert at enhver ekstern eller rotbruker tilgang til MySQL -tjenesten skal informeres.

Et annet eksempel er for eksempel overvåking av chatprogrammer både fra serveren eller fra en datamaskin i nettverket eller fra en ekstern datamaskin som bruker serveren vår.

 nano chat.regler 

Vi kan også konfigurere hver regelfil for å oppdage nedlastinger fra en nettleser eller tilgang til en tjeneste, endring av en fil eller en bestemt webside.

Suricata er mer moderne enn Snort og Tripwire, siden den fungerer som en sniffer -motor for å analysere innkommende og utgående trafikk i et nettverkssystem. Imidlertid er det ressurskrevende å analysere og oppdage inntrengninger ved å gjøre dobbeltarbeid som IDS og IPS.

Den har også plugins for å tildele regler og analysere mange applikasjoner og programmer. Suricata fungerer på alle lagene i OSI -modellen.

Se etter virus og skadelig programvare med Linux Malware Detect eller ClamAV
Selv om Linux er mindre utsatt for denne typen angrep, er det ikke immun mot ondsinnet programvare. Verktøyene til et sikkerhetssystem i forbindelse med implementering av en IPS og en IDS for å oppdage inntrengningsforsøk, krever programvare som er i stand til å søke og oppdage skadelig programvare for å identifisere spor av aktivitet som indikerer at det er noe farlig programvare installert i systemserveren.

I opplæringen til Linux Malware Detect (LMD) for å sikre Linux ble installasjonen og bruken av dette verktøyet for å oppdage skadelig programvare forklart, ikke gå glipp av det.

Det finnes en rekke malware -skannere tilgjengelig for Linux -systemer som kan brukes til periodisk å validere integriteten til servere. Linux Malware Detect, også kjent som maldet eller LCD, er et populært alternativ som kan installeres og konfigureres til å søke etter kjente malware signaturer basert på databasen.

Den kan kjøres manuelt for engangsskanninger og kan også kjøres via cronjob for å kjøre vanlige forebyggende skanninger og søk, spesielt for å sjekke e-post og filer som kan lastes opp av ftp til serveren. Rapporter om disse skanningene kan sendes til serveradministratorer via e -post.

Likte og hjalp du denne opplæringen?Du kan belønne forfatteren ved å trykke på denne knappen for å gi ham et positivt poeng

Du vil bidra til utvikling av området, dele siden med vennene dine

wave wave wave wave wave