Questa è una vecchia versione del documento!
abilito il login da root sulla vm da console
sed -i s/without-password/yes/g /etc/ssh/sshd_config && systemctl restart ssh
Installo il software
Per installare i servizi necessari lanciare il comando
apt-get install openvpn autossh -y
OPENVPN:
Presupponendo presente sulla vm la cartella Vpn con all'interno le configurazioni openvpn, passo a copiare i file per l'avvio:
cp -rv /root/Vpn/openvpn/apv/* /etc/openvpn cp /root/Vpn/openvpn/apv/client.ovpn /etc/openvpn/apv.conf systemctl daemon-reload
vim /etc/systemd/system/openvpn@apv.service
[Unit] Description=OpenVPN connection to %i PartOf=openvpn.service ReloadPropagatedFrom=openvpn.service [Service] Type=forking ExecStart=/usr/sbin/openvpn --daemon ovpn-%i --status /run/openvpn/%i.status 10 --cd /etc/openvpn --config /etc/openvpn/%i.conf ExecReload=/bin/kill -HUP $MAINPID WorkingDirectory=/etc/openvpn [Install] WantedBy=multi-user.target
Abilito il servizio all'avvio:
systemctl enable openvpn@apv.service
AUTOSSH:
aggiungo l'utente:
useradd -m -s /bin/false autossh
* creo il file config di ssh (esempio preso da apv): <code> Host autportven-prod HostName 10.0.20.30 Port 22 User extraway Localforward 8080 localhost:8080 Localforward 5432 localhost:5432 Localforward 19080 10.0.20.31:8080 Localforward 13306 10.0.20.31:3306 </code> creo le chiavi: su -s /bin/bash autossh ssh-keygen -t rsa copio le chiavi sul server prod del cliente: scp id_rsa.pub extraway@10.0.20.30:/tmp aggiungo in coda la chiave fra quelle autorizzate: cat /tmp/id_rsa.pub » /home/extraway/.ssh/authorized_keys cancello la chiave copiata: rm -f /tmp/id_rsa.pub configuro il mapping delle porte ssh: su -s /bin/bash autossh vim .ssh/config <code> Host autportven-prod HostName 10.0.20.30 Port 22 User extraway Localforward 8080 localhost:8080 Localforward 5432 localhost:5432 Localforward 19080 10.0.20.31:8080 Localforward 13306 10.0.20.31:3306 </code> controllo che il collegamento funzioni e mappi le porte regolarmente: su -s /bin/bash autossh ssh -g extraway@autportven-prod <code> root@VPN-APV:~# netstat -an |egrep '8080|5432|19080|13306'|egrep -v tcp6 tcp 0 0 0.0.0.0:9080 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:5432 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:8080 0.0.0.0:* LISTEN </code> creo il file di avvio di autossh in systemd: root@VPN-APV:/etc/systemd/system# vim /etc/systemd/system/3dautossh.service <code> [Unit] Description=AutoSSH service Wants=sys-devices-virtual-net-tun0.device After=sys-devices-virtual-net-tun0.device [Service] ExecStart=/usr/bin/autossh -M 8080 -v -q -N -o “ServerAliveInterval 60” -o “ServerAliveCountMax 3” extraway@autportven-prod -i /home/autossh/.ssh/id_rsa -g [Install] WantedBy=multi-user.target </code> testo lo script prima di abilitarlo: root@VPN-APV:/etc/openvpn# systemctl start 3dautossh.service root@VPN-APV:/etc/openvpn# systemctl status 3dautossh.service -l ● 3dautossh.service - AutoSSH service Loaded: loaded (/etc/systemd/system/3dautossh.service; enabled) Active: active (running) since gio 2016-03-31 15:25:50 CEST; 12s ago Main PID: 778 (autossh) CGroup: /system.slice/3dautossh.service ├─778 /usr/lib/autossh/autossh -M 8080 -q -N -o ServerAliveInterval 60 -o ServerAliveCountMax 3 extraway@autportven-prod -i /home/autossh/.ssh/id_rsa -g └─781 /usr/bin/ssh -L 8080:127.0.0.1:8080 -R 8080:127.0.0.1:8081 -q -N -o ServerAliveInterval 60 -o ServerAliveCountMax 3 -i /home/autossh/.ssh/id_rsa -g extraway@autportven-prod mar 31 15:25:50 VPN-APV autossh[778]: starting ssh (count 1) mar 31 15:25:50 VPN-APV autossh[778]: ssh child pid is 781 netstat -an |egrep '8080|5432|19080|13306'|egrep -v tcp6 tcp 0 0 0.0.0.0:5432 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:13306 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:19080 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:8080 0.0.0.0:* LISTEN abilito il servizio in autostart:**
systemctl enable 3dautossh