Alle berichten door op Marc

Corona en thuiswerken

De corona pandemie zorgt er voor dat er veel meer mensen dan ooit tevoren vanaf thuis werken. Dat roept allerlei vragen op, hier gaan we in op de technische kant van de zaak. Hoe biedt je als werkgever thuiswerken aan en hoe zorg je ervoor dat je medewerkers hier mee overweg kunnen en vooral, hoe hou je het veilig.

Aanbieden van thuiswerken

Als je als werkgever kiest om je werknemers thuis te laten werken sta je voor een leuke uitdaging. Wat wil je aanbieden, in hoeverre zijn de programma’s waarvan je werknemers gebruik moeten gaan maken geschikt hiervoor, zijn ze bijv. web-based of zijn het zgn. client programma’s en zijn er consequenties voor eventuele licenties?

Web-based programma’s zijn het makkelijkst, hiervoor moet alleen de werknemer toegang krijgen tot het bedrijfsnetwerk en kan zo met een browser het programma gebruiken.

Client programma’s zijn programma’s die op de thuiswerk pc of notebook genstalleerd moeten zijn. Als die er niet op staan moeten deze geinstalleerd en geconfigureerd worden en dat vereist meer technische kennis en kan vaak niet vanaf thuis door de werknemer zelf worden uitgevoerd. Er zijn voor Windows wel mogelijkheden om als de werknemer ingelogd is op het bedrijfsnetwerk de installatie vanaf het netwerk automatisch uit te laten voeren maar daar kleven wel haken en ogen aan. Van de pc op kantoor zijn alle spec’s bekend, van de thuiswerk pc van de werknemer niet.Een ander mogelijk probleem is dat op de thuiswerk pc al bepaalde software gebruikt wordt die kan conflicteren met bedrijfssoftware.

Veiligheid

Een niet uit te oog verliezen aspect van thuiswerken betreft de veiligheid. Hoe zorg je ervoor dat je bedrijfsnetwerk alleen door geautoriseerde medewerkers gebruikt wordt en dat kwaadwillenden geen toegang krijgen. Een goede oplossing hiervoor is het gebruik maken van een zgn. VPN. Hiermee wordt een beveiligde ‘tunnel’ opgezet tussen het bedrijfsnetwerk en de thuiswerk pc van de werknemer. Een goedkope en veilige oplossing is de open-source software van OpenVPN. Hiermee kan een veilige verbinding worden opgezet naar het bedrijfsnetwerk vanaf een thuiswerk pc. De software is redelijk eenvoudig te installeren en voor de werknemer is het na een nmalige installatie eenvoudig te starten en te stoppen. Als werkgever kan je allerlei zaken configureren zoals bijv. de vraag of ‘gewoon’ internetverkeer via het bedrijfsnetwerk moet lopen of juist niet.

Als werkgever heb je uiteraard een goede internetverbinding nodig, een server die als OpenVPN server dienst doet en omdat OpenVPN onder linux kan draaien kan zonder problemen een wat oudere server gebruikt worden. Geen noodzaak om een of andere nieuwe dure supersnelle server in het rack te hangen. Het grootste deel wat gebeuren moet is afhankelijk van netwerkverkeer. Daar is geen bijzondere server voor nodig tenzij je 100-en verbindingen tegelijk verwacht. Maar de ervaring leert dat als een bedrijf die grootte heeft er vaak al een thuiswerk-oplossing beschikbaar is.

USB stick

Om allerlei risico’s uit te sluiten en oa. een browser ter beschikking te stellen aan de werknemer kan ook gekozen worden voor een nog veiligere oplossing. De werknemer krijgt een USB stick waar hij zijn thuiswerk pc mee opstart. Groot voordeel is dat er geen gevaar is van besmetting van het bedrijfsnetwerk door de werknemer achter zijn thuiswerk pc. De software op zijn pc wordt immers niet gebruikt. Alles wat hij nodig heeft, incl. de OpenVPN software en configuratie staat op de USB stick. Als de USB stick in partities wordt verdeeld kunnen persoonlijke instellingen op een klein schrijfbaar deel van de USB stick worden opgeslagen maar andere delen van de USB stick kunnen op alleen-lezen (read-only) worden gezet. Hierdoor wordt manipulatie of besmetting door bijv. malware tegengegaan.

