Скрыть объявление
Для безопасных сделок с продавцами рекомендуем пользоваться Гарант сервисом

Маскируем факт использования OpenVPN

Тема в разделе "Прочие", создана пользователем Eminence, 24/1/14.

  1. Eminence

    Eminence dark-service.xyz
    VIP

    Сообщения:
    1.001
    Симпатии:
    275
    Этот расклад помогает работать даже в анально огороженых странах, типа Сирии, Китая, ну и им подобным

    Настройка ведется на debian 7.0

    1.apt-get update
    2.apt-get upgrade
    3.убираем из списка источников ебучий диск
    nano /etc/apt/sources.list
    и ставим # перед deb cdrom:[Debian....
    4.apt-get install mc - ставим mc(что-то типа тотал командера)
    5. apt-get install openssl - ставим openssl
    6. apt-get install openvpn - ставим openvpn
    7. cd /usr/share/doc/openvpn/examples/easy-rsa/2.0/
    7. # редактируем переменные
    nano ./vars
    там по сути можете менять, или не менять всякую хуйню
    8. # инициализируем переменные и чистим папку keys и создаем сертификаты
    . ./vars
    . ./clean-all

    ./build-ca # корневой сертификат
    ./build-key-server server # сертификат сервера
    ./build-dh # ключ Диффи Хельман

    9. # если вы планируете использовать tls-auth, который позволит скрыть порт на котором сервер слушает vpn подключения, защитить от DoS атак и кое чего еще, то выполните еще и эту строку:
    openvpn --genkey --secret ./keys/ta.key

    10. # перенесем полученные сертификаты в рабочую папку
    cp ./keys/ca.crt /etc/openvpn
    cp ./keys/server.crt /etc/openvpn
    cp ./keys/server.key /etc/openvpn
    cp ./keys/dh1024.pem /etc/openvpn
    # Для tls-auth, выполните и эту строку:
    cp ./keys/ta.key /etc/openvpn

    11. # создадим сертификаты пользователей, сколько вам нужно (вводить данные не обязательно, поля будут принимать значения переменных по-умолчанию, достаточно просто нажимать Enter. В конце будет предложено ввести пароль (Enter export password), он защитит ваш сертификат от импорта недоброжелателями, хорошенько его запомните)
    ./build-key-pkcs12 vpn.android

    12. Ваяем конфиг сервака
    zcat /usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz > /etc/openvpn/server.conf
    nano /etc/openvpn/server.conf

    там меняем
    local IP_АДРЕС_ВАШЕГО_СЕРВЕРА
    и место tun, ставим tap
    push "redirect-gateway def1 bypass-dhcp"
    push "dhcp-option DNS 8.8.8.8"
    push "dhcp-option DNS 8.8.4.4"

    вот пример с моего тестового сервака


    13. # применим настройки файрвола через rc.local, можно сделать иначе, но я остановился на этом варианте.
    nano /etc/rc.local

    # добавляем строки до exit 0
    iptables -A FORWARD -s 10.8.0.0/24 -j ACCEPT
    iptables -A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
    iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE
    # сохраняем

    14. nano /etc/sysctl.conf

    # раскомментируем строчку
    net.ipv4.ip_forward=1


    15. reboot


    16. ставим ftp серва
    apt-get install vsftpd


    17. перебрасываем ключи для выгрузки в паблик папку фтп
    cp /usr/share/doc/openvpn/examples/easy-rsa/2.0/keys/testvpn.p12 /srv/ftp/
    cp /usr/share/doc/openvpn/examples/easy-rsa/2.0/keys/ta.key /srv/ftp/
    cd /srv/ftp/
    18. chmod -R 755 testvpn.p12
    chmod -R 755 ta.key
    права для выгрузки ставим
    19. удаляем оба ключа из паблик папки фтп
    rm -rf /srv/ftp/

    20. ребутаем сервак
    reboot

    21. По умолчанию сервер OpenVPN пишет логи обо всех подключениях в /var/log/daemon.log и /var/log/syslog. Если нужно, логи можно полностью отключить.

    21.1.nano /etc/default/openvpn
    добавляем

    daemon_log_redirect=1
    Теперь

    21.2 nano /etc/openvpn/server.conf
    добавляем

    log /dev/null
    применяем новую конфигурацию

    service openvpn restart

    22. делаем конфиг впн для компа

    client
    dev tap
    remote localhost 1194
    ping 10
    comp-lzo
    proto tcp
    tls-client
    remote-cert-tls server
    pkcs12 tapvpn.p12
    verb 3
    pull
    tls-auth ta.key 1


    23. И так впн настроен, но сейчас не работает, т.к. конфиги сделаны под работу вместе с stunnel, который мы сейчас и поставим, чтобы скрыть от провайдеров факт использования vpn.
    ставим его
    apt-get install stunnel4

    24. идем в папку с установленным
    cd /etc/stunnel/

    25. создаем сертификаты в 5 команд
    openssl genrsa -out server.key 4096
    openssl req -new -key server.key -out server.csr
    openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt
    cat server.key > server.pem && cat server.crt >> server.pem

    26. начнем править конфиг stunnel
    mv /etc/stunnel/stunnel.conf stunnel.conf.old
    nano /etc/stunnel/stunnel.conf

    27. вставляем данный конфиг и правим ip на свой


    sslVersion = all
    options = NO_SSLv2
    chroot = /var/lib/stunnel4/
    ; PID is created inside the chroot jail
    pid = /stunnel4.pid
    ; Debugging stuff (may useful for troubleshooting)
    ; debug = 7
    ; output = /var/log/stunnel4/stunnel4.log
    setuid = stunnel4
    setgid = stunnel4
    socket = l:TCP_NODELAY=1
    socket = r:TCP_NODELAY=1
    compression = zlib
    [openvpn]
    accept = 111.111.111.111:11446 #тут ебашим любой понравившийся и не занятый порт
    connect = 111.111.111.111:1194 # тут прописываем порт на которую повесили OpenVPN
    cert=/etc/stunnel/server.pem
    key=/etc/stunnel/server.key

    28. дальше правим тут
    nano /etc/default/stunnel4
    меняем:

    ENABLED=0

    На

    ENABLED=1

    29. запускаем
    /etc/init.d/stunnel4 start

    30. рестартим openvpn

    31. chkconfig stunnel4 on

    32. Идем на сайт stunnel и качаем версию для себя

    33. Ставим его, там на отъебись жмем все кнопки, при генерации сертификата опять же на отъебись все делаем, кроме пароля

    34. запускаем от администратора

    35. правой кнопкой в трее жмем на запущенную софтину и выбираем Edit stunnel.conf

    36. вписываем туда данный конфиг (ip на свой не забываем менять.

    compression = zlib
    [openvpn]
    client = yes
    accept = 127.0.0.1:1194
    connect = 111.111.111.111:11446

    37. все) можете скачать wireshark и поснифать траффик в этой связке и без нее, без нее будет палево с типом трафа Openvpn, с ней траф будет TCP


    P.S. бывает что openvpn барахлит и не подхватывает настройки ip с сервака, в этом случае перезапустите службу DHCP на компе.
     

Поделиться этой страницей