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

VMWareTools for MailCleaner – MailCleaner Support – User Support MailCleaner

twitterlinkedin

Information
Enable VMWareTools for MailCleaner server

Description
If you plan to install MailCleaner virtual appliance on your VMWare infrastructure you will need to install VMWare Tools.

Correcting
We have decided to generate a debian package with the last VMWare tools. This package is available on our repository.
So to install it you need to folow those steps :

# Connect your MailCleaner trought SSH as root
aptitude update
aptitude install mc-vmwaretools

Sorgente: VMWareTools for MailCleaner – MailCleaner Support – User Support MailCleaner

twitterlinkedin

Open Source Email Platform – Zimbra Collaboration Open Source Edition

twitterlinkedin

Zimbra offers an open source email platform  for the enterprise. Easily customize, extend and integrate Zimbra with line-of-business applications and organizational workflows.

Sorgente: Open Source Email Platform – Zimbra Collaboration Open Source Edition

twitterlinkedin

Windows Azure – link utili e automation

twitterlinkedin

Alcuni link utili per il servizio Azure di Microsoft:

Portale Microsoft Azure
Active Directory Microsoft Azure
Account Microsoft Windows Azure

 

Alcuni link utili per gli abbonati Microsoft Action Pack

Software, codici e vantaggi delle licenze

Partner Membership Center

Review Program Purchases

 

Manuale in PDF per la gestione delle automazioni in ambiente Microsoft Winodws Azure

Microsoft_Press_eBook_Azure_Automation_PDF

 

twitterlinkedin

CentOS 7 – PPTPD Vpn, how to

twitterlinkedin

Accesso al sistema SSH da root e seguire i comandi di installazione librerie attraverso l’utility yum.

Installazione librerie PPTPD

# yum install ppp pptp pptp-setup
# rpm -Uvh https://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-5.noarch.rpm
# yum install ppp pptpd

Configurazione servizio PPTPD

# nano /etc/pptpd.conf

localip 10.0.0.15
remoteip 10.0.0.200-210

# nano /etc/ppp/chap-secrets

USERNAME pptpd PASSWORD *

# nano /etc/sysctl.conf

net.core.wmem_max = 12582912
net.core.rmem_max = 12582912
net.ipv4.tcp_rmem = 10240 87380 12582912
net.ipv4.tcp_wmem = 10240 87380 12582912
net.core.wmem_max = 12582912
net.core.rmem_max = 12582912
net.ipv4.tcp_rmem = 10240 87380 12582912
net.ipv4.tcp_wmem = 10240 87380 12582912
net.core.wmem_max = 12582912
net.core.rmem_max = 12582912
net.ipv4.tcp_rmem = 10240 87380 12582912
net.ipv4.tcp_wmem = 10240 87380 12582912
net.ipv4.ip_forward = 1

# sysctl -p
# systemctl enable pptpd
# systemctl start pptpd

twitterlinkedin

VMWare Zimbra 8 Multi-Domain, rilascio certificati self-signed per dominio

twitterlinkedin

Questa rapida guida permette di generare certificati auto-firmati per la gestione di multi-dominio basati da virtualhost.
La procedura si sviluppa in tre punti: generazione del certificato dominio (virtualhost) e chiave privata, inserimento delle chiavi generate nel sistema VMWare Zimbra, rilascio del certificato.

– Accesso SSH con utente root sul sistema VMWare Zimbra
# mkdir /opt/certs
# cd /opt/certs
# openssl genrsa -out <virtualhost>.key 2048
# openssl req -new -x509 -key <virtualhost>.key -out <virtualhost>.cert -days 3650 -subj /CN=<virtualhost>

– Accesso alla console Admin del sistema VMWare Zimbra
– dal menu di DX: configura > domini > dominio con configurato <virtualhost> > certificato
– nell’area “Certificato dominio” inserire la chiave <virtualhost>.cert
– nell’area “Chiave privata dominio” inserire la chiave <virtualhost>.key

– Accesso SSH con utente root sul sistema VMWare Zimbra e lanciare il seguente comando su ogni nodo
# /opt/zimbra/libexec/zmdomaincertmgr deploycrts

 

twitterlinkedin

Microsoft ActiveSync – VMWare Zimbra 8 – Z-PUSH – Backend Zimbra – Open Source

twitterlinkedin

Questo articolo è una guida per attivare il sistema PUSH verso i mobile per il sistema di posta elettronica open source VMWare Zimbra 8. Solitamente il servizio che svolge queste attività PUSH (e-mail, contatti, calendario, promemoria) è Microsoft Server Activesync integrato in Microsoft Exchange.

Requisiti.

sistema operativo CentOS 6.4 x64
ip pubblico statico dedicato (diverso dall’accesso web di VMWare Zimbra)
pacchetto open source z-push ( z-push-2.0.7-1690 )
pacchetto open source backend zimbra ( zimbra56.1-zpush2–zimbra54-zpush1-as12.1 )
VMWare Zimbra 8.0.4 installato e funzionante

Guida all’installazione e configurazione.

