Basis Linux

Hier staan o.a. een aantal commando’s die je nodig hebt als je Linux gaat gebruiken.

Mappen sctructuur

/ root
/bin
hier staan de belangrijkste programma’s binaries
/boot bestanden die nodig zijn om op te starten
/dev allemaal type apparaten (devices) die gemount kunnen worden
/etc configuratie directory
/home waar een gebruiker zijn eigen mappen heeft (documenten etc)
/lib libraries nodig om sommige programma’s te laten draaien
/mnt meest voorkomende plek om uw apparaat te mounten
/opt Optional Packages, handige plek om uw eigen scripts neer te zetten
/proc bevat systeem en proces informatie
/root homedirectory van de root gebruiker
/sbin system administration binaries, deze zijn speciaal voor de administrators
/tmp tijdelijke bestanden
/usr hier worden dingen opgeslagen die speciaal voor gebruikers zijn
/var var is een directory waarin iedereen kan scrijven. hier in worden b.v. log files neergezet (/var/log)

Commando’s

history Dit commando laat zien wat voor commando’s de laatste tijd zijn gebruikt
apt apt wordt gebruikt om programa’s te installeren, verwijderen, herstellen en updaten

 

apt install <naam> installeren van een pakket
apt remove <naam> verwijderen van een pakker
apt update haalt alle updates binnen
apt upgrade upgrade alles
cd Change Directory of terwijl het aanpassen van je huidige locatie.

 

cd .. 1 stapje hoger
cd / helemaal naar het begin gaan
cd /opt je gaat nu naar de opt directoy die zich in de root bevind
cd ~ naar je homedirectory gaan
ls List Directory (voor dir Windows gebruiker) deze laat de bestanden en mappen zien

 

ls laat standaard de mappen en bestanden zien
ls -al laat alles zien, dus ook de verborgen mappen en bestanden
mount mount wordt gebruikt om toegang te krijg tot b.v. de USB stick
maak eerst een directory aan, waarnaar toe je USB gemount moet worden.

 

mkdir /mnt/usb
mount /dev/sda1 /mnt/usb

de directory /mnt/sda1 is gekoppeld aan de USB-stick
umount /mnt/usb is het veilig ontkoppelen van de USB-stick

cat Met behulp van cat kun je makkelijk de inhoud van een bestand bekijken.

 

cat <bestandsnaam> laat de inhoud van een bestand zien
cat <bestandsnaam> | tail laat het laatse gedeelte zien van een bestand
cat <bestandsnaam> | grep “up” laat de regel zien in het bestand die het woord up bevat
man man staat voor manual en geeft je uitleg over een commando.
bijvoorbeeld:

 

man cat
man mount

df Disk groote:
df -h
ncdu ncdu is een soort van treesize en deze laat zien hoeveel je in gebruik hebt.
apt install ncdu
ncdu / (dit scant de hele disk)
ln Je maakt met het onderstaande een koppeling.
De directory /etc/test verwijst naar /opt/dir
ln -sfn /opt/dir /etc/test
tcpdump List alle TCP verkeer
tcpdump -Z root
whereis Zoekt de locatie van een bestand.
tcpdump -Z root
du List grote directories
du -xh / | grep -P “G\t”
find Zoek een bestand
find / -name bestandnaam

curl https://ipinfo.io/ip = external ip

Handige nog te installeren applicaties

wgetop bestanden van websites

apt install wget
locateDit moet nog wel installeerd worden, maar hiermee kun je erg snel bestanden/mappen vinden. Dit omdat je niet op het filesysteem zoekt, maar in de database die hij aanmaakt. “updatedb” moet je na installatie draaien om de database up-to-date te maken.

apt install locate
updatedb
locate <bestand>
gitOm GitHub bestanden te downloaden

apt install git
LinEnumVerzameld alle informatie van de Linux installatie.

cd \opt
git clone https://github.com/rebootuser/LinEnum.git
 htopduidelijk overzicht van alle actieve processen. 

apt install htop
 nanotekst verwerker, vaak staat vi er al op (ook een tekstverwerker), maar vind nano iets fijner. 

apt install nano

Raspberry Pi 2

Overzicht

Ik heb zelf een een Raspberry pi 2 (voor de rest moemen wij hem PI), deze heb ik momenteel ingezet als middelpunt van mijn netwerk.

