iPerf3 installation Ubuntu server

Dette indlæg omhandler installation af iPerf3 som er et performance tool som måler båndbredden imellem klient og server. iPerf3 er udviklet af nogle franske udviklere og man kan læse mere omkring dette på iperf.fr.

Installation af iPerf3

sudo apt install iperf3

Konfigurer herefter iperf3 som en server service

For at sikre at iPerf3 automatisk startes som en service når enheden hvor den er installeret på starter, eller genstarter, gøres følgende.

Opret et nyt dokument i /etc/systemd/system/iperf3.service med følgende indhold.

[Unit]
Description=iperf3

[Service]
ExecStart=/usr/bin/iperf3 --server

[Install]
WantedBy=multi-user.target

Aktiver service

sudo systemctl enable iperf3

Start iperf3 servicen

sudo system iperf3 start

Tjek herefter at iperf3 service er startet og kørende.

sudo system status iperf3

Ovenstående status viser at service er startet og klar til at modtage data. For at teste iPerf3 serveren, kør herefter iperf3 som klient fra en anden maskine mod serveren. Jeg har installeret iPerf3 på en maskine med navnet speedtest. Derfor udføres kommandoen som: sudo iperf3 -cv speedtest.

Ovenstående resultat er fra en Raspberry Pi 2 enhed og viser at den kan håndtere en båndbredde på 100Mbit. Raspberry Pi har kun et 100 Mbit Interface i forhold til 1Gbit på de nye Raspberry Pi 4.

Her er en test som blev køre fra en Raspberry Pi 4.

For at teste sin båndbredde mod Internettet, så kan man benytte følgende offentlige iPerf servere som er listet på iperf.cc.

Raspberry Pi Zero W

Raspberry Pi Zero (headless)

Når du første gang sidder med en Raspberry Pi Zero Wifi i hånden, tænker du hvordan får jeg lige et keyboard på denne enhed.

Men det er der råd for, man kan nemlig konfigurere Raspberry Pi Zero ved nogle små tricks. Tag SD-kortet ud af din Raspberry Pi, sæt den i din PC og vælg det drev som indeholder boot partitionen.

Giv adgang til SSH

Opret en fil ved navn SSH uden indhold

Oprettelse af forbindelse til Wifi

Opret en fil ved navn : wpa_supplicant.conf

tilføj følgende i filen:

country=US
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1

network={
    ssid="NETWORK-NAME"
    psk="NETWORK-PASSWORD"
}

rediger filen, sådan at matcher Wifi konfigurationen på dit Wifi.

country=DK
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1

network={
    ssid="IoT"
    psk="Deterikkesaasikkert"
}

Gem filen og flyt SD-kortet over i Raspberry Pi igen og sæt strøm til. Herefter skulle du Raspberry Pi enheden logge på det trådløse net, aktivere SSH adgang. For at få adgang, skal man kende IP adressen på enheden. Dette kan gøres ved at lave en IP scan af det net som deler IP adresser ud til det trådløse netværk-

Benyt NMAP eller anden form for IP Scanner. For at identificere en Raspberry Pi, så vil MAC Addressen altid starte med følgende prefixes:

  • DC:a6:32
  • E4:5F:01
  • B8:27:EB
  • 3A:35:41

Når man har fundet enheden på netværket, log da på enheden ved hjælp af SSH.

Ændre Hostname

For at ændre hostnavnet på enheden, benyt den indbyggede kommando hostnamectl eller ændre /etc/hostname filen.

sudo hostnamectl set-hostname rp2

Med ovenstående kommando er hostnavnet på raspberry pi enheden nu skiftet til ‘rp2’.

Ubuntu

Konfiguration af SNMP overvågning på Ubuntu server

For at kunne overvåge en Ubuntu server, skal der installeres en SNMP Daemon først [SNMPD]. SNMPD bliver ikke installeret som standard på en Ubuntu server. Tjek med følgende kommando om SNMPD allerede er installeret.

sudo service --status-all

