Sett opp Zarafa og Yaffas på CentOS 6

Det er mange løsninger der ute som erstatter Microsoft Exchange med en Linux-løsning, men alle hadde ett problem jeg virkelig mislikte. Når jeg mottok møteinvitasjoner, kom de som vedlegg på iOS-enhetene mine og åpnet ikke direkte i kalenderappen. Zarafa var den eneste løsningen jeg testet som ville åpne kalenderhendelser i kalenderappen. Denne guiden vil lære deg hvordan du konfigurerer Zarafa og Yaffas på CentOS 6.

Før vi starter

Vi gjør følgende forutsetninger for å gjøre det lettere å forstå konfigurasjonen. Du bør imidlertid bruke dine egne, virkelige verdier for disse elementene:

  • Domenet jeg ønsker å motta e-post på er "example.com". Brukere er som "[email protected]", "[email protected]".
  • Vertsnavnet for e-postserveren er "pegasus", så det fullstendige domenenavnet for den serveren er "pegasus.example.com".
  • Når jeg bruker begrepet "serverkontrollpanel", refererer jeg til vultr.com- panelet.

Klargjøring av serveren (VPS)

Start med å distribuere vultr.com-serverforekomsten. Jeg valgte 1 GB VPS som kjører CentOS 6, 32-bit. Når installasjonen er ferdig, forbereder vi serveren til å bli en e-postserver.

I "Mine servere"-skjermen på serverkontrollpanelet klikker du på "Administrer"-koblingen ved siden av den nyopprettede serveren. På siden som åpnes kan du se detaljene for serveren din. Klikk på IPv4-fanen, og klikk deretter på den blå "Oppdater"-knappen. Et tekstinntastingsfelt vises og det er forhåndsinnstilt med noe sånt som ".vultr.com". Erstatt denne oppføringen med det fullstendige domenenavnet til serveren din (eksempel: pegasus.example.com) og trykk på den blå "Oppdater"-knappen.

Nå er det på tide å logge på den nye serveren. Åpne ssh-terminalen og koble til serveren din. Alternativt kan du klikke på den blå "View Console"-knappen for å få nettleservinduet med påloggingsskjermen til serveren din.

ssh root@your_ip_address

" your_ip_address"-delen er hoved-IP-adressen som er oppført i serverens kontrollpanel. Hvis du bruker nettleseren til å koble til serveren din, logger du bare på som root med root-passordet.

Først setter vi opp riktig domenenavn. Åpne nettverkskonfigurasjonsfilen.

nano /etc/sysconfig/network

Erstatt "vultr.guest" med det fullstendige domenenavnet til serveren din (eksempel: pegasus.example.com). Lagre filen med Ctrl + X , så Y .

Det andre stedet vi endrer er /etc/hostsfilen.

nano /etc/hosts

Legg til følgende linje. Det kan være øverst i filen eller den andre linjen.

127.0.1.1 pegasus.example.com pegasus

Lagre filen med Ctrl + X , så Y . Jeg liker å sørge for at alt fungerer etter en omstart, så jeg starter VPS på nytt etter disse endringene.

reboot

Gi maskinen et øyeblikk til å starte på nytt, og koble til igjen.

ssh root@your_ip_address

Yaffas og Zarafa trenger EPEL-depotet, som allerede er installert i kildene på vultr.com-servere. De trenger RPMforge-depotet også. Utfør følgende kommando for å installere det depotet.

32-biters systemer:

rpm -Uvh http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.2-2.el6.rf.i686.rpm

64-biters systemer:

rpm -Uvh http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.2-2.el6.rf.x86_64.rpm

Deretter legger vi til Yaffas-depotet.

nano /etc/yum.repos.d/yaffas.repo

Lim inn følgende tekst i den nyopprettede filen:

[yaffas]
name = yaffas $releasever
baseurl = http://repo.yaffas.org/releases/latest/rhel/$releasever
enabled = 1
protect = 0
gpgcheck = 1
priority = 1

Lagre filen med Ctrl + X , så Y .

For å unngå kompatibilitetsproblemer, må vi ekskludere noen elementer fra EPEL-depotet. Åpne depotfilen.

nano /etc/yum.repos.d/epel.repo

