Windows Server – Autologon per procedure schedulate a utente attivo

twitterlinkedin

L’accesso a un sistema Microsoft Windows prevede l’inserimento dell’utente e della relativa password. Si presentano situazioni, soprattutto sui sistemi server, dove le procedure schedulate e/o automatiche richiedono un accesso utente attivo. Questa specifica esigenza riguarda sia sistemi fisici che sistemi virtuali.

Per rendere automatico l’accesso dopo il riavvio del server di un utente con la propria password possiamo agire sul registro di sistema (sconsigliato per la scrittura in chiaro della password) o con l’utilizzo di un’utility ad hoc (consigliato per la cifratura della password).

Per farlo è sufficiente aprire il registro di sistema (Start > Esegui > regedit), navigare fino al seguente percorso:

HKLM\Software\Microsoft\Windows NT\CurrentVersion\winlogon

e modificare le seguenti chiavi di registro:

AutoAdminLogon = “1”
DefaultUserName =
DefaultPassword = 1

DefaultPassword = Questo procedimento funziona, ma ha l’enorme difetto di costringere chi lo adotta a inserire la password in chiaro all’interno del registro: una falla di sicurezza non da poco, specialmente se stiamo parlando dell’utente Administrator.

Per risolvere questo problema è possibile utilizzare Autologon for Windows, un software gratuito sviluppato da Mark Russinovich e disponibile sul sito Sysinternals ( https://docs.microsoft.com/it-it/sysinternals/downloads/autologon ): il programma svolge una operazione del tutto analoga a quella descritta sopra, inserendo però la password in modalità criptata.

autologon-sysinternals-enable-autologin-windows

twitterlinkedin

Outlook 2007 – spagnolo – KB4011086

twitterlinkedin

Nei giorni verso il 13.09.2017 è uscito un aggiornamento Microsoft per Office che trasforma alcune parti di Outlook 2007 in lingua diversa da quella scelta, ad esempio in spagnolo. Il KB da disinstallare è il KB4011086. Vedi screen.

Per disinstallare i KB di Microsoft è possibile seguire le guide ai link.

Disinstallare update da Windows 7: https://support.microsoft.com/it-it/help/2601726

Disinstallare update da Windows 10: https://support.microsoft.com/it-it/help/4028054/windows-repair-or-remove-programs-in-windows-10

twitterlinkedin

OpenVPN Server – CentOS 7 x64

twitterlinkedin

In questo documento viene descritta la procedura per installare un server OpenVPN per la connettività verso l’azienda da sedi mobili remote. La soluzione è compatibile con i nuovi standard di sicurezza Apple ed utilizzabile dai sistemi operativi iOS, MAC OS, Microsoft Windows.

La configurazione proposta prevede la distribuzione lato client del certificato CA embedded nel file di configurazione e la preparazione di username/password per l’accesso account.

Per la preparazione del sistema operativo CentOS 7 x64 seguire l’articolo al link http://vlab.abconsultinggroup.eu/centos-7-perfetta-installazione-e-preparazione/ .

Installazione servizi

# yum install epel-release
# yum install openvpn easy-rsa -y

Configurazione chiavi RSA

# /usr/share/easy-rsa/2.0
# nano vars

# . vars
# ./clean-all
# ./build-ca
# ./build-key-server openvpn.abconsulting.local
# ./build-dh

Configurazione OpenVPN Server

# nano /etc/openvpn/server.conf
local 10.0.0.14
dev tun
proto udp
port 1194


ca /usr/share/easy-rsa/2.0/keys/ca.crt
cert /usr/share/easy-rsa/2.0/keys/openvpn.abconsulting.local.crt
key /usr/share/easy-rsa/2.0/keys/openvpn.abconsulting.local.key
dh /usr/share/easy-rsa/2.0/keys/dh2048.pem

user nobody
group nobody

server 10.8.0.0 255.255.255.0

persist-key
persist-tun

client-to-client

push "redirect-gateway def1"
push "dhcp-option DNS 10.0.0.1"
push "dhcp-option DOMAIN abconsulting.local"

status /var/log/openvpn-status.log 20
log /var/log/openvpn.log
verb 1

plugin /usr/lib64/openvpn/plugins/openvpn-plugin-auth-pam.so login
client-cert-not-required
username-as-common-name

Configurazione routing

# nano /etc/sysctl.conf

# sysctl -p
# systemctl start iptables
# iptables -F
# iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o ens32 -j MASQUERADE
# iptables-save > /etc/sysconfig/iptables
# systemctl enable iptables
# systemctl restart network.service

 il valore ens32 dipende dalla scheda di rete

Start e auto esecuzione server OpenVPN

# systemctl start openvpn@server.service
# systemctl enable openvpn@server.service

File di configurazione client

es: abgroup.ovpn


client
dev tun
proto udp
remote <ip pubblico della rete> 1194
resolv-retry infinite
nobind
persist-key
persist-tun
<ca>
il contenuto di questa parte è da ricavare eseguendo il comando
cat /usr/share/easy-rsa/2.0/keys/ca.crt e incollare qui all'interno
da
-----BEGIN CERTIFICATE-----
a
-----END CERTIFICATE-----
compresi
</ca>
auth-user-pass
verb 3

 

twitterlinkedin

Zimbra 8.7.x installazione multiserver – 4 nodi su CentOS 7 x64

twitterlinkedin

Documentazione ufficiale Zimbra

Zimbra Open Source – Administrazion Guide 8.7
Zimbra Open Source – Multi-Server Installation Guide 8.7

Installazione Zimbra 4 nodi

Per la preparazione del sistema operativo CentOS 7 x64 di ogni nodo seguire la guida al link http://vlab.abconsultinggroup.eu/centos-7-perfetta-installazione-e-preparazione/ .

ip=10.0.0.24 host=24-c7-01.abconsulting.local ruoli=LDAP(ZIMBRA), DNS(SYSTEM)
ip=10.0.0.25 host=25-c7-02.abconsulting.local ruoli=MAILBOXSTORE(ZIMBRA), UI(ZIMBRA), LOGGER(ZIMRA)
ip=10.0.0.26 host=26-c7-03.abconsulting.local ruoli=MTA(ZIMBRA)
ip=10.0.0.27 host=27-c7-04.abconsulting.local ruoli=PROXY(ZIMBRA), MEMCACHED(ZIMBRA)

Preparazione NODO01=24-c7-01

** disattivazione postfix
# systemctl stop postfix
# systemctl disable postfix

** configurazione DNS
# nano /etc/hosts

** configurazione dnsmasq, e rete host su DNS
# nano /etc/dnsmasq.conf
** preparazione dominio d’ufficio @abconsulting.local

** a fine file aggiungere i due server per inoltro richieste

# systemctl start dnsmasq
# systemctl enable dnsmasq
** configurare l’host NODO01 a utilizzare se stesso come risolutore nomi FQDN DNS
# nmtui

# systemctl restart network
# cat /etc/resolv.conf

** installazione LDAP(ZIMBRA)
# cd /tmp
# wget https://files.zimbra.com/downloads/8.7.7_GA/zcs-8.7.7_GA_1787.RHEL7_64.20170410133400.tgz
** copiare il pacchetto .tgz nella /tmp negli altri 3 nodi attraverso il comando scp
# tar zxfv zcs-8.7.7_GA_1787.RHEL7_64.20170410133400.tgz
# cd zcs-8.7.7_GA_1787.RHEL7_64.20170410133400
# ./install.sh
** RUOLI=ldap


** alla comparsa del menu scegliere l’opzione 2 e configurare tutte le pass. e segnarle nel proprio documento di installazione; verranno richieste per la conf. dei successivi NODI.

Preparazione NODO02=25-c7-02

** disattivazione postfix
# systemctl stop postfix
# systemctl disable postfix

** configurare l’host NODO02 a utilizzare il NODO01 come risolutore nomi FQDN DNS
# nmtui
# systemctl restart network
# cat /etc/resolv.conf

# cd /tmp
# tar zxfv zcs-8.7.7_GA_1787.RHEL7_64.20170410133400.tgz
# cd zcs-8.7.7_GA_1787.RHEL7_64.20170410133400
# ./install.sh
** RUOLI=logger, store, apache, spell (il ruolo logger va installato solo su un mailbox store)

** al momento del menu, configurare in sequenza:
** 1) common configuration > LDAP (mettendo i dati del NODO01), andare su NODO01 in ssh ed eseguire da utente zimbra il comando # zmlocalconfig -s | grep ldap e inserire la pass visualizzata dal parametro zimbra_ldap_password
** 4) zimbra-store > 9) smtp-host = mettere i dati del NODO03 (anche se ancora da preparare)