[ + ] apparmor
[ + ] apport
[ + ] atd
[ - ] console-setup.sh
[ + ] cron
[ - ] cryptdisks
[ - ] cryptdisks-early
[ + ] dbus
[ + ] grub-common
[ - ] hwclock.sh
[ + ] irqbalance
[ - ] iscsid
[ - ] keyboard-setup.sh
[ + ] kmod
[ - ] lvm2
[ - ] lvm2-lvmpolld
[ + ] multipath-tools
[ - ] open-iscsi
[ + ] open-vm-tools
[ - ] plymouth
[ - ] plymouth-log
[ + ] procps
[ - ] rsync
[ + ] rsyslog
[ - ] screen-cleanup
[ + ] ssh
[ + ] udev
[ + ] ufw
[ + ] unattended-upgrades
[ - ] uuidd

Listen viser de services der er installeret på serveren, hvis der er angivet [+] så er servicen startet. Listen viser at SNMPD ikke er installeret.

Kør følgende for at installere SNMPD.

  1. opdater pakke listen: sudo apt-get update
  2. Installer SNMPD: sudo apt-get install snmp, snmpd

Herefter skal SNMPD konfigureres, dette gøres ved at ændre snmpd.conf filen. sudo nano /etc/snmp/snmpd.conf

Find linjen med følgende tekst: agentaddress 127.0.0.1,[::1]

Denne tekst skal ændres til følgende: agentaddress udp:161,udp6:[::1]:161

Find linjerne med følgende tekst:

rocommunity public default -V systemonly
rocommunity6 public default -V systemonly

Man benytter snmp community som password for at kunne få lov til at hente informationer fra serveren via snmp.

Ændre public til den SNMP Community som man ønsker eller benyt public som standard. Her er snmp community ændret til neosec.

rocommunity neosec default -V systemonly
rocommunity6 neosec default -V systemonly

Som standard er snmd konfigurereret med et systemonly view som ikke giver så mange informationer på systemet.

Hvis vi gerne vil overvåge disk, memory m.m. så ska snmp viewet ændres.

view systemonly included .1.3.6.1.2.1.1

View systemonly included .1.3.6.1.2.1.25.1

opret nyt view

view systemAll included .1

Gem ændringerne i snmpd.conf filen og start snmpd servicen. sudo service snmpd restart

[ + ] apparmor
[ + ] apport
[ + ] atd
[ - ] console-setup.sh
[ + ] cron
[ - ] cryptdisks
[ - ] cryptdisks-early
[ + ] dbus
[ + ] grub-common
[ - ] hwclock.sh
[ + ] irqbalance
[ - ] iscsid
[ - ] keyboard-setup.sh
[ + ] kmod
[ - ] lvm2
[ - ] lvm2-lvmpolld
[ + ] multipath-tools
[ - ] open-iscsi
[ + ] open-vm-tools
[ - ] plymouth
[ - ] plymouth-log
[ + ] procps
[ - ] rsync
[ + ] rsyslog
[ - ] screen-cleanup
[ + ] snmpd
[ + ] ssh
[ + ] udev
[ + ] ufw
[ + ] unattended-upgrades
[ - ] uuidd

Man kan nu se at snmpd er tilføjet i listen og servicen er startet.

Test nu om man kan hente snmp informationer fra serveren.

snmpwalk -v2c -c neosec localhost

