Bygg din egen e-postserver med FreeBSD 11

Å kjøre din egen e-postserver kan være ganske givende. Du er ansvarlig for dataene dine. Det gir deg også mer fleksibilitet med leveringsalternativene dine. Det er imidlertid noen utfordringer. Du risikerer å åpne serveren din for sårbarheter, i tillegg til å gjøre serveren din til et potensielt relé for spammere å bruke.

Med det ute av veien, la oss fortsette å kjøre vår egen e-postserver.

Oversikt

Det er tre nødvendige stykker programvare å installere som ikke er inkludert i FreeBSD-basesystemet:

  • OpenSMTPd
  • Dueslag
  • spamd

OpenSMTPd er en postoverføringsagent (MTA) og postleveringsagent (MDA). Det betyr at den kan kommunisere med andre postservere over SMTPprotokollen, og den håndterer også levering av post til de enkelte brukernes postbokser. Vi vil sette opp OpenSMTPd slik at den kan kommunisere til eksterne servere (filtrert gjennom spamd) og levere e-post til lokale brukere, samt levere lokal e-post fra bruker til bruker.

Dovecot er en MDA som leser lokale postbokser og serverer dem over IMAP eller POP3 til brukerne. Den vil bruke de lokale brukernes postbokser for å vise dette innholdet.

Spamd er en e-postfiltreringstjeneste. Vi kan videresende e-post via spamd, og det vil filtrere e-post basert på en rekke svartelister, hvitelister og en gråliste.

Den generelle ideen for denne e-postserveren krever noen forskjellige baner:

Outside world -> Firewall -> spamd -> OpenSMTPD -> User mail boxes
Outside world -> Firewall (spamd-whitelist) -> OpenSMTPD -> User mailboxes
Outside world -> Firewall (IMAP/POP3) -> Dovecot
Outside world -> Firewall (SMTPD submission)

For denne opplæringen vil vi bruke FreeBSD-versjonen av OpenBSDs PF for brannmuren vår. Du kan også bruke ipfw, der konfigurasjonen er veldig lik.

Merk: Vultr blokkerer som standard port 25, som brukes av SMTP-servere overalt. Hvis du vil kjøre en fullt funksjonell e-postserver, må du få den porten åpnet.

Førstegangs oppsett

Først må vi installere de nødvendige programmene.

Forutsatt at du kjører som en bruker med sudo-tilgang satt opp, kan vi kjøre følgende kommandoer. De vil variere avhengig av om du bruker porter eller pakker.

Pakker (anbefalt)

Med mindre du trenger spesifikk funksjonalitet innebygd i disse verktøyene, anbefales det å installere via pakker. Det er enklere, tar mindre servertid og ressurser, og gir et intuitivt, brukervennlig grensesnitt.

sudo pkg install opensmtpd dovecot spamd

Følgende makekommandoer vil gi deg mange kompileringsalternativer, standardinnstillingene vil fungere fint. Ikke endre disse med mindre du vet nøyaktig hva du gjør.

sudo portsnap fetch update   # or run portsnap fetch extract if using ports for the first time
cd /usr/ports/mail/opensmtpd  
make install  # Installs openSMTPd
make clean
cd /usr/ports/mail/dovecot
make install  # Installs dovecot
make clean
cd /usr/ports/mail/spamd
make install  # Installs spamd
make clean

Vi må legge til følgende linjer til /etc/rc.conf:

pf_enable="YES"
pf_rules="/usr/local/etc/pf.conf"
pflog_enable="YES"
pflog_logfile="/var/log/pflog"

obspamd_enable="YES"
obspamd_flags="-v"
obspamlogd_enable="YES"

dovecot_enable="YES"

Brannmuroppsett

For å konfigurere PF kan vi lage vår /usr/local/etc/pf.conf:

## Set public interface ##
ext_if="vtnet0"