Preparazione NODO03=26-c7-03

** disattivazione postfix
# systemctl stop postfix
# systemctl disable postfix

** configurare l’host NODO03 a utilizzare il NODO01 come risolutore nomi FQDN DNS
# nmtui
# systemctl restart network
# cd /tmp
# tar zxfv zcs-8.7.7_GA_1787.RHEL7_64.20170410133400.tgz
# cd zcs-8.7.7_GA_1787.RHEL7_64.20170410133400
# ./install.sh
** RUOLI=mta

** al momento del menu, configurare in sequenza:
** 1) common configuration > LDAP (mettendo i dati del NODO01), andare su NODO01 in ssh ed eseguire da utente zimbra il comando # zmlocalconfig -s | grep ldap e inserire la pass visualizzata dal parametro zimbra_ldap_password
** 3) zimbra-mta > postfix ldap user e amavis ldap user quelle impostate durante la creazione del NODO01

Preparazione NODO04=27-c7-04

** disattivazione postfix
# systemctl stop postfix
# systemctl disable postfix

** configurare l’host NODO04 a utilizzare il NODO01 come risolutore nomi FQDN DNS
# nmtui
# systemctl restart network
# cd /tmp
# tar zxfv zcs-8.7.7_GA_1787.RHEL7_64.20170410133400.tgz
# cd zcs-8.7.7_GA_1787.RHEL7_64.20170410133400
# ./install.sh
** RUOLI=memcached, proxy (il ruolo memcached va installato solo su un proxy)