Help

Mocht je als werkgever over dit onderwerp nog vragen hebben, een concreet idee willen uitwerken of z.s.m. veilig thuiswerken aan willen bieden, schroom niet en neem geheel vrijblijvend contact op.

 

 

Red Hat techday, hands-on lab Ansible tower

Ansible

Na de recente release van Red Hat 8 en de bijbehorende TechTalk waarover ik al eerder schreef, was het gisteren een volle dag Red Hat Techday op een schitterende locatie in Maarssen.

De keynotes waren van Eric Schabell, een amerikaan die open source als de sleutel tot je succes verklaarde door van “you” via “sharing” naar “grow” te gaan. Geen technisch verhaal maar meer een inspirator. Tip: Hij is o.a. op twitter te volgen via @ericschabell

De tweede spreker is ook een bekende Maxim Burgerhout en kwam met een voor mij deels bekend verhaal, hij had delen geleend van zijn spreekbeurt over wat-is-er-nieuw in RedHat 8.

Hands-on lab

Hoe interessant de sprekers ook waren, als techneut was ik gegaan voor ’t hands-on lab over Ansible Tower. Ansible is een automation tool waarmee je niet, net zoals met bijv. Puppet, configuraties kan distribueren maar nog wat meer. De ‘standaard’ versie is niet voorzien van een GUI en dus kwam er Ansible Tower. In het (te) korte hands-on lab kreeg je de mogelijkheid om met Anible Tower (web-gui) te spelen

In n van de oefeningen kreeg je de opdracht om een web-app te deployen in Azure. Als je ’t bij Linux als OS hield had je 4 vm’s nodig: een loadbalancer, twee webservers en een database server. Ansible Tower kent een grafische flowchart waarin je heerlijk componenten (templates) bij elkaar kan klikken en afhankelijk (of onafhankelijk indien je dat wil) kan deployen. Alles hangt aan elkaar dus je moet wel opletten dat bijv. de template die de database wil uitrollen op de databaseserver niet alleen gekoppeld is aan de databaseserver (hoe logisch dat dat ook klinkt, het gebeurd je de eerste keer) en dat de rechten (permissions) goed geregeld zijn.

Ik ben de volle twee uur bezig geweest om een werkende webapp op te leveren, iets wat als je er meer ervaren mee hebt in een kwartiertje gedaan hebt. Dus ja, ik heb er aardig wat van opgestoken.

Het volgende event? Het Red Hat forum op 9 october.

 

Ransomware enzo

no more ranson

Je kan niet altijd je omgeving beschermen tegen ransomware en de gevolgen van op slot gezette bestanden door kwaadwillenden is nu nmaal iets wat helaas (te vaak) gebeurd. Gelukkig stelt elk zichzelf respecterend anti-virus bedrijf tegenwoordig gratis unlock ofwel decryptie-tools online maar er is n aardig initiatief van alweer een tijdje geleden wat de aandacht mag hebben: https://www.nomoreransom.org/nl/index.html

No more ransom is een samenwerking van oa. Europol, de Politie Nederland en Europol zo is te lezen op partnerpagina.

Je treft op die pagina een overzicht aan van ransomware en de beschikbare tools om weer bij je bestanden te kunnen. Let wel op de ‘handleiding’ want het decrypten moet vaak wel in een bepaalde volgorde gebeuren.

De franse overheid heeft speciaal voor PyLocky ransomware (ook in het engels), te vinden op https://www.cybermalveillance.gouv.fr/nos-articles/outil-dechiffrement-rancongiciel-ransomware-pylocky-v1-2/

 