Skriv deretter inn følgende i [epel]seksjonen, rett under "gpgkey"-linjen.

exclude=clamav* clamd* amavisd* libvmime libical libvmime-devel libical-devel php-mapi zarafa*

Hele delen vil se slik ut:

[epel]
name=Extra Packages for Enterprise Linux 6 - $basearch
#baseurl=http://download.fedoraproject.org/pub/epel/6/$basearch
mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-6&arch=$basearch
failovermethod=priority
enabled=1 
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6
exclude=clamav* clamd* amavisd* libvmime libical libvmime-devel libical-devel php-mapi zarafa*

Lagre filen med Ctrl + X , så Y .

Importer GPG-nøkkelen for Yaffas-depotet:

rpm --import http://repo.yaffas.org/repo.rpm.key

Nå, la oss rydde opp nam.

yum clean all

På dette tidspunktet bør vi være klare for Yaffas-installasjonen. Installer den ved å skrive inn denne kommandoen.

yum install yaffas

Yum vil sjekke avhengighetene og gi deg et sammendrag.

Install 359 Package(s)

Total download size: 260 M
Installed size: 639 M
Is this ok [y/N]:

Trykk Y og deretter Enter/Return for å starte installasjonen.

Installasjonen vil ta litt tid, så unn deg en kaffe og en kake mens du venter på at installasjonen skal fullføres.

MySQL

Før vi kan starte det endelige oppsettet, må vi konfigurere MySQL. Start MySQL og start det sikre oppsettet.

service mysqld restart
mysql_secure_installation

For å logge på MySQL for å sikre det, trenger vi det gjeldende passordet for root-brukeren. Hvis du nettopp har installert MySQL, og du ikke har satt root-passordet ennå, vil passordet være tomt, så du bør bare trykke Enter/Retur her.

Enter current password for root (enter for none): **{press Enter/Return}**

[...]

Setting the root password ensures that nobody can log into the MySQL
root user without the proper authorisation.

Set root password? [Y/n] **Y**

New password: **{enter super secret password}**
Re-enter new password: **{enter super secret password again}**

Remove anonymous user? [Y/n] **Y**

Disallow root login remotely? [Y/n] **Y**

Remove test database and access to it? [Y/n] **Y**

Reload privilege tables now? [Y/n] **Y**

Konfigurasjon

Åpne en nettleser og gå til følgende URL.

http://your_ip_address:10000

#If you have a DNS entry already, use this instead.
http://server.example.com:10000

Det opprinnelige brukernavnet er adminmed passord yaffas.

Etter pålogging vil du se oppsettsveiviseren. Den har 5 trinn. Trykk "Neste" for å starte.

Det første trinnet er å skrive inn et nytt administratorpassord. Skriv inn det nye passordet to ganger. Sørg for at det er komplisert nok til å være trygt, men ikke glem det. Klikk deretter på "Neste".

Den neste skjermen konfigurerer MySQL-backend. Det eneste du trenger å skrive inn er passordet du opprettet for MySQL root-brukeren.

På den fjerde skjermen konfigurerer du e-postdomenet ditt. Skriv inn "example.com" i det primære e-postdomenefeltet. Dette være ditt eget domene. Trykk "Neste".

Jeg tror den femte skjermen er valgfri, men for å være på den sikre siden, opprett en brukerkonto som skal være LDAP-administrator, og klikk deretter på "Fullfør".

It will take a while until the setup finishes. Once it completes, a popup appears that tells you everything was successful. Click the "OK" button. After a moment, you will see the login screen again. You can login as admin with the new password that you created during the setup.

Extras

During the installation, some general self-signed certificates for the app are generated and installed. Personally, I prefer to have my own self-signed certificates to show the values that I entered and I also want to make sure that all requests are sent over HTTPS.

Zarafa comes with a few scripts to generate your own certificates. These are of course self-signed certificates.

Let's make a home for the certificate authority.

mkdir -p /etc/zarafa/ssl
chmod 700 /etc/zarafa/ssl
cd /etc/zarafa/ssl

... then run the script:

sh /usr/share/doc/zarafa/ssl-certificates.sh server

The parameter "server" means the certificate we create will be called server.pem.

You will be greeted with the following message.

No Certificate Authority Root found in current directory.
Press enter to create, or ctrl-c to exit.