iso.3.6.1.2.1.1.1.0 = STRING: "Linux ubuntudocker 5.4.0-62-generic #70-Ubuntu SMP Tue Jan 12 12:45:47 UTC 2021 x86_64"
iso.3.6.1.2.1.1.2.0 = OID: iso.3.6.1.4.1.8072.3.2.10
iso.3.6.1.2.1.1.3.0 = Timeticks: (2143) 0:00:21.43
iso.3.6.1.2.1.1.4.0 = STRING: "Me <me@example.org>"
iso.3.6.1.2.1.1.5.0 = STRING: "ubuntudocker"
iso.3.6.1.2.1.1.6.0 = STRING: "Sitting on the Dock of the Bay"
iso.3.6.1.2.1.1.7.0 = INTEGER: 72
iso.3.6.1.2.1.1.8.0 = Timeticks: (1) 0:00:00.01
iso.3.6.1.2.1.1.9.1.2.1 = OID: iso.3.6.1.6.3.10.3.1.1
iso.3.6.1.2.1.1.9.1.2.2 = OID: iso.3.6.1.6.3.11.3.1.1
iso.3.6.1.2.1.1.9.1.2.3 = OID: iso.3.6.1.6.3.15.2.1.1
iso.3.6.1.2.1.1.9.1.2.4 = OID: iso.3.6.1.6.3.1
iso.3.6.1.2.1.1.9.1.2.5 = OID: iso.3.6.1.6.3.16.2.2.1
iso.3.6.1.2.1.1.9.1.2.6 = OID: iso.3.6.1.2.1.49
iso.3.6.1.2.1.1.9.1.2.7 = OID: iso.3.6.1.2.1.4
iso.3.6.1.2.1.1.9.1.2.8 = OID: iso.3.6.1.2.1.50
iso.3.6.1.2.1.1.9.1.2.9 = OID: iso.3.6.1.6.3.13.3.1.3
...

Ovenstående resultat viser at SNMP Daemon servicen kører og man kan herefter konfigurere overvågning af serveren.

SSL Optimering

Ved en helt standard Microsoft IIS installation, er SSLv3 og SSLv2 slået til som standard. Disse protokoller ses som usikre og bør deaktiveres.

Udover det, er der som standard en række Krypterings algoritmer der er aktiveret som standard som også bør deaktiveres.

Via www.ssllabs.com, kan man teste sit website for hvilken SSL version der benyttes samt om websitet benytter en svag krypteringsalgoritme.

På www.neosec.dk har vi deaktiveret følgende svage algoritmer. RC4 og 3DES 168 bit.

For at slå algoritmerne fra, skal man tilføje nogle nye registrerings nøgler og værdier.

RC4, Triple DES 168 slås fra ved at tilføje nøgler under Ciphers.

Ved Diffie Hellman Key Exhange benyttes som standard 1024 bit. Dette skal ændres til minimum 2048 bit.

De fulde registrerings nøgler er listet længere nede.

SSL 2.0 protokollen styres under Protocols/SSL 2.0 her kan man styre Client og Server indstillingerne.

Det samme gør sig gældende for SSL 3.0.

 

 

 

 

RC4 og 3DES Cipher Deaktivering

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Ciphers\RC4 128/128]
“Enabled”=dword:00000000

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Ciphers\RC4 40/128]
“Enabled”=dword:00000000

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Ciphers\RC4 56/128]
“Enabled”=dword:00000000

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Ciphers\Triple DES 168]
“Enabled”=dword:00000000

Konfiguration af Diffie-Hellman 2048 bit

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\KeyExchangeAlgorithms\Diffie-Hellman]
“ServerMinKeyBitLength”=dword:00000800

Deaktivering af SSL 3.0

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0\Client]
“DisabledByDefault”=dword:00000001

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0\Server]
“Enabled”=dword:00000000


Qualsys SSL Labs Test you server

Link til SSLabs

Link til SSLLabs SSL Server Test

Dell PowerConnect Loop-Protect

For at beskytte mod Loop i et netværk skal man have slået en funktion på som Loop-Protection.

På Dell switche gøres dette ved en Keepalive kommando.

Keepalive kommandoen gør at switchen sender en CTP pakke ud på alle portene i et interval mellem 1-10 sekunder. Når en pakke sendes afsted, tjekker switchen om den kan se denne pakke via en af de andre porte. Hvis det er tilfældet, udløses en Keepalive action. Man kan vælge mellem to actions, Log og Err-Disable. Log giver en event i eventloggen hvor man informeres om at der er et loop. Err-Disable lukker porten ned og sørger for at loop’et ikke ødelægger netværkstrafikken.

For at kunne benytte Keepalive, så skal dette slås til Globalt på switchen.

Dette gøres på følgende måde.

Switch#(config) Keepalive 3 3 (cr)
Switch#(Config) Keepalive (cr)

