Hvad er ACL?

IPv4 ACLs (Access Control Lists) er en mekanisme i IP-protokollen, der giver netværksadministratorer mulighed for at definere, hvilke IP-pakker der kan passere igennem en given router eller firewall.

IPv4 ACLs anvendes til at kontrollere trafikken på netværksniveau ved at filtrere indkommende eller udgående IP-pakker baseret på en række regler. Disse regler kan defineres på forskellige måder, herunder IP-adresser, protokoller, portnumre og andre faktorer, der kan identificere og klassificere netværkstrafikken.

ACL-reglerne er normalt konfigureret på en router eller firewall og fungerer ved at sammenligne de forskellige attributter i en indkommende IP-pakke med regelsættet. Hvis pakken opfylder reglerne, tillades den at passere gennem routeren eller firewallen, ellers blokeres den.

IPv4 ACLs kan bruges til at forbedre netværkssikkerheden ved at give netværksadministratorer mulighed for at definere tilladelige trafiktyper og blokere uønsket trafik. De kan også hjælpe med at forbedre netværksydelsen ved at begrænse uønsket trafik og prioritere vigtig trafik.

 

En god øvelse vil være og tage testen, som :
Packet Tracer Opgave 5.4.13 Configure Extended IPv4 ACLs Scenario 2

 

Router RT1

enable
configure terminal
ip access-list extended ACL
 deny tcp host 172.31.1.101 host 64.101.255.254 eq www
 deny tcp host 172.31.1.101 host 64.101.255.254 eq 443
 deny tcp host 172.31.1.101 host 64.103.255.254 eq www
 deny tcp host 172.31.1.101 host 64.103.255.254 eq 443
 deny tcp host 172.31.1.102 host 64.101.255.254 eq ftp
 deny tcp host 172.31.1.102 host 64.103.255.254 eq ftp
 deny icmp host 172.31.1.103 host 64.101.255.254
 deny icmp host 172.31.1.103 host 64.103.255.254
 permit ip any any
interface GigabitEthernet0/0
 ip access-group ACL in
end

Forklaring

Router RT1

enable (for at enable router)
configure terminal (Tilgå config)
ip access-list extended ACL 
-- ip access hvor vi opretter det med navnet ACL

 deny tcp host 172.31.1.101 host 64.101.255.254 eq 80 
-- afviser tcp på pc1 172.31.1.101 på bruge http/www på server 1


 deny tcp host 172.31.1.101 host 64.101.255.254 eq 443 
-- afviser tcp på pc1 172.31.1.101 på bruge https på server 1


 deny tcp host 172.31.1.101 host 64.103.255.254 eq 80 
-- afviser tcp på pc1 172.31.1.101 på bruge http/www på server 2


 deny tcp host 172.31.1.101 host 64.103.255.254 eq 443 
-- afviser tcp på pc1 172.31.1.101 på bruge https på server 2


 deny tcp host 172.31.1.102 host 64.101.255.254 eq ftp
 deny tcp host 172.31.1.102 host 64.103.255.254 eq ftp
 deny icmp host 172.31.1.103 host 64.101.255.254
 deny icmp host 172.31.1.103 host 64.103.255.254
 permit ip any any 
-- For at tillade alt andet, som vi ikke har præciseret


interface GigabitEthernet0/0
 ip access-group ACL in 
-- Tillader access-group med navnet ved skrev, som var ACL på interfacet g0/0


end

Hvad er Malware?

Malware (forkortelse for “malicious software”) er en type software, der er designet med det formål at skade eller hæmme en computers ydeevne eller stjæle data fra den uden ejerens samtykke. Malware kan have mange forskellige former og kan distribueres på forskellige måder. Her er nogle af de mest almindelige typer af malware:

  1. Virus: En virus er en type malware, der kan inficere andre filer på en computer og sprede sig til andre computere, når inficerede filer deles eller overføres. Virussen kan forårsage alt fra mindre gener, såsom at slette filer eller ændre data, til mere alvorlige skader som at beskadige harddisken eller styresystemet.
  2. Trojaner: En trojansk hest, eller blot “trojaner”, er en type malware, der giver en cyberkriminel fjernadgang til en inficeret computer. De kan bruges til at stjæle data, overvåge brugerens aktivitet eller endda installere yderligere malware.
  3. Ransomware: Ransomware er en type malware, der krypterer filer på en computer og kræver betaling for at dekryptere dem igen. Ofte vil cyberkriminelle true med at slette de krypterede filer, hvis ikke betalingen er modtaget inden for en given tidsramme.
  4. Spyware: Spyware er en type malware, der samler oplysninger om en bruger uden deres samtykke. Det kan samle information såsom passwords, bankoplysninger og browserhistorik og sende det tilbage til en angriber.
  5. Adware: Adware er en type malware, der viser uønskede annoncer på en computer. Ofte vil adware installere sig selv sammen med anden software og kan være svært at fjerne.
  6. Botnets: Botnets er et netværk af inficerede computere, der er styret af en hacker. Disse computere kan bruges til alt fra spam-e-mails til at udføre DDoS-angreb.

