SSSystems.local Netværk Vi har valgt at bygge vores netværk på en måde der sikre at trafik fra DMZ en ikke kan komme ned til vores LAN. Både ved hjælp af firewall regler og NAT. Men for at sikre at vi kan administrere vores firewall Sikkerhed 2 stk. PFSense for at dele vores netværk op i flere areas. Den ene PFSense får en offentlig IP, og NAT bliver aktiveret ned til DMZ en, nede i DMZ en har den anden PFSense et ben, den laver så NAT fra DMZ og ned i LAN netværket. Derved er alt trafik mellem LAN og DMZ adskilt, og vores LAN side er sikret med dobbelt NAT. Derud over et de to netværk sikret med diverse firewall regler. Regler der sikre, at det kun er bestemt trafik der har lov komme igennem til vores netværk. For følgende porte er der lavet portforwardingsregler, port 80, 1733. Port 80 er forwarded ind til webserveren, og port 1733 er forwarded ind til PFSense 2, i PFSense er der lavet en regler der acceptere den slags trafik, derved kan vi oprette VPN ind til LAN netværket. Vi har dermed mulighed for at administrere webserveren eksternt 1. Webserver Vi har valgt at webserverens fundament skal bestå af den mest gængse Linux distribution som er Ubuntu. Her har vi valgt at bruge den mest opdaterede udgave som i øjeblikket er version 14.04. Vi mener at Ubuntu er et godt valg fordi mængden af tilgængelig materiale er bredt, og ligeså med løsningsforslag til de udfordringer som virksomheden måtte komme ud for. Serveren er sat op med adressen 172.16.0.10 i en DMZ. Alt udvendig trafik som er indgående på port 80 og 443 til SSS WAN adresse bliver port forwardet via NAT. Idet serveren tilgås vil man få vist SSS hjemmeside som er lavet med Plesk. Plesk gør brug af PHP, derfor er det nødvendigt at installere PHP5 som automatisk også installerer Apache2. Apparmor som er et sikkerhedslag der beskytter kernel filer, konflikter med Plesk og skal derfor afinstalleres. Det anbefales i stedet at installere SELinux eller Grsecurity for at beskytte Linux kernelen. Herefter skal de relevante porte åbnes som i vores tilfælde er FTP, DNS, HTTP og HTTPS, dette har vi gjort i ip-tables. Nu er serveren klar til installation af Plesk som selv installerer den sidste nødvendighed MySql. Når installationen er færdig kan webportalen tilgås via serverens ip-adresse på port 8443 (dvs. ip:8443). Guiden som vi har brugt til at installere Plesk kan findes her 2 : Apache2 skal serveren bruge for i det hele taget at blive til en webserver. Apache gør det muligt at få siden vist idet man tilgår serveren via http. MySQL bruges til at opbevare information både in- og eksternt på webserveren. Skal serveren f.eks. gemme på en kommentar fra en bruger eller vise produkter fra firmaet, kommer disse fra eller bliver lagt i en database er inde i maven af MySQL. 1 Firewall regler og portwarding slide 5-11 2 http://www.ehow.com/how_8622773_install-plesk-ubuntu.html
PHP5 bruges til at oversætte php-scripting til html og gøre hjemmesiden dynamisk. Backup Selvom backup ikke var en del af projektet, besluttede vi alligevel at implementere det i projektet, grundet at man aldrig kan tage for meget backup. Der blev oprettet en ekstra Ubuntu server på lan netværket til ren og skær backup. På backup serveren blev der installeret samba, som gør at det er muligt for både linux og windows styresystemer at tilgå det share der bliver lavet. Først opretter man den mappe man gerne vil bruge som share, dernæst går man ind og tilpasser den konfigurations fil der hedder smb.conf, hvor man så opretter navn og rettigheder for sharet. Dernæst oprettede vi regler i Pfsense2 firewall en plus port-forwarded port 137 til 139 så webserveren kunne finde det share der var oprettet på backupserveren nede på LAN. Så oprettede vi et mountet share til backup serveren på webserveren, så vi kunne tilgå shared, det blev gjort v.h.a et simpel script som blev placeret i /bin mappen. Det næste var at oprette et backup script i /bin mappen, som tager backup af det vi nu havde specificeret i scriptet samt at sende backup filen ind på det mountet share, oprindelig var scriptet lavet til at uploade det via FTP, men det blev tilpasset til vores samba share, samt at navnet på filen kun indeholdte maskinens navn (hostname) og den uge dag den blev taget på, det blev rettet til hostname, dato og ugedag, til sidst blev der oprettet to crontab jobs, et der mounter sharet på webserveren når den genstarter, samt at den hver nat kl. 2 kører backup scriptet. På de to Windows maskiner (Windows server 2012 R2 og Windows klienten) blev der installeret Veeam endpoint backup som er et nyt gratis backup software som primært henvender sig til endpoint maskiner, dvs. klienter, men fungere også ganske udmærket på servere, den tager så backup ud på vores samba share samt der ligger ISO er til at boote op på hvis styresystemet er gået helt i knæ, hvor der tilmed også ligger nogle fejlfinding/fejlretnings værktøjer. Ønske topologi Hvis det setup skulle ud i drift, var der nogle ekstra ting der ville være nødvendige at tilføje, for at sikre redundance. Dette ses ud fra vores tegning i sidste slide i PowerPoint Showet
Bilag 1 PowerPoint Slide 1 Smart Storage Systems Thomas, Lennart og Carsten Slide 2 Virksomhedens krav Netværk Sikkerhed Webserver Windows Server 2012 R2 Backup Slide 3 Testlab, topologitegning
Slide 4 Netværk Subnets: WAN 192.168.146.131/24 DMZ 172.16.0.0/24 (skalerbart netværk) LAN 10.40.0.0/16 (skalerbart netværk) Slide 5 Netværk NAT, PFSense 1 Slide 6 Netværk NAT, PFSense 2
Slide 7 Sikkerhed rules, PFSense 1 Slide 8 Sikkerhed rules, PFSense 1 Slide 9 Sikkerhed rules, PFSense 2
Slide 10 Sikkerhed rules, PFSense 2 Slide 11 Sikkerhed rules, PFSense 2 Slide 12 Sikkerhed - Webserver
Slide 13 Webserver - LAMP og Plesk Apache 2 PHP 5 MySQL CMS Plesk Slide 14 Webserver webportal Slide 15 Windows Server 2012 R2
Slide 16 Windows Server 2012 R2 - DNS Slide 17 Windows Server 2012 R2 DNS forwarder Slide 18 Backup - Linux
Slide 19 Backup - Linux Slide 20 Backup - Windows Slide 21 Løsningsforslag