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)

Linux – @Router, Jump (Part 1)

Opsætning af Linux miljø med Router, Jump, Storage og GUI.

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

 

$ dnf install nano -y

$ nano /etc/selinux/config

Se status for de nye ændringer ved at indtaste ”sestatus”,
man kan også benytte sig af ”
grep” indtast følgende : sestatus | grep “Current mode”

Tilføj en bruger på routeren ved at gøre følgende :

I dette tilfælde er brugeren ”pingu” indtast nedenstående :

$ useradd pingu


Ændre adgangskode på den nye bruger :

$ sudo passwd pingu


Kommer den med en besked :
bad password: the password fails the dictionary check – it is based on a dictionary word
Kan dette ignores, blot fortsæt og bekræft din nye adgangskode.


Ellers ændre indstilliner her:

$ nano /etc/pam.d/system-auth

Udkommentere:
password requisite
pam_pwquality.so try_first_pass local_users_only retry=3 authtok_type=


Slet:

use_authtok

password sufficient pam_unix.so sha512 shadow nullok try_first_pass use_authtok

For at tilføje pingu til sudo gruppen :

$ sudo usermod aG whell pingu

For at tjekke hvilken gruppe brugeren er tildelt :

$ groups pingu

$ id username

 

Se også i nano /etc/sudoers

Indsæt en statisk IP på LAN :

Dette kan gøres ved at indtaste følgende nmcli kommando

$ nmcli con mod enp2s0 ipv4.addresses 10.10.100.1/24

$ nmcli con mod enp2s0 ipv4.method manual

kommandoen ”nmtui” kan også bruges eller bekræfte om det er gjort korrekt.

Vi skal flytte interface over I internal zonen, herefter sletter vi services.

$ firewall-cmd —change-interface=enp2s0 –zone=internal



Nu ses enp2s0 I interfaces, nu skal services slettes :

 

Er man tilfreds med opsætningen, indtastes de samme kommandoer blot med –permanent ellers gemmes indstillingerne ikke efter en genstart af klienten altså din router.

$ firewall-cmd —change-interface=enp2s0 –zone=internal –permanent

$ firewall-cmd –remove-service={cockpit,dhcpv6-client,mdns,samba-client,ssh} –zone=internal —permanent

Opret filen /etc/sysctl.d/ipforward.conf og rediger den.

Tilføj linien net.ipv4.ip_forward=1 i filen.

Brug kommandoen sysctl til at indlæse din fil med.

$ touch ipforward.conf 

$ cysctl -p /etc/sysctl.d/ipforward.conf

$ firewall-cmd –get-zones

Sådan tilføjer man en ny firewall zone og service :

$ firewall-cmd —new-zone=access_jump —permanent
$ firewall-cmd –zone=access_jump –add-service=ssh
$ firewall-cmd –list-all –zone=access_jump
$ firewall-cmd —add-source=10.10.100.19 –zone=access_jump —permanent
$ firewall-cmd –reload

$ cd /etc/dnsmasq.d/

I original filen, skal bind-interfaces udkommenteres.

Indtast følgende kommando:

$ nano /etc/dnsmasq.conf

opret din egen conf fil, kaldt dnsmasq.conf

$ touch dnsmasq.conf

$ nano /etc/dnsmasq.d/dnsmasq.conf

Ved access_jump og internal skulle dhcp og dns være aktiv nu.

$ systemctl restart dnsmasq

$ systemctl enable dnsmasq

$ systemctl status dnsmasq.service 

$ reboot

Vi skal tillade services i vores firewall før vi kan få DHCP til at fungere i zone internal og access_jump

$ firewall-cmd –add-service=dns –zone=internal –permanent
$ firewall-cmd –add-service=dhcp –zone=internal –permanent
$ firewall-cmd –add-service=dns –zone=access_jump –permanent
$ firewall-cmd –add-service=dhcp –zone=access_jump –permanent
$ firewall-cmd –reload

herefter skulle Jump klienten få 10.10.100.19 og ssh ind på 10.10.100.1

Opsætning for sshd :

$ nano /etc/ssh/sshd_config

PermitRootLogin no

AllowUsers pingu

$ systemctl restart sshd.service

$ systemctl reload sshd.service

$ firewall-cmd --permanent --new-policy=lan2wan

$ firewall-cmd --permanent --policy=lan2wan --add-ingress-zone=internal

$ firewall-cmd --permanent --policy=lan2wan --add-egress-zone=external

$ firewall-cmd --permanent --policy=lan2wan --set-priority 100

$ firewall-cmd --permanent --policy=lan2wan --set-target=ACCEPT

$ firewall-cmd --reload

Husk og reload, så ændringerne ses I config.

$ firewall-cmd --list-all --policy=lan2wan

Flytter WAN over I external og fjerner ssh I zonen.

$ firewall-cmd –change-interface=enp1s0 –zone=external –permanent

$ firewall-cmd –list-all –zone=external

$ firewall-cmd –remove-service=ssh –zone=external –permanent

Husk og reload, så ændringerne ses I config.

$ firewall-cmd --reload

Portforwarded
port 22 til Jump maskinen, så trafikken bliver videresendt til Jump
når vi tilgår Router ekstern.

$ firewall-cmd --permanent -add-forward-port=port=22:proto=tcp:toport=22:toaddr=10.10.100.19 -zone=external

slet fingerprint på følgende sti :

$ nano ~/.ssh/known_hosts

Prøv og ssh igen, herefter spørger den om nyt fingerprint.

Vi logger ind med root fra den fytiske maskine til routeren, men bliver videresendt til Jump.
Herefter kan vi logge ind med pingu, da Jump er tilladt til at logge ind med pingu intern.

 

 

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 ->

Nyheder
Søg
Konto
0
Menu
×