Efterfølgende skal Keepalive slås til på de interfaces, man ønsker at beskytte mod Loops. Husk at dette må ikke gøres på LAG, MLAG og PortChannel porte.

Switch#(Config-If)Keepalive action error-dissable (cr)
Switch#(Config-If)Keepalive (cr)

Når en port lukkes ned i forbindelse med et loop, bliver porten sat i Shutdown. Porten kan først benyttes igen, når der er udført en Shutdown og efterfølgende no Shutdown.

Man kan tjekke status på hvilke porte der er ramt af Keepalive beskyttelsen ved hjælp af følgende kommando.

Switch#show keepalive statistics all
Keep Loop Loop Time Since Rx Port
 Port Alive Detected Count Last Loop Action Status
 -------- --------- ----------- -------- ------------- ------------- --------
 Gi1/0/3 Yes No Error disable Enable

Når en port er blevet lukket i forbindelse med et loop, så skal porten manuelt lukkes og åbnes igen før man kan benytte den igen.

Dette kan man automatisere via errdisable recovery.

Dette konfigureres i Global Config mode.

Switch#(config) Errdisable recovery cause loop-protect
Switch#(Config) Errdisable recovery interval 300

Intervallet er sat til 300 som svarer til 5 min. Det vil sige at hvis en port er blevet lukket pga. et loop, så vil denne Recovery funktion forsøge hvert 5. minut at genåbne porten så den kan benyttes igen.


Keepalive funktionen kræver at man som minimum kører med version 6.3.0.1 af Dell N2000/N3000 firmwaren.

Link til dokumentation hos Dell.

VMware Host Hardware Health Monitorering

Hver VMware Host overvåger hardwaren der håndterer den enkelte host. Via VMware Host Health Status, får man den aktuelle status på følgende komponenter.

  • CPU Processors
  • Memory
  • Fans
  • Temperature
  • Voltage
  • Power
  • Network
  • Battery
  • Storage
  • Cable/Interconnect
  • Software components
  • Watchdog
  • Other

Alle informationerne bliver opsamlet via System Management Architecture for Server Hardware (SMASH). SMASH er en industri standard som omhandler protokoller for administration af systemer i datacenter. For mere information omkring SMASH kan man følge dette link http://www.dmtf.org/standards/smash

For hver komponent gives en status

  • green : Sensoren er ok
  • red : Sensoren er i kritisk tilstand, Der er en hardware fejl på serveren.
  • unknown : Der kan ikke indhentes information omkring sensoren. dette kan forekomme hvis SMASH driveren ikke fungerer.
  • yellow : Sensoren er ok, dog kan der være et problem med hardwaren

Via Neosec Security Server kan man overvåge denne sensor status.

VMware Host Hardware Status Monitor, overvåges ved at hente listen over alle Hardware sensorene og gennemgår status. Hvis status ikke er “Green”oprettes en alert.

VMware Powercli– VMware powercli benyttes til overvågning af VMware Hosts. via dette API kan man få fat i alle managemente elememterr i VMware. Der benyttes HTTPS for kommunikation mod ESXi Host eller via VMware vCenter.

Installer VMware tools i Windows Server 2016 Core

Ved installation af Windows Server 2016 Core i VMware vil man gerne have det mest optimale ud af serveren. For at kunne køre med den optimerede VMware VMXNET3 netværks driver, så skal der installeres VMware tools. Ved installation af Windows 2016 Core skal man huske at vælge VMXNET3 istedet for default netværks adapteren, ellers skal man til at slette netværks adapteren og tilføje den rigtige efter oprettelsen serveren i VMware.

Følgende vejledning viser hvordan man installerer VMware Tools i Windows 2016 Core.

Start med at logge på med en konto der har Administrator rettigheder. Og start Powershell.

Start VMware Tools installation via VMware vSphere klienten.

Tjek derefter om d:\ er mounted. Dette kan gøres ved at køre Get-PSDrive som viser alle de drev der er mounted på serveren.

Vælg D: drevet og start setup.exe.