Wat is er nieuw in Red Hat 8

rhel8

Op 9 mei 2019 lanceerde Red Hat versie 8, hier een samenvatting van de meest opvallende nieuwe of veranderde zaken in deze veel gebruikte linux distributie. Dat er een nieuwe Gnome desktop wordt geleverd en een nieuwe kernel 3.x spreekt eigenlijk vanzelf. Een paar dingen die mij opgevallen zijn tijdens de Red Hat tech talk staan hier.

Verandering in de repo structuur

Wie iets met Red Hat Satellite doet had het al gemerkt, de software-collections zoals we die kende zijn vervangen door iets wat appstreams heet. Het idee is om apps in deze appstreams onafhankelijker van de updates in de base te kunnen doen. Daarnaast krijg je hetzelfde mechanische als voor de Java omgeving. Met alternative kun je een actieve versie van een geinstalleerde app gebruiken die dan ook, net zoals bij Java, op een plek staat waar je ‘m zou verwachten. Dat maakt het gebruik van diverse (dev)tools een stuk makkelijker, zegt Red Hat.

Je installeert deze apps niet met yum install <appname> maar met yum module install <appname>. Er is ook een nieuwe parameter aan yum toegevoegd: module. Naast de al genoemde yum module install heb je ook een yum module list om een lijst te krijgen met de beschikbare apps en versies.

Geen verandering: yum

Misschien vreemd om te noemen maar Red Hat 8 is gebaseerd op Fedora 28 waarin dnf als standaard package manager wordt gebruikt. In Red Hat 8 is men yum blijven gebruiken en is ge-upgrade naar versie 4 wat nu niet meer op python v2.x maar op python v3.x is gebaseerd en ‘dus’ sneller zou moeten zijn.

Ook niet geheel nieuw: VDO

In Red Hat 7.x al stilletjes toegevoegd, het VDO filesysteem. Een VDO filesysteem kent compresse en de-dup waardoor een flinke ruimtewinst geboekt kan worden. Het is op device mapper nivo en presteert redelijk goed. Om op een VDO filesysteem files neer te zetten die veel en vaak worden opgevraagd of gewijzigd is dit uiteraard minder geschikt.

Cockpit heet nu Web Console

In Red Hat 7.x was cockpit al beschikbaar maar werd niet standaard geinstalleerd. Nu wel, op port 9090 (standaard) wordt een webinterface aangeboden waarin je veel systeemzaken kunt zien maar ook kunt configureren. Deze lijst wordt steeds langer en omvat oa.: netwerk-management (ook dingen als bonding enz.), filesysteem-management (lvm, nfs, vdo enz) en selinux zaken. Ook zit er in Web Console die overigens nog steeds cockpit heet op het inlogscherm, ook een terminal. Kortom, het begint steeds meer en meer een interessante manier te worden. LinuxPro gebruikt cockpit middels een nginx proxy waarvan we binnenkort de configuratie zullen plaatsen.

Security

Uiteraard zitten ze ook bij Red Hat niet stil als het om security gaat. Zo is er een tool waarmee system-wide bepaalde standaard kunnen worden geconfigureerd (crypto-setup) en is LUKS ge-upgrade naar versie 2. Op kernel nivo zijn PIE en RELRO geintroduceerd die een veel gebruikte manier van exploits, buffer overflow, moeten tegengaan daar het onverspelbaar te maken waar wat in geheugen draait.

Netwerk

In de netwerk-stack zijn dingen aangepast waardoor oa. aan crypto offloading gedaan kan worden, congestie in het netwerk gedetecteerd kan worden en automatische optimalisatie gedaan wordt. Ook in bonding omgevingen kunnen veel gemaakte fouten makkelijker worden herkend en opgelost.

Docker

Docker is niet meer ‘hip’, containerisatie wel. In plaats van docker, met een volgens Red Hat onwerkbaar licentie model is nu een drop-in replacement in de vorm van podman, buildah en skopeo gekomen.

 

 

 

 

 

 