** al momento del menu, configurare in sequenza:
** 1) common configuration > LDAP (mettendo i dati del NODO01), andare su NODO01 in ssh ed eseguire da utente zimbra il comando # zmlocalconfig -s | grep ldap e inserire la pass visualizzata dal parametro zimbra_ldap_password
** 4) zimbra-proxy > nginx ldap user quella impostate durante la creazione del NODO01

SET-UP  Finale dei NODI

**!! su ogni NODO (01, 02, 03, 04) eseguire i seguenti comandi:

** da utente zimbra
# su – zimbra
# zmupdateauthkeys

** da utente root
# /opt/zimbra/libexec/zmsyslogsetup

**!! solo sul NODO02 (MAILBOX+LOGGER)
# nano /etc/rsyslog.conf
** togliere il commento alle righe in screen

# nano /etc/sysconfig/rsyslog

SYSLOGD_options=”-r -m 0″

# systemctl restart rsyslog

** i DNS record MX devono essere riposizionati sul NODO03(MTA)
** modificando il file /etc/dnsmasq.conf presente nel NODO01

** verifica su tutti i NODI (01, 02, 03, 04) del parametro
# su – zimbra
$ zmprov gacf | grep zimbraLogHostname
zimbraLogHostname: 25-c7-02.abconsulting.local

 

twitterlinkedin

CentOS 7 – perfetta installazione e preparazione

twitterlinkedin

La versione CentOS 7 presenta una serie di differenze rispetto la precedente. In questo articolo verranno riportati i passaggi per una preparazione e prima configurazione CentOS 7 in ambiente VMWare.

(0) Installazione CentOS 7 x64 minimal package

Scaricare il pacchetto software ISO da uno di questi link diretti:
http://it.centos.contactlab.it/7/isos/x86_64/CentOS-7-x86_64-Minimal-1611.iso
http://mi.mirror.garr.it/mirrors/CentOS/7/isos/x86_64/CentOS-7-x86_64-Minimal-1611.iso
ftp://ftp.eutelia.it/CentOS/7/isos/x86_64/CentOS-7-x86_64-Minimal-1611.iso

(1) Interfaccia di rete e primi comandi utili alla gestione

# ip addr

# nmcli

# nmtui

ATT.NE alla compilazione del prefisso; nel caso si trascuri il sistema aggiunge
in automatico /32 e l’host non sarà quindi raggiungibile dalla rete.

** una volta preparata la configurazione di rete, verifichiamo l’effettiva scrittura nel file di conf. e riavviamo il sistema
# cat /etc/sysconfig/network-scripts/ifcfg-ens32

# reboot
** aggiornamento del sistema
# yum update
# reboot
** installazione delle vmware tools
# yum install open-vm-tools
# reboot

(2)  Installazione dei pacchetti di base

# yum install -y nano.x86_64 telnet.x86_64 wget.x86_64 lynx.x86_64 bind-utils.x86_64 crontabs.noarch ntpdate dnsmasq.x86_64 sysstat nc sudo screen system-config-network-tui.noarch setuptool.x86_64 system-config-firewall-tui.noarch setup.noarch
# yum install -y compat-libstdc++-33.x86_64 compat-glibc.x86_64 glibc-common.x86_64 glibc.x86_64 glibc-headers.x86_64 glibc-devel.x86_64 glibc-static.x86_64 glibc-utils.x86_64
# yum install -y net-tools perl-core
# yum groupinstall -y “Development Tools”

(3) Predisposizione configurazioni

# systemctl stop firewalld
# systemctl disable firewalld
# systemd-analyze set-log-level notice
#nano /etc/selinux/config


#nano /root/.bashrc
** aggiungere le seguenti linee