Press Enter or Return.

The next message that appears is:

CA certificate filename (or enter to create)

Press Enter or Return to continue and create the CA Certificate.

After a little activity on the screen, you will get a prompt to enter the PEM passphrase. Enter any passphrase for the CA certificate, but make sure that you don't forget it, as you will need it later. For simplicity's sake, let's assume we chose the passphrase "ca-root-pem".

Answer the questions to generate the certificate. The answers here are my examples, so replace them with the correct values for yourself.

Country Name (2 letter code) [XX]: **MY**
State or Province Name (full name) []:**Selangor**
Locality Name (eg, city) [Default City]: **Shah Alam**
Organization Name (eg, company) [Default Company Ltd]: **ELMIMA-Systems**
Organizational Unit Name (eg, section) []: **Certificate Authority**
Common Name (eg, your name or your server's hostname) []:**server.example.com** **Must be the full domain name of your server**
Email Address []: **[email protected]**

Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []: **Enter/Return**
An optional company name []: **Enter/Return**

Next, it will ask you for the passphrase of the cakey.pem file. This is the passphrase that you created earlier.

Enter pass phrase for /etc/pki/CA/private/./cakey.pem:ca-root-pem

Du vil se litt aktivitet på skjermen, så vil den be deg om en PEM-passordfrase. Dette er passordfrasen for server.pemfilen vi opprettet. Skriv inn alt du vil, men pass på at du ikke glemmer det. For enkelhets skyld vil vi bruke "server-pem-frase".

Enter PEM pass phrase:**server-pem-phrase**
Verifying - Enter PEM pass phrase:**server-pem-phrase**

På tide å legge inn verdiene for server.pemfilen.

Country Name (2 letter code) [XX]: **MY**
State or Province Name (full name) []:**Selangor **
Locality Name (eg, city) [Default City]: **Shah Alam**
Organization Name (eg, company) [Default Company Ltd]: **ELMIMA-Systems**
Organizational Unit Name (eg, section) []: **Server SSL Certificate**
Common Name (eg, your name or your server's hostname) []: **server.example.com** **Must be the full domain name of your server**
Email Address []: [email protected]


Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []: **Enter/Return**
An optional company name []: **Enter/Return**

Enter pass phrase for /etc/pki/CA/private/cakey.pem:ca-root-pem **Replace with your own passphrase**

Noe aktivitet på skjermen viser at sertifikatet er generert.

Sign the certificate? [y/n]:

Skriv inn Y og trykk Enter/Retur .

1 out of 1 certificate requests certified, commit? [y/n]

Skriv inn Y og trykk Enter/Retur .

Create public key from this certificate? [y]

Vi trenger det egentlig ikke, men jeg antar at det ikke skader å lage det. Bare trykk på Enter/Retur .

Enter pass phrase for server.pem: **server-pem-phrase**

Nå er det på tide å konfigurere server.cfgfilen for Zarafa.

nano /etc/zarafa/server/cfg

Finn oppføringen server_ssl_enabledog endre verdien til "ja" (uten anførselstegn).

Finn oppføringen server_ssl_portog bekreft at den er 237.

Finn oppføringen server_ssl_key_fileog sett verdien til " /etc/zarafa/ssl/server.pem" (uten anførselstegn).

Opprett oppføringen server_ssl_key_passbruk passordfrasen du opprettet for server.pemfilen (eksempel: server-pem-frase) som verdien.

Finn oppføringen server_ssl_ca_file. Den originale dokumentasjonen for Zarafa antar at banen er /etc/zarafa/ssl/demoCA/cacert.pem, men på CentOS er banen /etc/pki/CA/cacert.pem. Oppdater denne verdien tilsvarende.

server_ssl_ca_file = /etc/pki/CA/cacert.pem

Start Zarafa-serveren på nytt.

service zarafa restart

La oss generere sertifikatet for Apache.

cd /etc/zarafa/ssl
openssl req -nodes -newkey rsa:2048 -keyout zarafa-ssl.key -out zarafa-ssl.csr

Vi får et annet skjema for å lage et sertifikat.

Country Name (2 letter code) [XX]: **MY **
State or Province Name (full name) []: **Selangor**
Locality Name (eg, city) [Default City]: **Shah Alam**
Organization Name (eg, company) [Default Company Ltd]: **ELMIMA-Systems**
Organizational Unit Name (eg, section) []: **Zarafa Web Services**
Common Name (eg, your name or your server's hostname) []: **server.example.com** **Must be the full domain name of your server**
Email Address []: **[email protected]**

Deretter signerer du sertifikatet.

openssl x509 -req -in ./zarafa-ssl.csr -signkey zarafa-ssl.key -out zarafa-ssl.crt -days 9999

... og legg den til Apache.

cd /etc/httpd/conf.d
nano ssl.conf

Finn linjen "SSLCertificateFile /opt/yaffas/etc/ssl/certs/zarafa-webaccess.crt" og endre den til "SSLCertificateFile /etc/zarafa/ssl/zarafa-ssl.crt".

Finn linjen "SSLCertificateKeyFile /opt/yaffas/etc/ssl/certs/zarafa-webaccess.key" og endre den til "SSLCertificateKeyFile /etc/zarafa/ssl/zarafa-ssl.key"

Lagre filen og avslutt.

Nå åpner du zarafa-webapp.conffilen.

nano /etc/httpd/zarafa-webapp.conf

Finn de følgende to linjene og fjern kommentarene.

#php_flag session.cookie_secure on
#php_flag session.cookie_httponly on

Legg til følgende linjer.

RewriteEngine On
RewriteCond % !=on
RewriteRule (.*) https://pegasus.example.com/webapp/ [R] (Of course use your own real domain here)

Lagre filen og avslutt. Start deretter Apache på nytt.

service httpd restart

Nå vil nettappen alltid bruke HTTPS. Du kan gjøre det samme for zarafa-webapp.conf.

Merknader

Da jeg testet installasjonen på CentOS, la jeg merke til noen feilmeldinger på grunn av manglende mapper. Du kan fikse det med følgende kommandoer.

mkdir -p /var/run/policyd-weight/cores/master
mkdir -p /var/run/policyd-weight/cores/cache
chown -R polw /var/run/policyd-weight

For å bruke din nye Zarafa-server som e-postserver for domenet ditt, må du sette opp både en A-post og en MX-post for domenet ditt. Om ønskelig kan du bruke din favorittsøkemotor for å finne en SPF Wizard, som gjør det enkelt å lage en SPF-post for domenet ditt.


Leave a Comment

Installer Plesk på CentOS 7

Installer Plesk på CentOS 7

Bruker du et annet system? Plesk er et proprietært kontrollpanel for webverten som lar brukere administrere sine personlige og/eller klienters nettsteder, databaser

Slik installerer du Squid Proxy på CentOS

Slik installerer du Squid Proxy på CentOS

Squid er et populært, gratis Linux-program som lar deg lage en webproxy for videresending. I denne veiledningen vil du se hvordan du installerer Squid på CentOS for å gjøre deg om

Slik installerer du Lighttpd (LLMP Stack) på CentOS 6

Slik installerer du Lighttpd (LLMP Stack) på CentOS 6

Introduksjon Lighttpd er en apachegaffel som har som mål å være mye mindre ressurskrevende. Den er lett, derav navnet, og er ganske enkel å bruke. Installer

Konfigurering av statisk nettverk og IPv6 på CentOS 7

Konfigurering av statisk nettverk og IPv6 på CentOS 7

VULTR har nylig gjort endringer på sin side, og alt skal nå fungere bra ut av boksen med NetworkManager aktivert. Skulle du ønske å deaktivere

Endring av Icinga2 for å bruke hoved-/klientmodell på CentOS 6 eller CentOS 7

Endring av Icinga2 for å bruke hoved-/klientmodell på CentOS 6 eller CentOS 7

Icinga2 er et kraftig overvåkingssystem, og når det brukes i en master-klient-modell, kan det erstatte behovet for NRPE-baserte overvåkingskontroller. Mester-klienten

Slik installerer du Apache Cassandra 3.11.x på CentOS 7

Slik installerer du Apache Cassandra 3.11.x på CentOS 7

Bruker du et annet system? Apache Cassandra er et gratis og åpen kildekode NoSQL-databasebehandlingssystem som er designet for å gi skalerbarhet, høy

Slik installerer du Microweber på CentOS 7

Slik installerer du Microweber på CentOS 7

Bruker du et annet system? Microweber er en åpen kildekode dra og slipp CMS og nettbutikk. Microweber-kildekoden er vert på GitHub. Denne guiden vil vise deg

Hvordan installere Vanilla Forum på CentOS 7

Hvordan installere Vanilla Forum på CentOS 7

Bruker du et annet system? Vanilla forum er en åpen kildekode-forumapplikasjon skrevet i PHP. Det er en fullt tilpassbar, enkel å bruke og støtter ekstern

Slik installerer du Mattermost 4.1 på CentOS 7

Slik installerer du Mattermost 4.1 på CentOS 7

Bruker du et annet system? Mattermost er et åpen kildekode, selvdrevet alternativ til Slack SAAS-meldingstjenesten. Med andre ord, med Mattermost kan du ca

Opprette et nettverk av Minecraft-servere med BungeeCord på Debian 8, Debian 9 eller CentOS 7

Opprette et nettverk av Minecraft-servere med BungeeCord på Debian 8, Debian 9 eller CentOS 7

Hva du trenger En Vultr VPS med minst 1 GB RAM. SSH-tilgang (med root/administratorrettigheter). Trinn 1: Installere BungeeCord Først

La oss kryptere på Plesk

La oss kryptere på Plesk

Plesk-kontrollpanelet har en veldig fin integrasjon for Lets Encrypt. Lets Encrypt er en av de eneste SSL-leverandørene som gir ut sertifikater komplett

La oss kryptere på cPanel

La oss kryptere på cPanel

Lets Encrypt er en sertifiseringsinstans dedikert til å tilby SSL-sertifikater gratis. cPanel har bygget en ryddig integrasjon slik at du og din klient

Hvordan installere Concrete5 på CentOS 7

Hvordan installere Concrete5 på CentOS 7

Bruker du et annet system? Concrete5 er et åpen kildekode CMS som tilbyr mange karakteristiske og nyttige funksjoner for å hjelpe redaktører med å produsere innhold enkelt og

Slik installerer du Review Board på CentOS 7

Slik installerer du Review Board på CentOS 7

Bruker du et annet system? Review Board er et gratis og åpen kildekodeverktøy for gjennomgang av kildekode, dokumentasjon, bilder og mye mer. Det er nettbasert programvare

Sett opp HTTP-autentisering med Nginx på CentOS 7

Sett opp HTTP-autentisering med Nginx på CentOS 7

I denne veiledningen lærer du hvordan du setter opp HTTP-autentisering for en Nginx-webserver som kjører på CentOS 7. Krav For å komme i gang trenger du

Slik installerer du GoAccess på CentOS 7

Slik installerer du GoAccess på CentOS 7

Bruker du et annet system? GoAccess er en åpen kildekode-nettlogganalysator. Du kan bruke den til analyse av logger på sanntidsbasis i enten terminalen eller

Hvordan installere YOURLS på CentOS 7

Hvordan installere YOURLS på CentOS 7

YOURLS (Your Own URL Shortener) er en åpen kildekode-applikasjon for URL-forkorting og dataanalyse. I denne artikkelen vil vi dekke installasjonsprosessen

Hvordan installere og konfigurere ArangoDB på CentOS 7

Hvordan installere og konfigurere ArangoDB på CentOS 7

Bruker du et annet system? Introduksjon ArangoDB er en åpen kildekode NoSQL-database med en fleksibel datamodell for dokumenter, grafer og nøkkelverdier. Det er

Bruke Etckeeper for versjonskontroll av /etc

Bruke Etckeeper for versjonskontroll av /etc

Innledning /etc/-katalogen spiller en kritisk rolle i måten et Linux-system fungerer på. Grunnen til dette er fordi nesten alle systemkonfigurasjoner

Hvorfor bør du bruke SSHFS? Hvordan montere et eksternt filsystem med SSHFS på CentOS 6

Hvorfor bør du bruke SSHFS? Hvordan montere et eksternt filsystem med SSHFS på CentOS 6

Mange systemadministratorer administrerer store mengder servere. Når filer må åpnes på tvers av forskjellige servere, logger du på hver enkelt individuelt ca

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