## set and drop IP ranges on the public interface ##
martians = "{ 127.0.0.0/8, 192.168.0.0/16, 172.16.0.0/12, \
          10.0.0.0/8, 169.254.0.0/16, 192.0.2.0/24, \
          0.0.0.0/8, 240.0.0.0/4 }"

table <spamd> persist
table <spamd-white> persist

# Whitelisted webmail services
table <webmail> persist file "/usr/local/etc/pf.webmail.ip.conf"

## Skip loop back interface - Skip all PF processing on interface ##
set skip on lo

## Sets the interface for which PF should gather statistics such as bytes in/out and packets passed/blocked ##
set loginterface $ext_if

# Deal with attacks based on incorrect handling of packet fragments 
scrub in all


# Pass spamd whitelist
pass quick log on $ext_if inet proto tcp from <spamd-white> to $ext_if port smtp \
    -> 127.0.0.1 port 25
# Pass webmail servers
rdr pass quick log on $ext_if inet proto tcp from <gmail> to $ext_if port smtp \
    -> 127.0.0.1 port 25
# pass submission messages.
pass quick log on $ext_if inet proto tcp from any to $ext_if port submission modulate state
# Pass unknown mail to spamd
rdr pass log on $ext_if inet proto tcp from {!<spamd-white> <spamd>} to $ext_if port smtp \
    -> 127.0.0.1 port 8025 

## Blocking spoofed packets
antispoof quick for $ext_if

## Set default policy ##
block return in log all
block out all

# Drop all Non-Routable Addresses 
block drop in quick on $ext_if from $martians to any
block drop out quick on $ext_if from any to $martians

pass in inet proto tcp to $ext_if port ssh

# Allow Ping-Pong stuff. Be a good sysadmin 
pass inet proto icmp icmp-type echoreq

# Open up imap/pop3 support
pass quick on $ext_if proto tcp from any to any port {imap, imaps, pop3, pop3s} modulate state


# Allow outgoing traffic
pass out on $ext_if proto tcp from any to any modulate state
pass out on $ext_if proto udp from any to any keep state

Dette er en fungerende PF-konfigurasjon. Det er relativt enkelt, men det er noen særheter som også skal forklares.

For det første definerer vi $ext_ifvariabelen vår som vtnet0enheten vår skal bruke senere. Vi definerer også ugyldige IP-adresser som skal slippes på det eksterne grensesnittet.

Vi definerer også to tabeller, spamdog spamd-white- disse to tabellene er opprettet av spamd i standardkonfigurasjonen. I tillegg definerer vi en tabell med navn webmailsom vi vil bruke for å la noen store nettpostleverandører gå gjennom.

For å vise en tabell kan du bruke kommandoen pfctl -t tablename -T showtil å liste elementene i en tabell.

Vi setter noen PF-regler: hopp over behandling på det lokale grensesnittet, aktiver statistikk på det eksterne grensesnittet og skrubb innkommende pakker.

Neste er en av de viktigere delene, der vi klarer å sende trafikken vår til spamd eller OpenSMTPd.