#nano /etc/hosts
** definizione dell’host

# crontab -e
** mantenimento dell’orario corretto

01 23 * * * /usr/sbin/ntpdate ntp1.inrim.it >/dev/null 2>&1

twitterlinkedin

Download Zimbra versioni e patch Download

twitterlinkedin

Versioni di Zimbra, link di download dirette (direct download zimbra), patch e manuali per versioni CentOS 6.x 64 bit e CentOS 7.x 64 bit.

Zimbra documento dei requisiti: zcs_system_requirements_8-7-0

Zimbra documento per multi-server: zimbra-open-source-edition-multi-server-installation-guide-8-7

Zimbra 8.8

CentOS 6.x: https://files.zimbra.com/downloads/8.8.8_GA/zcs-8.8.8_GA_2009.RHEL6_64.20180322150747.tgz
CentOS 7.x: https://files.zimbra.com/downloads/8.8.8_GA/zcs-8.8.8_GA_2009.RHEL7_64.20180322150747.tgz
CentOS 6.x: https://files.zimbra.com/downloads/8.8.5_GA/zcs-8.8.5_GA_1894.RHEL6_64.20171026035615.tgz
CentOS 7.x: https://files.zimbra.com/downloads/8.8.5_GA/zcs-8.8.5_GA_1894.RHEL7_64.20171026035615.tgz

Zimbra 8.7.11

CentOS 6.x: https://files.zimbra.com/downloads/8.7.11_GA/zcs-8.7.11_GA_1854.RHEL6_64.20170531151956.tgz
CentOS 7.x: https://files.zimbra.com/downloads/8.7.11_GA/zcs-8.7.11_GA_1854.RHEL7_64.20170531151956.tgz

Zimbra 8.7.7

CentOS 6.x: https://files.zimbra.com/downloads/8.7.7_GA/zcs-8.7.7_GA_1787.RHEL6_64.20170410133400.tgz
CentOS 7.x: https://files.zimbra.com/downloads/8.7.7_GA/zcs-8.7.7_GA_1787.RHEL7_64.20170410133400.tgz

Zimbra 8.7.4

CentOS 6.x: https://files.zimbra.com/downloads/8.7.4_GA/zcs-8.7.4_GA_1730.RHEL6_64.20170227060845.tgz
CentOS 7.x: https://files.zimbra.com/downloads/8.7.4_GA/zcs-8.7.4_GA_1730.RHEL7_64.20170227060845.tgz

Zimbra 8.7.1

CentOS 6.x: https://files.zimbra.com/downloads/8.7.1_GA/zcs-8.7.1_GA_1670.RHEL6_64.20161025035141.tgz
CentOS 7.x: https://files.zimbra.com/downloads/8.7.1_GA/zcs-8.7.1_GA_1670.RHEL7_64.20161025045328.tgz

Zimbra 8.7.0

CentOS 6.x: https://files.zimbra.com/downloads/8.7.0_GA/zcs-8.7.0_GA_1659.RHEL6_64.20160628192545.tgz
CentOS 7.x: https://files.zimbra.com/downloads/8.7.0_GA/zcs-8.7.0_GA_1659.RHEL7_64.20160628202714.tgz

Zimbra 8.6.0

CentOS 6.x: https://files.zimbra.com/downloads/8.6.0_GA/zcs-8.6.0_GA_1153.RHEL6_64.20141215151155.tgz
CentOS 7.x: https://files.zimbra.com/downloads/8.6.0_GA/zcs-8.6.0_GA_1153.RHEL7_64.20141215151110.tgz
patch: https://files.zimbra.com/downloads/8.6.0_GA/zcs-patch-8.6.0_GA_1200.tgz
note: http://files.zimbra.com.s3.amazonaws.com/website/docs/8.6/ZCS_860_Patch7_ReleaseNotes.pdf

Zimbra 8.5.0

CentOS 6.x: https://files2.zimbra.com/downloads/8.5.0_GA/zcs-8.5.0_GA_3042.RHEL6_64.20140828192005.tgz
CentOS 7.x: https://files2.zimbra.com/downloads/8.5.0_GA/zcs-8.5.0_GA_3042.RHEL7_64.20140828204420.tgz
patch: https://files2.zimbra.com/downloads/8.5.0_GA/zcs-patch-8.5.0_GA_3050.tgz
note: https://files.zimbra.com/website/docs/8.5/ZCS_850_Patch2_ReleaseNotes.pdf

Zimbra 8.0.9

CentOS 6.x: https://files2.zimbra.com/downloads/8.0.9_GA/zcs-8.0.9_GA_6191.RHEL6_64.20141103151557.tgz
CentOS 7.x: https://files2.zimbra.com/downloads/8.0.9_GA/zcs-8.0.9_GA_6191.RHEL7_64.20141103151539.tgz