Il server z-push è sostanzialmente un web server con certificato SSL (anche autofirmato). Il server web che si andrà ad implementare dovrà essere nello stesso segmento di rete del sistema di posta elettronica open source vmware zimbra 8 e dovrà avere un ip pubblico dedicato statico diverso da quello utilizzato dalla webmail. La configurazione del firewall dovrà permettere l’accesso verso il web server esclusivamente della porta SSL tcp/443.

I punti che verranno svolti saranno:

1- installazione web server (httpd, php)
2- creazione del certificato autofirmato SSL
3- configurazione del server web verso la zona z-push
4- installazione e configurazione z-push
5- installazione e configurazione backend zimbra per z-push
6- impostazione della rotazione dei log z-push
7- NOTE di configurazione windows phone

1- installazione web server (https, php)

Accedere con utente root al sistema CentOS 6.4 x64
# yum install httpd
# yum install php
# yum install mod_ssl openssl
# yum install php-cli php-soap php-process

2- 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/

3- 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/z-push
# nano /etc/httpd/conf/httpd.conf

NameVirtualHost *:443

Alias /Microsoft-Server-ActiveSync /var/www/html/zpush/index.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 <nome del server dichiarato sul DNS globale>
</VirtualHost>

4- installazione e configurazione z-push

# tar zxfv z-push-2.0.7-1690.tar.gz
# cd z-push-2.0.7-1690
# cp -R * /var/www/html/zpush/.
# mkdir /var/www/html/zpush/state
# mkdir /var/www/html/zpush/mail
# mkdir /var/www/html/zpush/zimbra
# mkdir /var/www/html/zpush/backend/zimbra
# nano /var/www/html/zpush/config.php

state_dir

log_dir

sostituire nel file zpush.conf il TIMEZONE Europe/Amsterdam con quello locale

# nano /var/www/html/zpush/lib/core/zpush.php
timezone

 

 

5- installazione e configurazione backend zimbra per z-push

# tar zxfv zimbra56.1-zpush2–zimbra54-zpush1-as12.1.tgz
# cd zimbra56.1
# cd z-push-2
# cp -R * /var/www/html/zpush/backend/zimbra/.
# chown -R apache:apache /var/www/html/zpush /var/log/z-push
# chmod -R 775 /var/www/html/zpush /var/log/z-push
# nano /var/www/html/zpush/backend/zimbra/config.php

backendzimbra_config

 

 

 

 

dal file /var/www/html/zpush/backend/zimbra/config.php copiare tutta la parte di backend nel
file principale in /var/www/html/zpush/config.php
# nano /var/www/html/zpush/config.php

configbackendzimbra

 

6- impostazione della rotazione dei log z-push

# nano /etc/logrotate.d/z-push