Det er vigtigt at beskytte sig mod malware ved at bruge en pålidelig antivirusprogram, opdatere software og undgå at downloade filer fra usikre kilder.

Linux – @Storage, Fileserver (Part 2)

SSH ind til din jump og opret et script i bash, kan gøres ved at bruge følgende kommando:

$ touch init-storage.sh

######### SCRIPT ###########

#!/bin/bash
# Opdatere serveren.
RED=”\033[1;31m”
GREEN=”\033[1;32m”
NOCOLOR=”\033[0m”

echo

echo -e “step 1: ${GREEN}update apt cache${NOCOLOR}”
sudo dnf update -y

echo

echo -e “step 2: ${GREEN}upgrade packages${NOCOLOR}”
sudo dnf upgrade -y

echo

# Sætte hostname på maskine (FQDN).

echo -e “step 1: ${GREEN}setting up new hostname${NOCOLOR}”
sudo hostnamectl set-hostname storage.ton.local

echo

echo -e “step 2: ${GREEN}the new hostname${NOCOLOR}”
sudo hostname

echo

#Oprette brugeren pingu
echo -e “step 1: ${GREEN}adding a new user and setting a new password${NOCOLOR}”
sudo useradd pingu; echo ‘Pa$$w0rd’ | passwd –stdin pingu

echo

#Giv brugeren pingu sudo rettigheder
echo -e “step 3: ${GREEN}adding user to sudo group${NOCOLOR}”
sudo usermod -aG wheel pingu

echo

#Ændre SELinux til permissive (brug sed med følgende kommando).
dnf install nano -y
sed -i ‘s/SELINUX=enforcing/SELINUX=permissive/g’ /etc/selinux/config

#Fjerne muligheden for root at logge ind via ssh (brug sed ).
sed -i ‘s/#PermitRootLogin prohibit-password/PermitRootLogin no/g’ /etc/ssh/sshd_config

#Tillade brugeren pingu at logge ind via ssh.
echo ‘AllowUsers pingu’ >> /etc/ssh/sshd_config

firewall-cmd –new-zone=secure –permanent

firewall-cmd –add-service=ssh –zone=secure –permanent

firewall-cmd –add-source=10.10.100.19 –zone=secure –permanent

firewall-cmd –remove-service=ssh –zone=internal –permanent

firewall-cmd –reload

#Genstart – som det sidste.
sudo reboot

########## SCRIPT SLUT ##############

Nu eksekver scriptet fra din jump over til din storage på 10.10.100.2
Skriv nedenstående:

# ssh root@10.10.100.2 ‘bash-s’ < init-storage.sh

Nu er indstillingerne lavet på storage som skal bruges senere i vejledningen.
Brugeren pingu er nu brugeren som skal bruges til at logge ind på storage.

I din Storage VM lav 3 diske på 2 GB hver. Se nedenstående:

Åben 2 konsoler (Terminaler) og login på din storage

Den ene terminal skriv følgende:

$ watch cat /proc/mdstat

 

Dette vindue gøre, så vi kan følge med processen, når vi opretter raid 5 på det andet vindue.
Til slut skulle det gerne se ud, som i nedenstående:

Lad terminalen stå og tag nu den anden terminal og skriv følgende:

$ lsblk -o NAME,SIZE,FSTYPE,TYPE,MOUNTPOINT

lsblk er Linux måde, hvor vi Windows, benytter os af diskpart list disk.

 

Du kan se at dine diske, som du fornyeligt har tilføjet, som har fået navne, vdb, vdc og vdd.
OBS: vdb, vdc og vdd hedder formentlig noget andet på din maskine, så de skal erstattes dette finder du i ovenstående billede.
Dem skal vi lave partitioner med, skriv derfor følgende:

$ cfdisk /dev/vdb
$ cfdisk /dev/vdc
$ cfdisk /dev/vdd

Skal vi have forhåbninger om at lave raid, skal mdadm installeres, skriv derfor følgende:

$ sudo dnf install mdadm

Her laves der raid ud af de 3 devices (enheder), læs gerne kommandoen. md0 er raid navnet, level 5 er raid, hvor vi bruger 3 devices (dev), som er vdb, vdc og vdd.

$ sudo mdadm –create –verbose /dev/md0 –level=5 –raid-devices=3 /dev/vdb /dev/vdc /dev/vdd

Husk og brug denne kommando i din anden terminal:

$ cat /proc/mdstat

Du skulle gerne se nu, at raid 5 oprettes.

ext4 er et linux format

$ sudo mkfs.ext4 -F /dev/md0

Her oprettes en mappe kaldt srv

$ sudo mkdir -p /srv/

Vi mounter vores raid 5, som har navnet md0 i srv

$ sudo mount /dev/md0 /srv/

$ df -h -x devtmpfs -x tmpfs

fstab gøre så md0 automatisk mountes i srv ved genstart af vores storage VM

$ echo ‘/dev/md0 /srv/md0 ext4 defaults,nofail,discard 0 0’ | sudo tee -a /etc/fstab

$ sudo mdadm –detail –scan | sudo tee -a /etc/mdadm/mdadm.conf

$ lsblk -o NAME,SIZE,FSTYPE,TYPE,MOUNTPOINT

Køre denne kommando, så skulle listen gerne se sådan her ud:

Her omoprettes brugere på vores Storage VM og tilhørende adgangskoder:

$ sudo useradd britta; echo ‘Pa$$w0rd’ | passwd –stdin britta
$ sudo useradd bo; echo ‘Pa$$w0rd’ | passwd –stdin bo
$ sudo useradd birger; echo ‘Pa$$w0rd’ | passwd –stdin birger

I nedenstående oprettes der grupper, som vi bruge til at opsætte rettigheder:

$ sudo groupadd medarbejdere
$ sudo groupadd salg

Følgende kommandoer, tilføjer vi de nyoprettede bruger til følgende grupper:

$ sudo usermod -aG medarbejdere britta
$ sudo usermod -aG medarbejdere bo
$ sudo usermod -aG medarbejdere birger

$ sudo usermod -aG salg britta
$ sudo usermod -aG salg bo
$ sudo usermod -aG salg birger

Der installeres nu smb i følgende kommando:

$ sudo dnf install samba samba-client samba-common

$ smbpasswd -a britta
$ smbpasswd -a bo
$ smbpasswd -a birger

I ovenstående oprettes smbpassword til følgende bruger

I smb.conf redigeres homes til at være browseable, som vi bruge for at teste der er hul til vores shares.

$ sudo nano /etc/samba/smb.conf

Ændre ”browseable = no” til ”yes”.

 

I ovenstående burde “homes” se sådan ud.

I nedenstående laves der firewall regler, hvis vi skal have forhåbninger om, at kunne tilgå vores shares på vores storage VM.
Tilføj service samba, fjern service som du mener du ikke skal bruge. Derefter tilføj dit interface ellers virker det ikke.

$ firewall-cmd –add-service=samba –zone=internal –permanent
$ firewall-cmd –remove-service=dhcpv6-client –zone=internal –permanent
$ firewall-cmd –change-interface=enp1s0 –zone=internal –permanent
$ firewall-cmd –reload

Husk firewall reload og — permanent (-perm), det er utrolig vigtig.

I nedenstående ser du, status, start, enable, restart.
Det giver forhåbentlig mening, hvorfor disse kommandoer skal køres?
Servicen samba er tilføjet, men intet er startet endnu, derfor bruger vi status for at tjekke om den køre.
Herefter starter vi den og enabler og derefter genstarter vi.

$ sudo systemctl status smb.service
$ sudo systemctl start smb.service
$ sudo systemctl enable smb.service
$ sudo systemctl restart smb.service

smb skulle gerne være aktiv og kørende nu.

Start din Gui VM og login. Her benytter jeg mig af Files som stifinder og er logget ind med brugeren bo.

 

Vi skal lave flere shares, srv skulle gerne være oprettet, da vi oprettede raid 5 med navnet md0.
I tilfælde du ikke gjor, skriv følgende :

$ sudo mkdir -p /srv/

cd ind i srv og opret nu faelles og salg :

$ sudo mkdir -p /srv/faelles
$ sudo mkdir -p /srv/salg

Herefter ind i smb.conf lav følgende opsætning :

$ sudo nano /etc/samba/smb.conf

[faelles], [salg] er dit sharenavn som ses i dolpfin eller Files alt efter hvilken stifinder du benytter.
comment er blot din kommentar (mest brugbar til dig selv)
Path er vigtig i forhold til hvilken mappe filerne skal gemmes i. I vores tilfælde /srv/salg, som vi lige har oprettet.
create mask og directory mask er rettighedsniveau i mapperne (Se gerne : https://ss64.com/bash/chmod.html)

$ sudo chmod 0777 /srv/faelles
$ sudo chmod 0777 /srv/salg

Ovenstående kommendoer er rettighed på selve mappen.
– R 0777 angiv alt efter hvad de skal benyttes til (Se gerne : https://ss64.com/bash/chmod.html)
Husk altid og test rettighederne, du skal formentlig ikke benytte -R 0777.

$ sudo chown :medarbejdere /srv/faelles
$ sudo chown :salg /srv/salg

Herefter i ovenstående :medarbejder og :salg angiver hvilken gruppe, som må tilgå denne mappe.
Som ses i vores smb.conf opsætning, så havde vi i valid users = @medarbejder og @salg.
Hvilket betyder, de brugere som er i disse grupper kan tilgå disse shares.
Ellers kan brugerne angives manuelt under valid users.
Husk altid og test rettighederne, du skal formentlig ikke benytte -R eller @medarbejder og @salg.

Nedenstående er i forhold til SELinux og skal ikke bruges (Se gerne : https://www.thegeekdiary.com/chcon-command-examples-in-linux/)

$ sudo chcon -t samba_share_t /srv/faelles
$ sudo chcon -t samba_share_t /srv/salg

Start din Gui VM og test smb://10.10.100.2/ se om dine shares er synlige og om din bruger kan logge ind.
Hermed test rettighederne er i orden, husk at Bo er i gruppen salg og skal ikke kunne tilgå faelles.

I nedenstående billede er jeg logget ind med Bo på smb og bruger Dolpfin som min stifinder.

Bo kommer ikke ind på faelles.

Bo kommer ind i salg og kan oprette mapper og filer :

Opsætning af FTP

Opret nu ftp-share i brugernes home mappe.

$ sudo mkdir -p /home/britta/ftp-share
$ sudo mkdir -p /home/birger/ftp-share
$ sudo mkdir -p /home/bo/ftp-share

Du skal formentlig ikke bruge -p, derfor undlad og angiv dette.

Herefter installere ftp service ved følgende kommando:

$ sudo dnf install -y vsftpd

Husk og tillad ftp service i firewall. 
$ sudo firewall-cmd –add-service=ftp –permanent

Dette skulle formentlig se sådan her ud i nedenstående.
Dit interface er formentlig ikke enp1s0 og services skal formentlig angives alt efter hvad “du” bruger storage til.

$ sudo firewall-cmd –reload
$ sudo systemctl enable vsftpd
$ sudo systemctl restart vsftpd

Husk reload og –permanent.
Derefter enable vsftpd service og restart.

 

$ getfacl /srv/salg
$ getfacl /srv/medarbejdere

 

Note:

Setup af vores system:
Download Excel fil her -> IP Plan for Linux
10.10.100.0/24, 255.255.255.0
router.ton.local = 10.10.100.1
storage.ton.local = 10.10.100.2
jump.ton.local = 10.10.100.19

Fysisk Maskine : Fedora 37 KDE Plasma
VM 1 : Router = CentOS 9 Stream
VM 2 : Storage = CentOS 9 Stream
VM 3 : Jump = CentOS 9 Stream
VM 4 : Gui = Fedora 37 Workstation

Se Part 1 her : https://tobiasnawaphol.dk/linux-router-jump-part-1/
Se Part 2 her : https://tobiasnawaphol.dk/linux-storage-fileserver-part-2/
Se Part 3 her : https://tobiasnawaphol.dk/linux-dns-opsaetning-part-3/
Se Part 4 her : https://tobiasnawaphol.dk/linux-database-webserver-part-4/

Links og kilder:

https://getfedora.org/
https://www.centos.org/download/
https://www.digitalocean.com/community/tutorials/how-to-create-raid-arrays-with-mdadm-on-ubuntu-16-04
https://www.thegeekdiary.com/chcon-command-examples-in-linux/
https://ss64.com/bash/chmod.html

Hent dette indlæg i en PDF fil:

Download her -> LINUX – @STORAGE, FILESERVER (PART 2)

Nyheder
Søg
Konto
0
Menu
×