Først ut er en omdirigeringsregel (merk syntaksen her, FreeBSD 11 bruker den eldre stilen PF-syntaks (pre-OpenBSD 4.6) så syntaksen kan virke rar. Hvis vi mottar noe på smtp fra en vert oppført i spamdtabellen eller ikke oppført i den spamd-whitetabellen, omdirigere vi forbindelsen gjennom til spamd daemon, som tar for seg disse tilkoblingene. de neste tre reglene er gjennomgangs reglene slik at vi faktisk kan motta e-post. Vi passerer gjennom meldinger fra IP-adresser som er oppført i spamd-whiteog webmailtabeller rett gjennom til OpenSMTPd. Vi godtar også meldinger på innsendingsporten ( 587).

Deretter er det noen få rengjøringsregler for å angi standardpolicyen vår og akseptere SSH- og ICMP-meldinger.

Vi sender deretter IMAP og POP3 på vårt eksterne grensesnitt for å få tilgang til Dovecot.

Til slutt tillater vi all utgående trafikk. Hvis du ville legge til ekstra sikkerhet, kunne du begrense portene du passerer, men for en engangsserver er det ikke noe problem å sende alt.

Start PF:

sudo service pf start

Nå som vi har brannmuroppsettet vårt, kan vi gå videre til e-postserverkonfigurasjonen.

OpenSMTPd

OpenSMTPd har en veldig enkel og lettlest konfigurasjonssyntaks. En hel arbeidskonfigurasjon kan passe inn i 14 linjer, som du kan se nedenfor:

#This is the smtpd server system-wide configuration file.
# See smtpd.conf(5) for more information.

ext_if=vtnet0

# If you edit the file, you have to run "smtpctl update table aliases"
table aliases   file:/etc/mail/aliases
table domains   file:/etc/mail/domains

# Keys
pki mail.example.com key "/usr/local/etc/letsencrypt/live/mail.example.com/privkey.pem"
pki mail.example.com certificate "/usr/local/etc/letsencrypt/live/mail.example.com/fullchain.pem"
# If you want to listen on multiple subdomains (e.g. mail.davidlenfesty) you have to add more lines
# of keys, and more lines of listeners

# Listen for local SMTP connections
listen on localhost hostname mail.example.com

# listen for filtered spamd connections
listen on lo0 port 10026

# Listen for submissions
listen on $ext_if port 587 tls-require auth pki mail.example.com tag SUBMITTED

# Accept mail from external sources.
accept from any for domain <domains> alias <aliases> deliver to maildir "~/mail"

accept for local alias <aliases> deliver to maildir "~/mail"
accept from local for any relay tls
accept tagged SUBMITTED for any relay tls

For det første definerer vi igjen vårt eksterne grensesnitt, samt noen få tabeller, aliaser og domener. Deretter går vi videre til SSL-nøkkelen og sertifikatet for eventuelle domener vi ønsker å håndtere post under.

In the next section, we define the interfaces and ports we want to listen on. Firstly, we listen on localhost for our mail.example.com domain, for any local connections. Then we listen for our spamd-filtered messages and submitted messages on the external interface. Lastly, we listen for submissions, these happen on port 587 and we are requiring them to authenticate, for security reasons.

Lastly are our accept settings. We accept any message for any of our domains defined in our domains table for aliases in our aliases table, to deliver to their home directory in the maildir format. Then we accept all local connections for local mailboxes and relay out our messages, so we can send email. Lastly, we accept our submitted messages to relay. If we didn't require authentication for our submissions port, this would be a big security hazard. This would let anyone use our server as a spam relay.

Aliases

FreeBSD ships with a default alias file /etc/mail/aliases in the following format:

vuser1:  user1
vuser2:  user1
vuser3:  user1
vuser4:  user2

This defines the different mail boxes, and where we want to forward messages sent to these defined mailboxes. We can either define our users as local system users or external mailboxes to forward to. The default FreeBSD file is quite descriptive so you can refer to that for reference.

Domains

FreeBSD does not supply a default domains file, but this is incredibly simple:

# Domains
example.com
mail.example.com
smtp.example.com

This is just a plain text file with each domain you want to listen to on a new line. You can make a comment using the # symbol. This file exists simply so that you can use fewer lines of configuration.

SSL Certificates

There are two ways to be able to secure your communications with your mail server, self-signed and signed certificates. It is certainly possible to self-sign your certificates, however services like Let's Encrypt provide free and incredibly easy to use signing.

First we have to install the certbot program.

sudo pkg install py-certbot

Alternatively, it can be installed with ports:

cd /usr/ports/security/py-certbot
make install
make clean

Then, to get your certificate, you need to make sure you have opened up port 80 on your external interface. Add the following lines somewhere in your filtering rules in /usr/local/etc/pf.conf:

pass quick on $ext_if from any to any port http

Then run pfctl -f /usr/local/etc/pf.conf to reload the ruleset.

Then you can run the command for any domains you want to get a certificate for:

certbot certonly --standalone -d mail.example.com

It is recommended to set up a crontab entry to run certbot renew once every 6 months to ensure your certificates don't expire.

Then for every relevant domain, you can modify the lines to point to the correct key file:

pki mail.example.com key "/usr/local/etc/letsencrypt/live/mail.example.com/privkey.pem"
pki mail.example.com certificate "/usr/local/etc/letsencrypt/live/mail.example.com/fullchain.pem"

Edit the securities:

sudo chmod 700 /usr/local/etc/letsencrypt/archive/mail.example.com/*

Note: You will have to do this for each original keyfile or else OpenSMTPd won't open them.

Now we can start the service:

sudo service smtpd start

Configuring spamd

Here we are using OpenBSD's spamd daemon to reduce the amount of spam we get from the internet. Essentially, this filters out messages from IPs that are known as bad from various spam sources, as well as (by default) "greylisting" incoming connections. Spamd also tries to waste spammer's timme by "stuttering" blacklisted and greylisted connections, which means it spreads out it's response over several seconds which forces the client to stay open for longer than usual.

Greylisting a connection is done when any new IP address connects that isn't on any blacklist or whitelist. Once the new address connects, spamd drops the message with an inocuous error message, then it adds it to a temporary list. Because spammers get paid for delivered messages, they will not retry on an error, whereas a legitimate service will retry relatively soon.

You will have to run the following to mount fdescfs:

mount -t fdescfs null /dev/fd

Then you will have to add this line to /etc/fstab:

fdescfs     /dev/fd     fdescfs rw      0       0

The default config file (found in /usr/local/etc/spamd/spamd.conf.sample) will work fine. You can edit it to add new sources or change the sources you use:

sudo cp /usr/local/etc/spamd/spamd.conf.sample /usr/local/etc/spamd/spamd.conf

We can start the service with the following:

sudo service obspamd start

At this point spamd is set up.

Enabling Webmail Services

One problem with the greylisting approach is that large mail services will often send mail out through one of many different spools, and you aren't guaranteed to get the same server sending the message every time. One solution to this is to whitelist the IP ranges used by various webmail services. This is what the webmail table is used for in the PF configuration. This strategy can backfire if you include an IP address a spammer uses, but as long as you are careful with what ranges you put in the table you will be fine.

To add an email range to the webmail table, you can run the following command:

pfctl -t webmail -T add 192.0.2.0/24

Dovecot

If you want users to access their mail without logging in via SSH, you'll need an MDA that supports IMAP and/or POP3. A very popular program is Dovecot, with a fairly simple configuration and powerful features.

Vi kan kopiere over standardkonfigurasjonen:

cd /usr/local/etc/dovecot
cp -R example-config/* ./

Konfigurasjonen består av ganske mange forskjellige filer. For å se forskjellene mellom konfigurasjonen din og standardverdiene for dueslag, kjør kommandoen nedenfor:

sudo doveconf -n

Følgende er en enkel, fungerende konfigurasjon:

# 2.3.2.1 (0719df592): /usr/local/etc/dovecot/dovecot.conf
# OS: FreeBSD 11.2-RELEASE amd64  
# Hostname: mail.example.com
hostname = mail.example.com
mail_location = maildir:~/mail
namespace inbox {
  inbox = yes
  location = 
  mailbox Archive {
    auto = create
    special_use = \Archive
  }
  mailbox Archives {
    auto = create
    special_use = \Archive
  }
  mailbox Drafts {
    auto = subscribe
    special_use = \Drafts
  }
  mailbox Junk {
    auto = create
    autoexpunge = 60 days
    special_use = \Junk
  }
  mailbox Sent {
    auto = subscribe
    special_use = \Sent
  }
  mailbox "Sent Mail" {
    auto = no
    special_use = \Sent
  }
  mailbox "Sent Messages" {
    auto = no
    special_use = \Sent
  }
  mailbox Spam {
    auto = no
    special_use = \Junk
  }
  mailbox Trash {
    auto = no
    autoexpunge = 90 days
    special_use = \Trash
  }
  prefix = 
  separator = /
}
passdb {
  args = imap
  driver = pam
}
ssl = required
ssl_cert = </usr/local/etc/letsencrypt/live/mail.example.com/fullchain.pem
ssl_dh = </usr/local/etc/dovecot/dh.pem
ssl_key = </usr/local/etc/letsencrypt/live/mail.example.com/privkey.pem
userdb {
  driver = passwd
}

De fleste konfigurasjonsfiler vil være i conf.d

De viktigste er 10-auth.conf, 10-mail.conf, og 10-ssl.conf.

Du kan konfigurere de forskjellige postboksene du bruker i 15-mailboxes.conf. Det du ser ovenfor er en god konfigurasjon for mange systemer, men kjørelengden din kan variere. Det anbefales at du leker med dette med så mange forskjellige klienter du kan.

Godkjenning

De fleste standardinnstillingene vil være riktige. Hvis du vil bruke systembrukerne til å autentisere, må du redigere 10-auth.conf.

Fjern kommentaren til følgende linje:

!inkluder auth-system.conf.ext

Kryptering

Vi må generere Diffie-Hellman-parametere:

sudo nohup openssl dhparam -out /usr/local/etc/dovecot/dh.pem

Merk: Dette vil ta lang tid å kjøre. Mye lenger enn du kanskje forventer.

Vi kan nå starte Dovecot:

sudo service dovecot start

Konklusjon

På dette tidspunktet har vi en funksjonell, sikker og relativt spamfri e-postserver.

Noen flere ting å se nærmere på herfra er å bruke SpamAssassin for å heuristisk bli kvitt spam, i tillegg til å finne flere spam-svartelister som er lagt ut av kilder du stoler på.

Tags: #BSD #e-post

Hvordan installere Tiny Tiny RSS-leser på en FreeBSD 11 FAMP VPS

Hvordan installere Tiny Tiny RSS-leser på en FreeBSD 11 FAMP VPS

Bruker du et annet system? Tiny Tiny RSS Reader er en gratis og åpen kildekode selvhostet nettbasert nyhetsfeed (RSS/Atom) leser og aggregator, designet for å allo

Hvordan installere Wiki.js på FreeBSD 11

Hvordan installere Wiki.js på FreeBSD 11

Bruker du et annet system? Wiki.js er en gratis og åpen kildekode, moderne wiki-app bygget på Node.js, MongoDB, Git og Markdown. Wiki.js kildekode er offentlig

Hvordan installere Pagekit 1.0 CMS på en FreeBSD 11 FAMP VPS

Hvordan installere Pagekit 1.0 CMS på en FreeBSD 11 FAMP VPS

Bruker du et annet system? Pagekit 1.0 CMS er et vakkert, modulært, utvidbart og lett, gratis og åpen kildekode Content Management System (CMS) med

Hvordan installere MODX Revolution på en FreeBSD 11 FAMP VPS

Hvordan installere MODX Revolution på en FreeBSD 11 FAMP VPS

Bruker du et annet system? MODX Revolution er et raskt, fleksibelt, skalerbart, åpen kildekode, enterprise-grade Content Management System (CMS) skrevet i PHP. Det jeg

Sett opp OpenBSD 5.5 64-bit

Sett opp OpenBSD 5.5 64-bit

Denne artikkelen leder deg gjennom å sette opp OpenBSD 5.5 (64-bit) på KVM med en Vultr VPS. Trinn 1. Logg på Vultr-kontrollpanelet. Trinn 2. Klikk på DEPLOY

Hvordan installere osTicket på FreeBSD 12

Hvordan installere osTicket på FreeBSD 12

Bruker du et annet system? osTicket er et åpen kildekode kundestøtte billettsystem. osTicket-kildekoden er offentlig vert på Github. I denne opplæringen

Hvordan installere Flarum Forum på FreeBSD 12

Hvordan installere Flarum Forum på FreeBSD 12

Bruker du et annet system? Flarum er en gratis og åpen kildekode neste generasjons forumprogramvare som gjør nettdiskusjoner morsomme. Flarum kildekode er vert for o

Slik aktiverer du TLS 1.3 i Nginx på FreeBSD 12

Slik aktiverer du TLS 1.3 i Nginx på FreeBSD 12

Bruker du et annet system? TLS 1.3 er en versjon av Transport Layer Security (TLS)-protokollen som ble publisert i 2018 som en foreslått standard i RFC 8446

Installer WordPress på OpenBSD 6.2

Installer WordPress på OpenBSD 6.2

Introduksjon WordPress er det dominerende innholdsstyringssystemet på internett. Den driver alt fra blogger til komplekse nettsteder med dynamisk innhold

Hvordan installere Subrion 4.1 CMS på en FreeBSD 11 FAMP VPS

Hvordan installere Subrion 4.1 CMS på en FreeBSD 11 FAMP VPS

Bruker du et annet system? Subrion 4.1 CMS er et kraftig og fleksibelt innholdsstyringssystem (CMS) med åpen kildekode som gir et intuitivt og tydelig innhold

Hvordan konfigurere DJBDNS på FreeBSD

Hvordan konfigurere DJBDNS på FreeBSD

Denne opplæringen viser deg hvordan du konfigurerer en DNS-tjeneste som er enkel å vedlikeholde, enkel å konfigurere og som generelt er sikrere enn den klassiske BIN-en.

Slik installerer du Nginx, MySQL og PHP (FEMP) Stack på FreeBSD 12.0

Slik installerer du Nginx, MySQL og PHP (FEMP) Stack på FreeBSD 12.0

En FEMP-stack, som kan sammenlignes med en LEMP-stack på Linux, er en samling åpen kildekode-programvare som vanligvis installeres sammen for å aktivere en FreeBS

Installere MongoDB på FreeBSD 10

Installere MongoDB på FreeBSD 10

MongoDB er en NoSQL-database i verdensklasse som brukes ofte i nyere webapplikasjoner. Det gir høyytelsesspørringer, sharding og replikering

Hvordan installere Monica på FreeBSD 12

Hvordan installere Monica på FreeBSD 12

Bruker du et annet system? Monica er et åpen kildekodesystem for personlig relasjonsstyring. Tenk på det som et CRM (et populært verktøy som brukes av salgsteam i th

OpenBSD som en e-handelsløsning med PrestaShop og Apache

OpenBSD som en e-handelsløsning med PrestaShop og Apache

Introduksjon Denne opplæringen demonstrerer OpenBSD som en e-handelsløsning som bruker PrestaShop og Apache. Apache er nødvendig fordi PrestaShop har kompleks UR

Installere Fork CMS på FreeBSD 12

Installere Fork CMS på FreeBSD 12

Bruker du et annet system? Fork er et åpen kildekode CMS skrevet i PHP. Forks kildekode er vert på GitHub. Denne guiden viser deg hvordan du installerer Fork CM

Hvordan installere Directus 6.4 CMS på en FreeBSD 11 FAMP VPS

Hvordan installere Directus 6.4 CMS på en FreeBSD 11 FAMP VPS

Bruker du et annet system? Directus 6.4 CMS er et kraftig og fleksibelt, gratis og åpen kildekode Headless Content Management System (CMS) som gir utviklere

Forbedre sikkerheten for FreeBSD ved å bruke IPFW og SSHGuard

Forbedre sikkerheten for FreeBSD ved å bruke IPFW og SSHGuard

VPS-servere er ofte målrettet av inntrengere. En vanlig type angrep dukker opp i systemlogger som hundrevis av uautoriserte ssh-påloggingsforsøk. Setter opp

Sett opp httpd i OpenBSD

Sett opp httpd i OpenBSD

Introduksjon OpenBSD 5.6 introduserte en ny demon kalt httpd, som støtter CGI (via FastCGI) og TLS. Ingen ekstra arbeid er nødvendig for å installere den nye http

Sett opp iRedMail på FreeBSD 10

Sett opp iRedMail på FreeBSD 10

Denne opplæringen viser deg hvordan du installerer gruppevaren iRedMail på en ny installasjon av FreeBSD 10. Du bør bruke en server med minst én gigabyte o

The Rise of Machines: Real World Applications of AI

The Rise of Machines: Real World Applications of AI

Kunstig intelligens er ikke i fremtiden, det er her akkurat i nåtiden I denne bloggen Les hvordan kunstig intelligens-applikasjoner har påvirket ulike sektorer.

DDOS-angrep: en kort oversikt

DDOS-angrep: en kort oversikt

Er du også et offer for DDOS-angrep og forvirret over forebyggingsmetodene? Les denne artikkelen for å løse spørsmålene dine.

Har du noen gang lurt på hvordan hackere tjener penger?

Har du noen gang lurt på hvordan hackere tjener penger?

Du har kanskje hørt at hackere tjener mye penger, men har du noen gang lurt på hvordan tjener de den slags penger? la oss diskutere.

Revolusjonerende oppfinnelser fra Google som vil gjøre livet ditt enkelt.

Revolusjonerende oppfinnelser fra Google som vil gjøre livet ditt enkelt.

Vil du se revolusjonerende oppfinnelser fra Google og hvordan disse oppfinnelsene forandret livet til alle mennesker i dag? Les deretter til bloggen for å se oppfinnelser fra Google.

Fredag ​​Essential: Hva skjedde med AI-drevne biler?

Fredag ​​Essential: Hva skjedde med AI-drevne biler?

Konseptet med selvkjørende biler som skal ut på veiene ved hjelp av kunstig intelligens er en drøm vi har hatt en stund nå. Men til tross for flere løfter, er de ingen steder å se. Les denne bloggen for å lære mer...

Teknologisk singularitet: en fjern fremtid for menneskelig sivilisasjon?

Teknologisk singularitet: en fjern fremtid for menneskelig sivilisasjon?

Ettersom vitenskapen utvikler seg raskt og tar over mye av innsatsen vår, øker også risikoen for å utsette oss for en uforklarlig singularitet. Les hva singularitet kan bety for oss.

Evolusjon av datalagring – infografikk

Evolusjon av datalagring – infografikk

Lagringsmetodene for dataene har vært i utvikling kan være siden fødselen av dataene. Denne bloggen dekker utviklingen av datalagring på grunnlag av en infografikk.

Funksjonaliteter til Big Data Reference Architecture Layers

Funksjonaliteter til Big Data Reference Architecture Layers

Les bloggen for å kjenne ulike lag i Big Data Architecture og deres funksjoner på den enkleste måten.

6 fantastiske fordeler ved å ha smarte hjemmeenheter i livene våre

6 fantastiske fordeler ved å ha smarte hjemmeenheter i livene våre

I denne digitaldrevne verden har smarthusenheter blitt en avgjørende del av livet. Her er noen fantastiske fordeler med smarthusenheter om hvordan de gjør livet vårt verdt å leve og enklere.

macOS Catalina 10.15.4 tilleggsoppdatering forårsaker flere problemer enn å løse

macOS Catalina 10.15.4 tilleggsoppdatering forårsaker flere problemer enn å løse

Nylig lanserte Apple macOS Catalina 10.15.4 en tilleggsoppdatering for å fikse problemer, men det ser ut til at oppdateringen forårsaker flere problemer som fører til muring av mac-maskiner. Les denne artikkelen for å lære mer