Zimbra 7.2.7

CentOS 6.x: https://files2.zimbra.com/downloads/7.2.7_GA/zcs-7.2.7_GA_2942.RHEL6_64.20140314185955.tgz

twitterlinkedin

VMWare e licenze ROK (brand HP, DELL)

twitterlinkedin

Le licenze MS Windows possono essere acquistate godendo dello sconto del brand (ad es: HP o DELL) solo se queste vengono installate su hardware dedicato. Il controllo di queste licenze (che avviene durante l’installazione) può trovare impedimenti se l’ambiente è virtualizzato. In questo caso la licenza non trova le specifiche hardware a cui è legata.

Il risultato è il blocco dell’installazione.

Failed Bios Lock when installing Windows 2012 ROK on VMware

In ambiente VMWare è possibile trasferire in modo trasparente le informazioni BIOS dell’hardware al sistema operativo guest impostando il parametro

smbios.ReflectHost = TRUE

Di seguito le schermate per impostare correttamente il parametro nella VM.

vmproperties

aggiungere la riga seguente nella lista parametri:

VMware issue

twitterlinkedin

Open Source: Zimbra 8.7 – ActiveSync – Autodiscover – Z-Push 2.3.0 – Zimbra Backend 64 – CentOS 6.8 x64

twitterlinkedin

L’uscita di Zimbra 8.7 e dei nuovi telefoni basati sui sistemi Android rende necessario un aggiornamento alle ultime release di ActiveSync Open Source. In questo articolo verrà trattata la completa installazione e configurazione di un server CentOS 6.8 64bit che svolgerà il compito di ActiveSync verso i mobile per la soluzione di posta elettronica e collaborazione basata su Zimbra 8.7.

Premessa

Server Zimbra
Nome HOST: zimbra.dev.andreabalboni.com
IP HOST Zimbra: 10.0.0.20/24
Iptables e SELINUX disattivati

Server ActiveSync/Autodiscover
nome host: activesync.dev.andreabalboni.com
ip host: 10.0.0.19/24
Iptables e SELINUX disattivati

Verifica iptables disattivato

# iptables -L

Chain INPUT (policy ACCEPT)
target prot opt source destination

Chain FORWARD (policy ACCEPT)
target prot opt source destination

Chain OUTPUT (policy ACCEPT)
target prot opt source destination

Verifica SELINUX disattivato

# cat /etc/selinux/config

# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
# enforcing – SELinux security policy is enforced.
# permissive – SELinux prints warnings instead of enforcing.
# disabled – No SELinux policy is loaded.
SELINUX=disabled
# SELINUXTYPE= can take one of these two values:
# targeted – Targeted processes are protected,
# mls – Multi Level Security protection.
SELINUXTYPE=targeted

Installazione / Configurazione Server ActiveSync / Autodiscover

I punti che verranno svolti saranno:

1- installazione web server (httpd)
2- installazione php ver. 5.4
3- creazione del certificato autofirmato SSL (durata 10 anni)
4- configurazione del server web verso la zona z-push (2.3.0)
5- download, installazione e configurazione z-push e autodiscovery
6- installazione e configurazione backend zimbra (6.4) per z-push (2.3.0) e Zimbra (8.7)

1- installazione web server (httpd)

Accedere con utente root al sistema CentOS 6.8 x64
# yum install httpd
# yum install mod_ssl openssl

2- installazione php ver. 5.4

Per installare php ver. 5.4 è necessario abilitare un repository alla CentOS 6.8.
Vedi articolo http://vlab.abconsultinggroup.eu/centos-567-installazione-php-5-3-es-php-5-4/

Pacchetti da abilitare per activesync/autodiscovery.
# yum install php54w.x86_64 php54w-cli.x86_64 php54w-soap.x86_64 php54w-process.x86_64 php54w-mbstring.x86_64

3- creazione del certificato autofirmato SSL

Accedere con utente root al sistema WEB Server php/httpd

# openssl genrsa -out ca.key 1024
# openssl req -new -key ca.key -out ca.csr
# openssl x509 -req -days 3650 -in ca.csr -signkey ca.key -out ca.crt
# cp ca.key /etc/pki/tls/private/
# cp ca.csr /etc/pki/tls/private/
# cp ca.crt /etc/pki/tls/certs/

4- configurazione del server web verso la zona z-push
Accedere con utente root al sistema WEB Server php/httpd

# mkdir /var/www/html/zpush
# mkdir /var/log/zpush
# nano /etc/httpd/conf/httpd.conf

 

NameVirtualHost *:443