/var/log/z-push/*.log {
daily
missingok
rotate 14
compress
delaycompress
notifempty
}

7- NOTE di configurazione windows phone

I sistemi mobile con OS Windows Phone non accettano in fase di configurazione account e-mail i certificati SSL autofirmati (error code 80072f0d). Per superare il blocco del certificato autofirmato si deve copiare sul proprio desktop (ad esempio con scp) il certificato ca.crt e rinominarlo in ca.cer. Inviare una e-mail con allegato ca.cer ad un indirizzo di posta elettronica (ad esempio @gmail.com) già impostato sul proprio windows phone. Aprire l’e-mail e cliccare sul certificato in allegato ca.cer. Il dispositivo chiederà di installare il certificato e a quel punto l’account in push/exchange verrà accettato dal sistema operativo.

A questo punto il server Active Sync è pronto per essere utilizzato dagli smartphone: iPhone 4/4s/5, Android, iPAD, windows phone.

Se sei interessato a questi argomenti puoi compilare gratuitamente il form al seguente link http://www.andreabalboni.com/contatti/index.php e scegliere “interessato a corso vmware zimbra”.

twitterlinkedin

Contributi a fondo perduto Fondimpresa per piani formativi connessi allo sviluppo del commercio elettronico e di progetti di innovazione digitale.

twitterlinkedin

Fondimpresa, 15.000,00 Euro contributi a fondo perduto per singola PMI.

Avviso 5-2012 economia_digitale agg 110113

Per informazioni aggiuntive e/o chiarimenti:
Gulinati Stefano  +39 348 3129906 – stefano.gulinati@itbn.it

In sintesi:

“ Fondimpresa rende disponibile fino a 15mila euro a fondo perduto per tutte le PMI con almeno un dipendente iscritte al fondo ( anche per nuovi iscritti ) per portare innovazione tecnologica in azienda e sviluppo di siti di e-commerce, questo sotto forma di ore di formazione.

Se la cosa può interessare ( aziende con dipendenti ) sono a vostra disposizione, chiaro però che il fondo coprirà i costi di formazione ( vedi es. installazione/configurazione/istruzione di nuovi prodotti software e hardware e non il costo dell’hardware e del software ) che portano all’azienda un rinnovo tecnologico concreto, come per esempio passaggio da Windows XP a  Windows 7 / 8,  sistemi di posta elettronica, sistemi di sicurezza ( firewall e backup ), progetti su nuova infrastruttura informatica, etc.. “

Dettaglio:

Fondimpresa concede un contributo del Conto di Sistema, aggiuntivo alle risorse accantonate sul Conto Formazione aziendale fino ad un massimo di euro 15.000,00 per azienda (anche con più piani), che integra le risorse finanziarie disponibili sul “conto formazione”, per la realizzazione di piani formativi condivisi presentati da piccole e medie imprese (PMI) aderenti direttamente ed esclusivamente connessi allo sviluppo del commercio elettronico e di progetti di innovazione digitale. Il piano formativo può riguardare esclusivamente i seguenti ambiti, anche singolarmente:• A. Sviluppo di iniziative di commercio elettronico (e-commerce) con vendita diretta ai consumatori (B2C: Business to Consumer) o con vendita tra aziende (B2B: Business to Business) per l’apertura al mercato globale e per l’internazionalizzazione delle PMI aderenti, mediante azioni di formazione connesse alla pianificazione e progettazione dell’attività aziendale on-line, anche sulla base di piattaforme web based per l’erogazione di servizi.• B. Realizzazione di progetti o interventi di innovazione digitale che riguardano l’introduzione di nuovi processi in azienda (o un notevole miglioramento di quelli già esistenti) e che richiedono, in una o più fasi della digitalizzazione, la formazione del personale interessato nelle PMI aderenti.

DISPONIBILITA’:

In tutto, è stanziato 1 milione di euro. 

AZIENDE AMMISSIBILI:

Può beneficiare del contributo aggiuntivo esclusivamente l’azienda aderente, appartenente alla definizione comunitaria che rispetta tutte le condizioni indicate nell’articolo 3 dell’Avviso n. 5/2012.

In particolare è richiesto alle PMI interessate:

• la presenza di un saldo attivo sul proprio Conto Formazione, risultante dalla somma degli importi effettivamente disponibili su tutte le matricole INPS per cui l’azienda ha aderito al Fondo (somma degli importi della voce “Disponibile” su tutte le matricole del conto aziendale).

• di non presentare a qualsiasi titolo, a partire dal 1° gennaio 2012, piani formativi su Avvisi di Fondimpresa che prevedono la concessione di contributi aggiuntivi alle risorse del Conto Formazione (fatto salvo il caso in cui il Piano sia stato annullato o respinto).

 

TEMPI DI PRESENTAZIONE:

I Piani formativi finanziati possono interessare l’ambito interaziendale, anche multi regionale, tra più PMI e l’ambito aziendale.

I contributi aggiuntivi sono concessi ai piani presentati sul Conto Formazione dal 14 gennaio 2013 fino al 31 luglio 2013.

Il Piano formativo deve essere presentato a Fondimpresa esclusivamente con le modalità stabilite nell’Avviso e nella “Guida alla gestione e rendicontazione dei Piani Formativi Aziendali – Conto Formazione”, corredato da tutta la documentazione prevista.

La Guida inoltre aggiorna su:

• l’estensione al 2013 di tutte le misure anticrisi già adottate per il 2009-2010- 2011-2012;

• gli apprendisti, per i quali dal 1° gennaio 2013 è in vigore l’obbligo di versamento del contributo integrativo dello 0,30%.

 
  Per informazioni aggiuntive e/o chiarimenti:

    Gulinati Stefano  +39 348 3129906

twitterlinkedin

IBM Lotus Domino Server / Notes 8.5 Amministrazione Avanzata

twitterlinkedin

Lo Studio AB Consulting informa che ha partecipato al corso di “Amministrazione avanzata IBM Lotus Domino Server / Notes 8.5″ tenutosi a Bologna il 7/8 Giugno 2012 in collaborazione con DominoPoint.

Lo Studio AB Consulting ha seguito ed acquisito le conoscenze relative agli argomenti trattati di seguito qui elencati:

POLICY

  • Come controllare centralmente i client Notes
  • Policy organizzative, esplicite e dinamiche
  • Tipologie dei criteri delle policy
  • (Registration, Setup, Archiving, Desktop, Security, mail, Activities, Lotus Traveler, Roaming, Symphony)
  • Come e quando vengono applicate

STATISTICHE E MONITORAGGIO

  • Strumenti a disposizione
  • Analizzare a fondo task core (HTTP, ROUTER, AGENT)

DAOS

  • Cos’è e come si implementa
  • Utilizzare il Daos Estimator per analizzare l’impatto
  • Best  Practices e comandi fondamentali
  • Come effettuare i Backup

ID VAULT

  • Come gestire centralmente le ID Notes
  • Implementare ID Vault
  • Come resettare la password e distribuirla

CLUSTER

  • Mettere in sicurezza il/i vostri server
  • Come implementare un Cluster
  • Il significato dell’indice AI

BACKUP

  • Come eseguire il backup di Domino
  • Gli strumenti necessari

 

E’ possibile visualizzare i dettagli del corso cliccando sul link http://www-304.ibm.com/jct03001c/services/learning/ites.wss/it/it?pageType=course_description&includeNotScheduled=y&courseCode=D8X05IT

twitterlinkedin