Hij  verzorgt namelijk op dit moment voor het volgende:

  1. DHCP: al mijn clients (ipad/telefoons/laptops/televisies etc) krijgen een uniek ip-adres van hem.
  2. DNS:  hierdoor vinden wij websites op basis van hun naam i.p.v. hun ip-adres
  3. Pi-Hole: deze zorgt er voor dat je niet bij alle adressen kunt op basis van hun DNS naam. Dit heb ik gedaan, zodat mijn apparaten minder snel op sites kunnen komen die niet te vertrouwen zijn (phishing, malware virussen etc).
  4. RPI-Monitor: deze houdt de gezondheid van mijn raspbian een bij en zou eventueel mij kunnen alerten (niet niet geactiveerd)
  5. VNC: omdat ik de volledige versie van raspbian heb geinstalleerd, dus ook met GUI, maar ik heb geen monitor aangesloten kan VNC soms handig zijn om hem over te nemen. Is standaard geinstalleerd.
  6. SSH: dit heb ik niet geinstalleerd, maar moest geactiveerd worden. Hierdoor kan ik gemakkelijk vanaf mijn werkplek de PI beheren.
  7. OpenVPN: doormiddel van deze VPN kan ik overal ter wereld inloggen op mijn eigen netwerk.

Er zijn een aantal handige verbinding mogelijkheden die je nodig hebt. Het is wel van belang dat de PI een vast ip adres heeft, want uiteindelijk staat deze machine geconfigureerd op alle clients en dan kan het adres niet veranderen, daarnaast is het voor het beheer wel makkelijk, want je weet exact welk adres je moet hebben.

Handige website achteraf: 

Afhankelijk van het adres jij je de PI gaat geven!

http://192.168.0.9/admin   webinterface van IP-Hole

http://192.168.0.9:8888     monitoring site van de pi

Raspbian 

Installeer eerst Raspbian volledig. Ik heb deze image bepakt, maar dat is misschien niet eens nodig: Raspbian Stretch with desktop and recommended software

Dit is een .img bestand en deze heb ik met mijn Windows 10 pc op een SD kaartje gezet m.b.v. Win32 DiskImager er zullen zeker andere programma’s voor zijn die dit ook kunnen.

De installaties niet erg ingewikkeld en is zo gedaan. Het is wel van belang, deze zo snel mogelijk een vast adres te geven. Het is voor je zelf wel handig om de ip-adressen logisch te zetten. Voor beeld mij mij thuis. DHCP, dus vrije ui te geven adressen beginnen vanaf *.20

  • router1 = 192.168.0.1
  • router2 = 192.168.0.2
  • router3 = 192.168.0.3
  • pi = 192.168.0.9

Op deze manier kan ik ze altijd bereiken.

PI-Hole

Pi-hole is een stuk software die mijn internet browsen verkeer iets veiliger maakt. De installatie hier van is ook al niet al te ingewikkeld.

PI-Hole installeren is eigenlijk extreem simpel:

via SSH of via de console van de PI.

sudo -i geeft je op dat moment alle rechten

sudo -i

curl -sSL https://install.pi-hole.net | bash

Ga na de installatie naar ‘Settings \ DNS \ Vink aan ´Use DNSSEC’ 

DHCP, als de PI ook DHCP server moet gaan worden, ga dan naar ´Settings \ DHCP’

Vink aan DHCP Server enabled 

From: 192.168.0.20

To: 192.168.0.251

Router: 192.168.0.1

Voor de rest heb ik het tot nu toe standaard gelaten

 Het tabblad Blocklist is een leuke, want hier kun je lijsten opgegeven met alles wat geblokkeerd moet worden.

Standaard staat er al een aantal in, maar ik heb hem niet aangevuld (op dit moment worden 973614 domeinen geblokkeerd)

Je gaat naar deze site https://blocklist.site/app/ en je vinkt aan welke categorieen je wilt blokkeren  en dan komt er boven in de site een listje te staan, zoals:

https://blocklist.site/app/dl/crypto

https://blocklist.site/app/dl/fraud

https://blocklist.site/app/dl/fakenews

Deze lijst kopieer en plak je in de Blocklist.

Kik daarna op save en update (dit kan tijdje duren, omdat hij alle sites moet inlezen).

https://docs.pi-hole.net/ftldns/configfile
Houdt geschiedenis van 90 dagen bij (standaard is 365)