Alias /Microsoft-Server-ActiveSync /var/www/html/zpush/index.php
AliasMatch (?i)/Autodiscover/Autodiscover.xml “/var/www/html/zpush/autodiscover/autodiscover.php”

<VirtualHost *:443>
SSLEngine on
SSLCertificateFile /etc/pki/tls/certs/ca.crt
SSLCertificateKeyFile /etc/pki/tls/private/ca.key
<Directory /var/www/html/zpush>
AllowOverride All
php_flag magic_quotes_gpc off
php_flag register_globals off
php_flag magic_quotes_runtime off
php_flag short_open_tag on
</Directory>
DocumentRoot /var/www/html/zpush
ServerName activesync.dev.andreabalboni.com
</VirtualHost>

5- download, installazione e configurazione z-push

# wget http://download.z-push.org/final/2.3/z-push-2.3.0.tar.gz
# tar zxfv z-push-2.3.0.tar.gz
# cd z-push-2.3.0
# cp -R * /var/www/html/zpush/.
# mkdir /var/www/html/zpush/state
# mkdir /var/www/html/zpush/backend/zimbra

Configurazione z-push

# nano /var/www/html/zpush/config.php

conf#01

* Default settings
*/
// Defines the default time zone, change e.g. to “Europe/London” if necessary
define(‘TIMEZONE’, ‘Europe/Rome’);

conf#02

*/
define(‘USE_FULLEMAIL_FOR_LOGIN’, true);

conf#03

*/
define(‘STATE_MACHINE’, ‘FILE’);
define(‘STATE_DIR’, ‘/var/www/html/zpush/state/’);

conf#04

// Filelog settings
define(‘LOGFILEDIR’, ‘/var/log/zpush/’);
define(‘LOGFILE’, LOGFILEDIR . ‘zpush.log’);
define(‘LOGERRORFILE’, LOGFILEDIR . ‘zpush-error.log’);

conf#05

// SYNC_FILTERTYPE_1MONTH, SYNC_FILTERTYPE_3MONTHS, SYNC_FILTERTYPE_6MONTHS
define(‘SYNC_FILTERTIME_MAX’, SYNC_FILTERTYPE_6MONTHS);

conf#06

* Backend settings
*/
// the backend data provider
define(‘BACKEND_PROVIDER’, ‘BackendZimbra’);

Configurazione Autodiscovery

Il sistema Autodiscovery è legato al DNS pubblico del dominio. Nel caso di un dominio di posta elettronica @domain.ltd, dovrà essere definito il record A nel DNS pubblico come autodiscover.domain.ltd verso l’ip pubblico del webserver su cui viene configurato l’autodiscovery e lo zpush. Nel nostro caso il dominio su cui stiamo lavorando è @dev.andreabalboni.com e il record A definito per l’autodiscovery è autodiscovery.dev.andreabalboni.com .

# nano /var/www/html/zpush/autodiscover/config.php

conf#01

*/
// Defines the default time zone, change e.g. to “Europe/London” if necessary
define(‘TIMEZONE’, ‘Europe/Rome’);

conf#02

