Nutanix_Home_Lab_Mentor_16 - itnett/FTD02H-N GitHub Wiki

Steg-for-steg Guide: Oppsett av VLAN 140 - Testmiljø

VLAN 140 er dedikert til et isolert testmiljø hvor du kan utføre eksperimenter, teste applikasjoner, og simulere forskjellige IT-scenarioer uten å påvirke produksjonsmiljøet. Dette miljøet er avgjørende for utvikling, sikkerhetstesting, og feilsøking.

1. Oppretting av VLAN 140 i Nutanix

  1. Logg inn på Nutanix Prism Central.

    • Åpne nettleseren og logg inn på Nutanix Prism Central.
  2. Naviger til nettverksinnstillinger.

    • Gå til Network Configuration under innstillingsmenyen.
  3. Opprett VLAN 140.

    • Klikk på Create Network og sett opp følgende:
      • Name: Test Environment
      • VLAN ID: 140
      • Subnet: 10.0.4.0/24
      • Gateway: 10.0.4.1
  4. Konfigurer IPAM (IP Address Management) for VLAN 140.

    • Aktiver IPAM for automatisk tildeling av IP-adresser til VMs i dette VLAN.

2. Opprettelse og Konfigurasjon av Virtuelle Maskiner (VMs)

A. Oppretting av Test-VMer
  1. Opprett flere VMs for testing.

    • Opprett minst tre VMs med ulik konfigurasjon for å teste forskjellige applikasjoner og systemer.
    • Navn: Test-VM-1, Test-VM-2, Test-VM-3
    • vCPU: 2
    • RAM: 4 GB
    • Disk: 20 GB (bruk lett Linux-distribusjon som Ubuntu Server eller CentOS)
    • Nettverk: Tilknytt alle VMs til VLAN 140.
  2. Installer basisverktøy på hver VM.

    • SSH inn i hver VM og installer nødvendige verktøy for testing:
      sudo apt-get update
      sudo apt-get install vim curl wget git
      
B. Sette opp et isolert testmiljø
  1. Konfigurer intern DNS.

    • Sett opp en lokal DNS-server på en av VMs for å håndtere navneoppslag innenfor testmiljøet.
    • Installer og konfigurer bind9 på DNS-serveren:
      sudo apt-get install bind9
      sudo vim /etc/bind/named.conf.local
      
    • Legg til zonsedata for testmiljøet i DNS-konfigurasjonen.
  2. Oppsett av intern brannmur med pfSense.

    • Hvis du ønsker å kontrollere intern trafikk, sett opp en VM med pfSense som brannmur for VLAN 140.
    • Konfigurer brannmuren for å tillate, blokkere, eller logge trafikk mellom de forskjellige VMs i testmiljøet.
  3. Konfigurer testnettverkets NAT.

    • Hvis test-VMs må kommunisere med eksterne ressurser, sett opp NAT (Network Address Translation) på pfSense eller på en dedikert VM.

3. Automatisering av Testoppgaver

A. Sette opp Jenkins for CI/CD Testing
  1. Installer Jenkins på en VM i VLAN 140.

    • SSH inn i VM og installer Jenkins:
      sudo apt-get install openjdk-11-jdk
      wget -q -O - https://pkg.jenkins.io/debian/jenkins.io.key | sudo apt-key add -
      sudo sh -c 'echo deb http://pkg.jenkins.io/debian-stable binary/ > /etc/apt/sources.list.d/jenkins.list'
      sudo apt-get update
      sudo apt-get install jenkins
      
    • Start Jenkins:
      sudo systemctl start jenkins
      
    • Konfigurer Jenkins for å kjøre automatiserte testbygg og integrasjonstester.
  2. Konfigurer Jenkins pipelines.

    • Opprett en enkel pipeline for å bygge, teste og distribuere applikasjoner i testmiljøet.
    • Bruk Jenkinsfile til å definere pipeline:
      pipeline {
          agent any
          stages {
              stage('Build') {
                  steps {
                      sh 'make'
                  }
              }
              stage('Test') {
                  steps {
                      sh 'make test'
                  }
              }
              stage('Deploy') {
                  steps {
                      sh 'make deploy'
                  }
              }
          }
      }
      
B. Ansible for Automatisering av Testmiljø
  1. Installer Ansible på en Orkestrerings-VM.

    • SSH inn i en VM i VLAN 140 som vil brukes til orkestrering:
      sudo apt-get install ansible
      
    • Konfigurer Ansible inventory for VLAN 140:
      [test_vms]
      Test-VM-1 ansible_host=10.0.4.10
      Test-VM-2 ansible_host=10.0.4.11
      Test-VM-3 ansible_host=10.0.4.12
      
  2. Skrive Ansible playbooks.

    • Opprett playbooks for automatisering av vanlige oppgaver som programvareinstallasjon, oppdateringer og konfigurasjoner i testmiljøet.
    • Eksempel på playbook:
      - hosts: test_vms
        become: yes
        tasks:
          - name: Install Apache
            apt:
              name: apache2
              state: present
      
          - name: Start Apache
            service:
              name: apache2
              state: started
              enabled: true
      
  3. Kjør Ansible playbooks.

    • Kjør playbooks for å utføre oppgavene på alle VMs i VLAN 140:
      ansible-playbook -i inventory install_apache.yml
      

4. Sikring av Testmiljøet

  1. Brannmurregler for VLAN 140.

    • Sett opp strenge brannmurregler for å sikre at testmiljøet er isolert fra andre VLANs og at uautorisert trafikk ikke kan komme inn eller ut av miljøet.
  2. Monitorering med Zabbix.

    • Sett opp Zabbix på en dedikert VM i VLAN 140 for å overvåke ytelsen og tilgjengeligheten av test-VMs.
    • Konfigurer Zabbix-agenter på hver VM i testmiljøet for å samle inn data.
  3. Sikkerhetstesting.

    • Utfør penetrasjonstesting og sårbarhetsanalyser i testmiljøet for å identifisere og rette opp sikkerhetshull.

5. Testing og Verifisering

  1. Test Jenkins pipelines.

    • Kjør en full CI/CD pipeline for å verifisere at systemet fungerer som forventet.
  2. Verifiser Ansible-konfigurasjoner.

    • Kontroller at Ansible playbooks har kjørt riktig og at alle konfigurerte tjenester fungerer som de skal.
  3. Evaluering av sikkerheten.

    • Gjør en full gjennomgang av brannmurregler og sikkerhetstiltak for å sikre at testmiljøet er godt beskyttet.

6. Oppsummering

VLAN 140 - Testmiljø er en kritisk del av infrastrukturen for å kunne utføre trygge og effektive tester. Ved å følge denne guiden har du satt opp et isolert miljø med nødvendige verktøy som Jenkins, Ansible, og pfSense for å administrere og automatisere testoppgaver. Dette VLAN gir en solid plattform for testing av applikasjoner, sikkerhet og infrastruktur uten risiko for produksjonsmiljøet.