nano /etc/pihole/pihole-FTL.conf
MAXDBDAYS=90

RPI-Monitor

Dit is geen verplichting, maar handig en leuk als je het hebt. Hiermee kun je controleren of alles nog goed draait en eventueel alarm laten genereren. Ik heb hem services laten checken, maar toen ging de CPU redelijk omhoog. Of een config foutje of hij heeft het er nogal druk mee. Deze check hem ik uitgezet, de standaard checks heb ik er gewoon ingelaten.

apt-get install dirmngr
apt-key adv –recv-keys –keyserver keyserver.ubuntu.com 2C0D3C0F

wget http://goo.gl/vewCLL -O /etc/apt/sources.list.d/rpimonitor.list

sudo apt-get update
sudo apt-get install rpimonitor

sudo /etc/init.d/rpimonitor update

OpenVPN

Het instellen en configureren is niet erg lastig. Het is van belang dat je weet wat je ip-adres aan de buiten kant is en koppel deze aan een handige DNS naam, als je een eigen domein hebt.

Deze site beschrijft exact hoe je OpenVPN moet installeren: raspberrytips.nl

sudo -i 

curl -L http://install.pivpn.io | bash

als de installatie klaar is, dan moet je een client config aanmaken. En ik zou hiervoor een moeilijk wachtwoord verzinnen en deze goed bewaren, want deze heb je eigenlijk alleen maar nodig met het inladen van de ovpn bestand op je telefoon.

sudo pivpn add

dit maakt een ovpn bestand aan in /home/pi/ovpns

Zorg dat je dit bestand en wachtwoord goed bewaard, want dit is de toegang tot je netwerk.

Afhankelijk wat je tijdens de installatie hebt gekozen moet je een port-forwarder aanmaken op je router. Dus je stelt op je router in dat poort 443 op 192.169.0.9 terecht komt. 

Handige linux commando’s

# alle rechten krijgen binnen de SSH sessie

sudo -i 

# updaten

apt-get update

apt-get upgrade

# update pi-hole

pihole -up

Webhosting

Webhosting lijkt allemaal zo duur maar dat hoeft helemaal niet. Deze site kan bijna niet goedkoper draaien.

Provider: Vimexx

Daar heb ik het goedkoopste abonnement € 0,45 per maand. (opslag, snelheid en 25gb datalimiet). Maar dit is om te beginnen meer dan zat, maar heb je al een site die goed loopt kijk dan wel even goed naar alle limieten !

Een domeinnaam is €0,89 per jaar, daarnaast kun je gebruik maken van gratis certificaten. Vinmexx tools helpen je hiermee, dit is bijna te simpel om uit te leggen.

Daarnaast kun je simpel gebruik maken van een aantal voor geconfigureerde site b.v. Joomla en WordPress.

Stel dat ik deze configuratie zo 5 jaar ga houden en de prijzen veranderen niet, dan ben ik het volgende kwijt.

Hosting: €0,45 x 12 maanden x 5 jaar = € 27,-

Domeinnaam: €0,89 x 5 jaar = € 4,45

Dus voor € 31,45 zit je de komende 5 jaar goed.

Ik had een vraag aan de servicedesk maar deze werd ook snel en goed beantwoord.

Handige programma’s

Dit zijn allemaal handige tools

Notepad++ (tekstverwerker)

Putty (SSH en telnet client)

Winscp (grafisch ftp client)

Process Monitor (troubleshooten van programma’s/processen)

NiceSites

Nieuws:
https://www.tweakers.net

Youtube op computer gebied:
fraudehelpdesk (vertrouw je een mailtje of een telefoontje niet. kijk dan even op deze site. Ook hier kun je aangifte doen van b.v. Phishing)
computerphile

Youtube electronica:
julian ilett
learnelectronics
great scott lab
great scott electronics basics
big clive

Hacksite:
https://www.hackthebox.eu (test wat je allemaal kunt doen)
https://cirt.net (standaard wachtwoorden)
http://shodan.io (zoekmachine voor standaard IoT apparaten)
https://hack-yourself-first.com (zoek de 50 security foutjes)

Formule1:
https://www.gpupdate.net
https://www.formule1.nl/wk-kalender

Leuke sites:
https://www.insecam.org (camera’s wereldwijd)

Tools
https://pixlr.com/nl/x (‘gratis’ foto bewerking)