SPF, wat is het en waarom gebruiken

Wat is SPF

SPF heeft iets met maken met email en het bestrijden van spam. De afkorting staat voor Sender Policy Framework, dat is leuk maar wat doet het? SPF kent twee kanten:

  • De DNS van een domein krijgt een TXT record waarin staat welke servers er voor het domein email mogen versturen.
  • De SMTP server controleert of een binnenkomende email af komt van een server die voor dat domein email mag versturen.

Waarom SPF gebruiken

Dat is vrij eenvoudig, het zorgt er voor dat email die binnenkomt gecontroleerd wordt of deze afkomstig is van smtp servers die voor een bepaald domein geautoriseerd zijn om email te verzenden. Hiermee kan vrij eenvoudig een deel van spam en phising worden geblokkeerd. In veel gevallen komt deze kwaadaardige email af van smtp servers die niet geautoriseerd zijn om die email te versturen. Een andere reden om SPF te gebruiken is dat de configuratie niet lastig is en het door veel grote emailaanbieders zoals Google ook gebruikt wordt.

SPF gebruiken

Zoals al aangeven bestaat het gebruik van SPF uit twee delen: de configuratie van de DNS en de SMTP server.

DNS configuratie

In de DNS moet een (extra) TXT record worden opgenomen waarin de emailservers voor dat domein staan aangeven. Zo’n TXT record kan er als volgt uit zien:

v=spf1 mx include:mail.example.com ip4:1.2.3.4 ip6:2a01:4f8:aaa:1355:2 -all

Uitleg:

v=spf1betreft een SPF versie 1 configuratie
mxalle mailservers die als MX in de DNS voor dit domein staan mogen hiervoor email versturen
includenaast de in de DNS staande servers met een MX records mag ook de server mail.example.com, een server met ip-adres 1.2.3.4 en met het ipv6 address 2a01:4f8:aaa:1355:2 mail voor dit domein versturen.
-allalle mail van andere servers is niet geauthoriseerd om email te versturen voor dit domein.

Opmerking: In plaats van -all (weiger email van een domain als de betreffende SMTP server niet geauthoriseerd is kan ook een ~all worden gebruikt, email wordt dan wel geaccepteerd maar kan als SPAM worden gemarkeerd. Ook kan de optie +all worden gebruikt, dan wordt de controle wel gedaan maar volgt er altijd een pass uit en wordt de email geaccepteerd.

Je kan met dig txt linuxpro.nl ons TXT record opvragen, je krijgt dat iets te zien als:

linuxpro.nl. 13372 IN TXT "v=spf1 mx -all"

In ons geval hebben we dus geen extra servers maar alleen de mailservers die in de MX-records staan mogen email versturen voor linuxpro.nl

SMTP server configuratie

We gaan hier uit van een werkende postfix configuratie waar we SPF willen implementeren op een Red Hat of daarmee vergelijkbare distro.

De eerste stap is de installatie van pypolicyd-spf, de is beschikbaar is de veelgebruikte epel repository en die moet dan ook aanwezig en enabled zijn.

Na de installatie moet de postfix configuratie op twee plaatsen worden aangepast, in de master.cf moet worden opgenomen:

policy unix - n n - - spawn user=nobody argv=/usr/libexec/postfix/policyd-spf

En in de main.cf komt onder smtpd_recipient_restrictions voor de laatste regel (waar permit zou moeten staan) de volgende regel:

check_policy_service unix:private/policy,

Herstart hierna postfix en controleer de logfile, je komt dan, als alles goed gaat, oa. de volgende logregels tegen:

policyd-spf[7663]: Pass; identity=mailfrom; client-ip=34.208.113.12;......
policyd-spf[3479]: None; identity=helo; client-ip=183.164.91.100; helo=mtpmc.com...
policyd-spf[3954]: Fail; identity=helo; client-ip=95.213.207.110; helo=....