Herefter starter installationen som ved den almindelige Desktop udgave af Windows 2016. Det er også muligt at køre installation i silent mode, hvor der ikke er nogen grafisk brugerflade for installationen.

Vælg Typical og tryk Next.

Gå igennem wizarden og installer VMware tools.

Tryk Finish.

Til sidst bliver man bedt om at genstarte, vælg “Yes” og serveren genstartes.

Herefter er VMware tools installeret, man kan nu få adgang til netværket med NetFX3 driveren. Man kan nu starte server konfigurationen ved at køre sconfig.

Sikkerhed

Let’s Encrypt

Let’s Encrypt, er en organisation der tilbyder gratis og automatiseret udstedelse af certifikater til webservere m.m. Organisationen der driver servicen er Internet Security Resesarch Group (ISRG) hvor EFF, Mozilla, Cisco, Akamai med flere støtter op omkring projektet. Deres budskab er at skabe et mere sikkert Internet og bryde tabuet, med at det er for dyrt at få sikkerhed på sit website.

De certifikater der udstedes via Let’s Encrypt er baseret på Domain Validering. Ved oprettelse af certifikatet, skal man kunne identificere sig med at man er ejer af domænet, som certifikatet udstedes til. Dette gør det nemmere at kunne få udstedt certifikatet, da det ikke indebærer validering via personlig henvendelse samt kommunikation via email.

Certifikatets levetid er ikke som normalt, mellem 1 og 5 år, men kun på 90 dage. Læs her på følgende link, hvorfor man har valgt 90 dage. Det gør det noget mere besværligt og kræver noget mere administration af de udstedte certifikater i forhold til normal udstedte certifikater. Dette ved organisationen omkring Let’s Encrypt godt og har derfor sat sig for at kunne automatisere udstedelse af certifikaterne.

Let’s Encrypt har udviklet et API hvor der er udviklet en række klienter som man kan automatisere udstedelse af certifikater. Organisationen er selv kommet med en række klienter til forskellige platforme og med tiden er flere 3 parts leverandører kommet med integrationer til deres API, for at gøre det nemmere at udstede certifikater.

På Windows platformen, er der lavet en klient til PowerShell. Klienten kan installeres via PowerShell Gallery, eller via Chocolatey. Husk at installere PowerShell Gallery eller Chocolatey før man kan installere PowerShell modulet. En anden klient som kan anbefales er letsencrypt-win-simple, denne køres via en kommando prompt.

Jeg har her nævnt lidt plusser og minusser ved denne løsning.

Minusser

  • Begrænset levetid, levetiden er 90 dage kontra 1 – 5 år ved andre certifikater.
  • Man kan ikke udstede wildcard certifkater endnu. Dog kan man udstede SAN hvor man kan have op til 100 FQDN i samme certifikat.

Plusser

  • Det er gratis at få udstedt certifikater til sit website.
  • Da man ikke kan benytte Wildcard, har man muligheden for at benytte SAN, Subject Alternative Names.  domæner. Her kan man tilføje flere Fully Qualified Domain Names til certifikatet, sådan at et certifikat kan håndtere flere websites. op til 100.

Let’s Encrypts hjemmeside.

Network Cables

Neosec Net tools

Neosec Net tools består af en samling web applikationer som kan benyttes til at hjælpe netværks administratore i deres hverdag. Neosec Net tools kan findes på følgende adresse : nettools.neosec.dk

My IP, benyttes til at få oplyst den IP adresse man bliver præsenteret som, når man kommunikerer på Internettet.

SSL Check tjekker om en given URL har et validt certifikat. Man angiver en URL f.eks. www.bt.dk, herefter tjekker systemet om der kan oprettes en sikker forbindelse til https://www.bt.dk. Hvis dette er muligt hentes certifikatet og der laves en analyse af det.

  • Der tjekkes om certifikatets udløbsdato, der beregnes hvor mange dage certifikatet kan benyttes endnu.
  • Der tjekkes om certifikatets CN (Common Name) svare overens med den URL man har angivet.
  • SSLCheck viser alle informationer omkring certifikatet samt informationer omkring rod-certifikater og mellem rod-certifikater og giver status på om de er valide.

