среда, 1 мая 2019 г.

How To Set Up an SSL Tunnel Using Stunnel on Ubuntu

Настройка Squid для начинающих (squid proxy acl) 
SQUID Часто Задаваемые Вопросы
How To Set Up an SSL Tunnel Using Stunnel on Ubuntu
Установка Squid


$ sudo apt install squid
$ sudo nano /etc/squid/squid.conf

Меняем:
 
#http_access deny all
http_access allow all

Сохранить.

$ sudo service squid restart

проверяем прокси
http <IP_server>:3128

После проверки прокси

На сервере запрещаем доступ кроме localhost
и меняем адрес порта  http_port:

$ sudo nano /etc/squid/squid.conf

Меняем:

#http_port 3128 
http_port 35732

http_access deny all
#http_access allow all

Сохранить.

$ sudo service squid restart

Установка  stunnel4 на сервере:


$ sudo apt update
$ sudo apt upgrade
$ sudo apt install stunnel4 -y

$ sudo nano /etc/stunnel/stunnel.conf

; Указываем PID файл работающего сервиса.
pid = /var/run/stunnel.pid

; Отключим отладочные режимы - 0
debug = 7
output = /var/log/stunnel.log
cert = /etc/stunnel/stunnel.pem

# performance tunning
socket = l:TCP_NODELAY=1
socket = r:TCP_NODELAY=1

; Полностью отключим уязвимые протоколы SSL версии 2 и 3.
options = NO_SSLv2
options = NO_SSLv3
options = NO_TLSv1
options = NO_TLSv1.1
ciphers = ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384
#ciphers = ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256

[squid]
accept = 443
connect = 127.0.0.1:35732

[ovpn]
accept = 53
connect = 127.0.0.1:1194



Сохранить.

$ sudo nano /etc/default/stunnel4

# Change to one to enable stunnel automatic startup
#ENABLED=0
ENABLED=1

Сохранить.

$ sudo openssl genrsa -out /etc/stunnel/key.pem 2048
$ sudo openssl req -new -x509 -key /etc/stunnel/key.pem -out /etc/stunnel/cert.pem -days 3650
$ sudo su -c "cat /etc/stunnel/key.pem /etc/stunnel/cert.pem >> /etc/stunnel/stunnel.pem"

$ sudo /etc/init.d/stunnel4 restart

Установка  stunnel4 на клиенте:


$ sudo apt update
$ sudo apt upgrade
$ sudo apt install stunnel4 -y

#<IP_server> = XXX.XXX.XXX.XXX

$ sudo nano /etc/stunnel/stunnel.conf

; Указываем PID файл работающего сервиса.
pid = /var/run/stunnel.pid

; Отключим отладочные режимы - 0
debug = 7
output = /var/log/stunnel.log
cert = /etc/stunnel/stunnel.pem

# performance tunning
socket = l:TCP_NODELAY=1
socket = r:TCP_NODELAY=1

; Полностью отключим уязвимые протоколы SSL версии 2 и 3.
options = NO_SSLv2 # Закомментировать для ubuntu 18.04
options = NO_SSLv3
options = NO_TLSv1
options = NO_TLSv1.1
ciphers = ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384
#ciphers = ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256

[squid]
client = yes
accept = 127.0.0.1:3128
connect = XXX.XXX.XXX.XXX:443

[ovpn]
client = yes
accept = 127.0.0.1:1194
connect = XXX.XXX.XXX.XXX:53

Сохранить.

Переносим с сервера файл с сертификатами в /etc/stunnel/stunnel.pem

$ sudo nano /etc/default/stunnel4

# Change to one to enable stunnel automatic startup
#ENABLED=0
ENABLED=1

Сохранить.
 
sudo /etc/init.d/stunnel4 restart

На клиенте проверяем прокси

проверяем прокси
http  127.0.0.1:3128


На сервере отключаем внешний интерфейс:

$ sudo nano /etc/squid/squid.conf

Меняем:

http_access deny all
#http_access allow all

Сохранить.

$ sudo service squid restart


------------------------------------------------------------------------------------------------------------------------- Перед настройкой ufw, OpenVPN должен быть настроен и проверен!!!
Доступ к серверу по ssh будет только через OpenVPN через stunnel !!!
Можно будет зайти только через Access console панели управления!

$ sudo ufw  reset
---------------------------------------------------------------------------------------------------------------------------

Настройка ufw
$ sudo nano /etc/ufw/before.rules

 Добавляем после:
# ok icmp codes for INPUT
-A ufw-before-input -p icmp --icmp-type echo-request -j DROP

комментируем:
#-A ufw-before-input -p icmp --icmp-type echo-request -j ACCEPT

Сохранить.



#$ sudo ufw disable && sudo ufw enable

$ sudo ufw default deny incoming
$ sudo ufw default allow outgoing
$ sudo ufw default allow forward
$ sudo ufw allow out on tun0
$ sudo ufw allow in on tun0
$ sudo  ufw allow 53/tcp
$ sudo  ufw allow 443/tcp
$ sudo  ufw allow 8888/tcp
$ sudo  ufw allow 35732/tcp
$ sudo ufw allow from x.x.x.x proto tcp to any port 22
$ sudo ufw disable && sudo ufw enable
$ sudo ufw status verbose
#$ sudo ufw status numbered
#$ sudo ufw delete 30



Комментариев нет:

Отправить комментарий