// The Z-Push server location for the autodiscover response
define(‘SERVERURL’, ‘https://activesync.dev.andreabalboni.com/Microsoft-Server-ActiveSync’);

conf#03

define(‘USE_FULLEMAIL_FOR_LOGIN’, true);

conf#04

*/

define(‘LOGBACKEND’, ‘filelog’);

define(‘LOGFILEDIR’, ‘/var/log/zpush/’);
define(‘LOGFILE’, LOGFILEDIR . ‘autodiscover.log’);
define(‘LOGERRORFILE’, LOGFILEDIR . ‘autodiscover-error.log’);

conf#05

*/
// the backend data provider
define(‘BACKEND_PROVIDER’, ‘BackendZimbra’);

 

6- installazione e configurazione backend zimbra per z-push

# wget http://downloads.sourceforge.net/project/zimbrabackend/Release64/zimbra64.tgz?r=https%3A%2F%2Fsourceforge.net%2Fprojects%2Fzimbrabackend%2F&ts=1472108441&use_mirror=kent
# tar zxfv zimbra64.tgz
# cd zimbra64
# cd z-push-2
# cp -R * /var/www/html/zpush/backend/zimbra/.
# chown -R apache:apache /var/www/html/zpush /var/log/zpush
# chmod -R 775 /var/www/html/zpush /var/log/zpush
# nano /var/www/html/zpush/backend/zimbra/config.php

conf#01

// define(‘ZIMBRA_URL’, ‘https://127.0.0.1’);

define(‘ZIMBRA_URL’, ‘https://zimbra.dev.andreabalboni.com:8443’);

 

twitterlinkedin

CentOS 5/6/7 – installazione PHP > 5.3 – es: php 5.4

twitterlinkedin

Per installare PHP successiva alla versione proposta dal sistema (repository di default) CentOS, si devono abilitare nuovi repository. Di seguito le versioni CentOS e i relativi comandi YUM.

CentOS / RHEL 7.x

rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

CentOS / RHEL 6.x

rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm
rpm -Uvh https://mirror.webtatic.com/yum/el6/latest.rpm

CentOS / RHEL 5.x

rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-5.noarch.rpm
rpm -Uvh http://mirror.webtatic.com/yum/el5/latest.rpm

Eseguendo il comando di seguito si possono verificare le nuove versioni di PHP installabili sul proprio sistema CentOS/RHEL.

yum search php

twitterlinkedin

VPN site-to-site dietro router, NAT e firewall: quando non vi sono i requisiti standard

twitterlinkedin

La realizzazione delle VPN site to site richiedono requisiti strutturali ben precisi per realizzare connessioni fra uffici stabili e prestanti. Ci si trova in situazioni dove non è possibile avere:

  • pool di IP pubblici statici
  • configurazione dell’ip pubblico sulla interfaccia WAN del proprio device di rete (normalmente firewall)
  • router in gestione autonoma

Questo articolo propone una soluzione di VPN site-to-site basata sul protocollo PPTP di Microsoft.

Rete A – 192.168.0.0 / 24 (sede centrale)

Rete B – 192.168.10.0/24 (sede remota, ad es: magazzino)

Diagramma di rete.

vpn-pptp

Composizione della rete A.

Server Windows: 192.168.0.100 / 255.255.255.0, gateway 192.168.0.254
Firewall: LAN 192.168.0.254 / 255.255.255.255.0 – WAN 192.168.1.254 /255.255.255.0 – GW 192.168.1.1
Router operatore: LAN 192.168.1.1 – WAN: IP-Pubblico-Rete-A (assegnato dall’operatore)

vpn-pptp-A

Composizione della rete B.

Linux PPTP-client-gateway: 192.168.10.254 / 255.255.255.0, gateway 192.168.10.1
Router operatore: LAN 192.168.10.1 – WAN: IP-Pubblico-Rete-B (assegnato dall’operatore)

vpn-pptp-B

Configurazione apparati della rete A.

Le parti che necessitano configurazioni sono il Server Windows e il firewall. L’installazione da svolgere sul server windows riguarda l’attivazione del ruolo di “Servizio di accesso e criteri di rete” e la relativa configurazione VPN (è necessario avere un servizio DHCP attivo e limitare il numero di connessioni lato VPN per non saturare il range DHCP).

ruolo

Nella definizione dell’utente per la connession VPN (in esempio “magazzinovpn”) va definita correttamente la proprietà “chiamate in ingresso”

account

e va inoltre definita la parte “Assegna inidirizzi IP statici”

indirizzo-ip-statico

definendo così (ad es: 192.168.0.20) l’ip che avrà la connessione con utente “magazzinovpn” e che rappresenterà il gateway della rete-A verso la rete-B.

Lato firewall vanno definite le regole di port-forwarding verso il server windows (192.168.0.100) delle porte TCP/1723 e GRE/47 (è probabile che il la porta GRE/47, quella responsabile del tunnel VPN non si definibile perché implicitamente già aperta). Lato firewall va definita una route statica dove si indica che tutte le sorgenti LAN (rete-A: 192.168.0.0/24) che hanno come destinazione la rete magazzino (rete-B: 192.168.10.0/24) il next-hop è il 192.168.0.20. Il router dell’operatore deve “girare” tutte le richieste da “Internet” sull’ip del firewall 192.168.1.254.

IMPORTANTE. Ora serve un’ultima definizione di routing: le destinazioni che devono raggiungere la rete-B (192.168.10.0/24) devono attraversare il tunnel VPN. Questa definizione deve essere scritta all’interno del server windows (è il sistema operativo che ha in gestione il tunnel VPN). Inoltre questa definizione deve essere attivata tutte le volte che viene accessa la VPN. In caso di caduta di linea la VPN cade, la route viene eliminata dal sistema operativo e quando la connettività riprende la VPN si ristabilisce e con sè si deve ristabilire anche la route statica di attraversamento tunnel.

Per realizzare questo meccanismo creiamo un file di script all’interno di c:\scripts e lo chiamiamo routevpn.cmd e al suo interno le seguenti righe:

route add 192.168.10.0 mask 255.255.255.0 192.168.0.20

Per “far scattare” questo meccanismo tutte le volte che il tunnel VPN si attiva, utilizziamo la tecnica delle schedulazioni Microsoft basate su evento. L’evento di attivazione tunnel VPN è nel registro di “Sistema” con event-ID=20274.

pianificazioneavvio-script

Configurazioni apparati della rete B.

Sulle sedi remote, nell’esempio “magazzino”, viene richiesta una macchina Linux con una interfaccia di rete. La configurazione che si andrà a predisporre è molto “leggera” e non richiede nessun intervento da parte dell’operatore. Nell’architettura VPN site-to-site routing, deve comunque essere rispettata la regola di non sovrapposizione di rete: i due segmenti di rete sono disgiunti, proprio come nel nostro esempio.

Il PC Linux deve avere come ruoli il routing, client PPTP e gateway principale della rete. Indico i pacchetti di “rito” da installare da una versione Linux CentOS 6.8 minimal e il pacchetto necessario per eseguire la funzione di PPTP client:

yum install -y nano telnet wget lynx bind-utils crontabs.noarch ntpdate dnsmasq sysstat nc sudo screen system-config-network-tui.noarch setuptool system-config-firewall-tui.noarch setup.noarch
yum install nano wget lynx telnet bind-utils
yum install dnsmasq
yum install -y compat-libstdc++-33 compat-glibc glibc-common glibc glibc-headers glibc-devel glibc-static glibc-utils
yum groupinstall “Development Tools”
yum install pptp

Una volta installato il software si passa alle parti di configurazione. In elenco files e relativa configurazione.

SELINUX

[root@gw ~]# cat /etc/selinux/config

# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
# enforcing – SELinux security policy is enforced.
# permissive – SELinux prints warnings instead of enforcing.
# disabled – No SELinux policy is loaded.
SELINUX=disabled
# SELINUXTYPE= can take one of these two values:
# targeted – Targeted processes are protected,
# mls – Multi Level Security protection.
SELINUXTYPE=targeted

SYSCTL.CONF

[root@gw ~]# cat /etc/sysctl.conf
# Kernel sysctl configuration file for Red Hat Linux
#
# For binary values, 0 is disabled, 1 is enabled. See sysctl(8) and
# sysctl.conf(5) for more details.
#
# Use ‘/sbin/sysctl -a’ to list all possible parameters.

# Controls IP packet forwarding
net.ipv4.ip_forward = 1

# Controls source route verification
net.ipv4.conf.default.rp_filter = 0

# Do not accept source routing
net.ipv4.conf.default.accept_source_route = 0

# Controls the System Request debugging functionality of the kernel
kernel.sysrq = 0

# Controls whether core dumps will append the PID to the core filename.
# Useful for debugging multi-threaded applications.
kernel.core_uses_pid = 1

# Controls the use of TCP syncookies
net.ipv4.tcp_syncookies = 1

# Controls the default maxmimum size of a mesage queue
kernel.msgmnb = 65536

# Controls the maximum size of a message, in bytes
kernel.msgmax = 65536

# Controls the maximum shared segment size, in bytes
kernel.shmmax = 4294967295

# Controls the maximum number of shared memory segments, in pages
kernel.shmall = 268435456

IP-UP.LOCAL (con permessi di esecuzione, chmod 755)

[root@gw ppp]# cat /etc/ppp/ip-up.local
#!/bin/bash

ip route add 192.168.0.0/24 dev ppp0

PPTPVPN

[root@gw peers]# cat /etc/ppp/peers/pptpvpn
pty “pptp <ip-pubblico-statico-rete-A> –nolaunchpppd”
lock
noauth
nobsdcomp
nodeflate
refuse-eap
refuse-pap
name magazzinovpn
password <password-utente-magazzinovpn-definito-in-ms-windows>
persist
remotename PPTP
require-mppe-128
ipparam pptpvpn

CON.SH (con permessi di esecuzione, chmod 755)

[root@gw peers]# cat /root/con.sh
#!/bin/bash
pppd call pptpvpn
sleep 10
iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE

RC.LOCAL

[root@gw peers]# cat /etc/rc.local
#!/bin/sh
#
# This script will be executed *after* all the other init scripts.
# You can put your own initialization stuff in here if you don’t
# want to do the full Sys V style init stuff.

/root/con.sh

touch /var/lock/subsys/local

Il client Linux creerà il tunnel VPN ed essendo il gateway della rete-B smisterà le chiamate pubbliche verso il router dell’operatore, mentre le chiamate con destinazione la rete-A verranno instradate nel tunnel VPN.

Se siete interessati a approfondimenti o valutazioni di scenari diversi potete contattarmi compilando il form al link http://www.abconsultinggroup.eu/contatti/index.php .

twitterlinkedin