Et nemt lille værktøj til hurtigt at tjekke om f.eks. et certifikat på en Exchange server er validt.

MAC Address lookup, er et værktøj til at finde producenter via MAC Addresser.

Når man til daglig arbejder med netværk og til tider skal finde ud af hvilket udstyr der er på det pågældende net. Så kommer man tit ud for at man skal kunne genkende udstyret på en eller anden måde. Her kan man via en MAC adresse finde ud af hvilken producent der har lavet udstyret. Når man pinger en netværks enhed eller server på et netværk får man kun oplyst om den er i live. Ved opslag i arp tabellen får man oplyst IP Adresse og den MAC adresse enheden har. Ud fra MAC adressen kan man finde ud af hvilken producent der har lavet produktet.

IEEE-SA Registration Authority har i over 30 år håndteret en database over alle de producenter af netværks udstyr. Det er dem der tildeler MAC adresser til udbyderne.

Der findes 3 kategorier af MAC adresse databaser. Small Block (4096), Medium Block (1.000.000) og Large Block (16.000.000). MAC Address Lookup håndterer de adresser der ligger i Large Block databasen.

MTU Path test, er et værktøj til at tjekke hvor store pakker der kan benyttes til at kommunikere med på Internettet. MTU Path tester fra nettools sitet til en given destination. MTU står for Maximum Transmission Unit og er det antal bytes en enkel netværks pakke kan indeholde. Normalt på et IP baseret netværk benyttes der en MTU størrelse på 1500 Bytes. I nogle tilfælde kan netværksudstyret være konfigureret forkert og derved ikke overføre data med så store pakke størrelser, dette kan i nogle tilfælde skabe pakketab. Angiv en IP adresse eller et FQDN for at teste den maksimale MTU størrelse der kan kommunikeres med.

Vi håber at disse værktøjer kan hjælpe jer i hverdagen. Vi hører gerne ønsker om andre værktøjer der kan tilføjes og går gerne i dialog om dette.

 

Software Network

Nyttig software for netværks administratore

Til daglig arbejder jeg med netværk og sikkerhed og har i den forbindelse tit brug for nogle værktøjer til fejlfinding, dokumentation m.m. Jeg har her udfærdiget en liste som løbende vil blive opdateret, med de programmer som jeg benytter.

  • Wireshark : Wireshark er et netværksprotokol analyse værktøj. Det har sin force i at kunne genkende rigtige mange forskellige former for netværksprotokoller. Det har en indbygget optage funktion som gør at man hurtigt kan optage netværkstrafik og derefter analysere dette. Der er også mulighed for at indlæse PCAP filer fra andre produkter f.eks. netværks udstyr m.m. hvor man kan analysere de opsamlede netværksdata. Produktet er opensource og findes til flere forskellige platforme.
  • Neosec Network Scanner : Er en netværks scanner der hurtigt kan scanne et range af ip adresser. Udover hvilke IP adresser der er i brug kan det også opsamle information via SNMP og WMI. Dette program følger med Neosec security server og benyttes til at finde de aktive enheder på et netværk som man gerne vil overvåge via Neosec Security Server.
  • Advanced IP Scanner : Er også en netværks scanner som hurtigt kan lave en liste over de aktive enheder der er på netværket. Der er også en indbygget port scanner, sådan at de meste gængse porte bliver vist hvis de er aktive på den enkelte enhed.
  • inSSIDer 4 : Er et værktøj til tjek af trådløse netværk. Det er et uundværligt værktøj i forbindelse med “site survey” og placering af trådløse access punkter. Programmet er ikke gratis, det koster ca. 20 dollar.
  • Microsoft Visio : Microsoft Visio er nok et af de programmer jeg benytter mest. Det er det værktøj jeg benytter ved dokumentation af netværk og kommunikations flow. Jeg har benyttet mig af Visio lige siden det kom frem for mange år siden. Tit er en tegning bedre end en beskrivelse af en netværks infrastruktur eller et flow.