megavolt0

megavolt0

la guerre comme la guerre
Пикабушник
Дата рождения: 01 января 2001
поставил 148435 плюсов и 718 минусов
отредактировал 2 поста
проголосовал за 2 редактирования
Награды:
5 лет на Пикабуболее 1000 подписчиков
49К рейтинг 2952 подписчика 34 подписки 105 постов 52 в горячем

Защита от шифровальщиков. Делаем псевдопесочницу.

Сегодня я не буду про VPN, прокси и пр. Сегодня про личную информационную безопасность на своём компьютере.

Сейчас, как никогда, актуальна тема эпидемий вирусов, троянов и пр. И в большинстве своём их цель одна — заработать денег для своих создателей. Малварь может украсть ваши платежные данные и с ваших счетов будут списаны деньги. Но, в последнее время, основной тренд — это шифрование файлов жертвы. Шифруются или все подряд файлы, или наиболее ценные, по маске. Итог один: у вас появляется окно с требованием заплатить выкуп за расшифровку.


Различные антивирусные программы, в том числе именитых брендов, далеко не панацея. Малварь почти всегда будет использовать встроенные в операционную систему механизмы (в том числе и шифрования). Антивирусы крайне редко распознают свежих вредоносов с таким функционалом.


Стоит помнить, что основной канал распространения вредоносов — это электронная почта. Ничто не защитит вас так, как ваша осмотрительность и паранойя. Но надеяться на это полностью не стоит. Кроме того, наверняка, за вашим компьютером работает кто-то кроме вас, кто не столь осмотрителен и параноидален. Так что же делать?


Есть интересный подход к этой проблеме. Его реализацию можно найти в ряде источников в сети. И сейчас мы его рассмотрим.

Защита от шифровальщиков. Делаем псевдопесочницу. Малварь, Вирус, Шифровальщик, Троян, Информационная безопасность, Антивирус, Длиннопост

Итак, давайте рассуждать логически. Вредонос создан с целью заработка. Его преимущество во внезапности. Ведь как только о нём все узнают, как только специалисты разберут его по ноликам и единичкам, внесут в антивирусные базы, вредонос уже не сможет зарабатывать. И создатель вредоноса, как правило, принимает меры, чтобы защитить своё творение от изучения. Вредоносы, для анализа, запускают в специальной среде, где он не сможет натворить дел. Т.е. это некая искусственная среда (виртуальная машина, изолированная сеть) где за действиями вредоноса можно наблюдать, понять, как он работает. Такую искусственную среду называю "песочницей". В большинство вредоносов встраивают инструменты обнаружения работы в песочнице. И тогда он прекращает свою работу и удаляет себя. Ниже я расскажу вам, как сделать свой компьютер с ОС Windows похожим на такую песочницу. Таким образом мы введем вредонос в заблуждение и остановим его работу. Конечно это не панацея. Конечно нельзя ограничится только этими мерами. Но лишними они точно не будут.


Для начала сделаем свою сетевую карту похожей на сетевую карту виртуальной машины.


Узнаем название своей видеокарты. Открываем Пуск->Панель управления.


В Windows XP : Открываем "Сетевые подключения". Ищем свое "Подключение по локальной сети" или "Подключение беспроводной сети". Правой кнопкой мыши (далее - ПКМ) и "Свойства". В окошке "Подключение через" смотрим название нашего сетевого адаптера и запоминаем.


В Windows 7,8,10: Открываем "Сеть и интернет"->"Центр управления сетями и общим доступом". Слева ищем "Изменение параметров адаптера". Ищем свое "Подключение по локальной сети" или "Подключение беспроводной сети". ПКМ и "Свойства". В окошке "Подключение через" смотрим название нашего сетевого адаптера и запоминаем.


Нажмите сочетание клавишь Win+R (или Пуск->Выполнить) и введите

regedit

В Windows 8 и 10 права пользователя сильно обрезаны. Тут стоит сначала создать ярлык на рабочем столе с названием regedit. В строчке, где нужно указать расположение объекта, вписать просто "regedit" без кавычек. Потом щелкнуть правой кнопкой мыши на ярлыке и выбрать "Запуск от имени администратора".


Итак мы запустили RegEdit или редактор реестра Windows. Слева, в дереве реестра последовательно идём по "веткам"

HKEY_LOCAL_MACHINE -> SYSTEM -> CurrentControlSet -> Control -> Class

И ищем ветку, которая начинается с {4D36E972

Защита от шифровальщиков. Делаем псевдопесочницу. Малварь, Вирус, Шифровальщик, Троян, Информационная безопасность, Антивирус, Длиннопост

Здесь мы видим ветки с четырехзначными номерами (0000, 0001, 0002 и т.д.). Становимся на каждую из них последовательно, в правом окне ищем параметр с именем DriverDesc и значением, соответствующим названию вашего сетевого адаптера. Как только нашли, в правом окне на свободном месте ПКМ и Создать -> Строковый параметр. Имя ему вписываем

NetworkAddress

и жмём Enter для сохранения имени. Затем открываем наш новый ключ двойным кликом и вписываем значение

005056xxxxxx

где вместо xxxxxx любые случайные 6 цифр. И жмём ОК. Теперь, после перезагрузки, у нашего сетевого адаптера будет MAC адрес из диапазона системы виртуализации VMware.


Внимание: если вы находитесь в корпоративной среде или сетевая карта компьютера подключена напрямую (без маршрутизатора) к сетям провайдера, то вы можете остаться без связи. Если что-то пошло не так, удалите параметр NetworkAddress и перезагрузите компьютер.


А теперь сделаем самое интересное. Воспользуемся скриптом FSP (fake sandbox process). Скачать его можно здесь.

Защита от шифровальщиков. Делаем псевдопесочницу. Малварь, Вирус, Шифровальщик, Троян, Информационная безопасность, Антивирус, Длиннопост

Распаковываем архив. Внутри папка installer, а в ней файл fake-sandbox-installer.bat. Запустим его, на все вопросы ответим утвердительно путем ввода буквы y и нажатия Enter.


В автозагрузке (Пуск -> Программы (Все программы) -> Автозагрузка) должен появится fake_sandbox


После перезагрузки компютера в Диспетчере задач (для вызова Win+R, набрать taskmgr и нажать ОК. Выбрать вкладку "Процессы".) появятся фейковые процессы "WinDbg.exe","idaq.exe","wireshark.exe", "vmacthlp.exe", "VBoxService.exe", "VBoxTray.exe", "procmon.exe", "ollydbg.exe", "vmware-tray.exe", "idag.exe", "ImmunityDebugger.exe" и пр. На самом деле это запущен безобидный ping.exe, но под разными именами. А вот малварь, видя такой набор специализированных процессов, подумает, что её изучают в песочнице и самоубъётся.


Ну и вишенкой на торте: найдите файл vssadmin.exe в папке C:\Windows\System32 и переименуйте его как-нибудь. Естественно для этого нужны права администратора. Vssadmin - это инструмент управления теневыми копиями. Вредоносы с помощью него удаляют ваши бэкапы.

Всем безопасности и анонимности, много и бесплатно.


З.Ы. По моим статьям я получаю много вопросов. А еще многие хотят просто поговорит на околоИБэшные темы. В общем расчехлил я старый говорильный инструмент. Подробности здесь.

Показать полностью 3

Как измерить скорость канала VPS

Многие, решив воспользовать моими инструкциями по vpn и прокси спрашивают, как в процессе выбора и эксплуатации VPS определить реальную скорость его канала. Я сделал такую инструкциию в своём блоге, но ссылку на неё приходится давать часто. Скоро меня за рекламу блога забанят :)

Поэтому напишу её здесь. Итак, измеряем скорость.

Как измерить скорость канала VPS VPS, Linux, Speedtest, Speedtestnet, Инструкция, Настройка

Это удобно сделать с помощью известного сервиса speedtest.net. Но графического интерфейса, а тем более браузера на удалённой машине нет. Поэтому будем использовать специальный консольный клиент Speedtest-cli.

Установим python:

yum -y install python

Скачаем сам клиент. Выполним последовательно команды:

cd ~


wget -O speedtest-cli https://raw.githubusercontent.com/sivel/speedtest-cli/master...


chmod +x speedtest-cli

И запустим его

./speedtest-cli

Чтобы увидеть результаты измерений не в битах, а в байтах, используем ключ --bytes

./speedtest-cli --bytes

Чтобы получить ссылку на результаты измерений, используем ключ --share

./speedtest-cli --share

Можно использовать оба ключа вместе

./speedtest-cli --share --bytes

При измерении скрипт выбирает ближайшую к вашему VPS ноду speedtest.net

Если вы хотите сами выбрать точку измерений, то выполните следующее:

Получим список нод с сайта speedtest.net

wget http://www.speedtest.net/speedtest-servers.php

Файл большой, можете посмотреть его содержимое любым способом, если интересно.

Нам нужно найти конкретную ноду в конкретном городе или стране. Это можно сделать командой:

grep 'city-name' speedtest-servers.php | egrep -o 'id="[0-9]{4}"'

Где ‘city-name’ название города на английском в кавычках. Например:

grep 'Moscow' speedtest-servers.php | egrep -o 'id="[0-9]{4}"'

В ответ получим список ID нужных нам нод. Теперь можем проверить скорость от VPS до выбранной ноды. Например для ноды с ID 2904

./speedtest-cli --server 2904

Естественно можно добавить и другие ключи

./speedtest-cli --share --bytes --server 2904
Показать полностью 1

Госдума одобрила блокировку «зеркал» пиратских сайтов

Госдума одобрила блокировку «зеркал» пиратских сайтов.

Госдума одобрила блокировку «зеркал» пиратских сайтов Госдума, Запрет, Пиратская копия, Зеркало, Законопроект, Пираты

Законопроект поддержали 405 депутатов, никто из присутствовавших на заседании не воздержался и не проголосовал против.


Законопроект вводит понятие копия заблокированного сайта — она представляет собой сайт, «сходный до смешения» с заблокированным ресурсом, доступ к которому ограничен по решению суда.


Решение о признании какого-либо сайта «зеркалом» будет принимать Минкомсвязи по обращению правообладателей или федеральных органов власти. При принятии решения министерство будет руководствоваться методиками, которые должно утвердить правительство.


О своём решении Минкомсвязи должно уведомить владельца «зеркала» и Роскомнадзор, после чего надзорное ведомство должно потребовать от операторов связи заблокировать доступ к «зеркалу».


Законопроект обязывает поисковые системы удалять из выдачи ссылки на пиратские сайты и их «зеркала».


Теперь законопроект должен рассмотреть Совет Федерации и подписать президент Владимир Путин. В случае окончательного одобрения он вступит в силу с 1 октября 2017 года.


В процессе подготовки законопроекта Минкульт предлагал ввести процедуру досудебной блокировки «пиратских» сайтов по требованию правообладателей, однако во втором чтении Госдума отклонила эту поправку.

Источник.

Показать полностью 1

Глава ФСБ попросил Думу ускорить принятие законов о регулировании в Сети

Глава ФСБ попросил Думу ускорить принятие законов о регулировании в Сети ФСБ, Госдума, Регулирование, Запрет, Ограничения, Свобода в сети, Текст, Длиннопост

В пятницу, 23 июня, в Государственной думе состоялся правительственный час с участием директора Федеральной службы безопасности (ФСБ) Александра Бортникова «Об информационной безопасности Российской Федерации».


Встреча прошла в закрытом режиме. Председатель Госдумы Вячеслав Володин попросил депутатов не пользоваться мобильными телефонами и другими средствами связи, а также не разглашать подробностей встречи. Кроме того, во время визита Бортникова в нижней палате не работал Wi-Fi. О подробностях встречи РБК рассказали пять депутатов.


«По итогам информации, которую мы услышали, мы посмотрим, есть ли необходимость вносить изменения и дополнения в действующие законы», — заявил на брифинге глава думского комитета по безопасности и противодействию коррупции Василий Пискарев («Единая Россия»). Он отметил, что о новых запретах речи не шло: «Не должны быть затронуты права и интересы законопослушных граждан и нарушены конституционные принципы охраны частной жизни человека».


Речи о том, чтобы «взять все и запретить, не шло», подтвердил РБК другой депутат. Впрочем, «Бортников просил депутатов ускорить принятие нескольких законопроектов, в том числе о критической информационной инфраструктуре, о мессенджерах, об анонимайзерах», — отметили два собеседника РБК.


Бортников обсуждал общие вопросы безопасности — существующих информационных угроз, противодействия хакерским атакам, сказали РБК депутаты. Речь в том числе шла «о необходимости более активной работы по созданию российского ПО, на это внимание Бортникова обратили сами депутаты». Еще один собеседник в Думе рассказал: «Говорили, в частности, о создании российских мессенджеров».


«В докладе [Бортникова] и вопросах к нему был затронут широкий круг тем», — рассказал журналистам глава думского комитета по информполитике Леонид Левин («Справедливая Россия»). По его словам, речь шла о критической информационной инфраструктуре, инцидентах с вирусом-вымогателем, степени защищенности страны от хакерских угроз, импортозамещении программного обеспечения, борьбе с противоправным контентом, в том числе от террористов.


Законопроект об ограничении анонимности в мессенджерах был принят депутатами в первом чтении 14 июня. Пользователям мессенджеров будут присваивать абонентские номера, для чего организатор обмена сообщениями и операторы связи должны заключить договор об идентификации. В законопроекте предлагается обеспечить в мессенджерах техническую возможность отказаться от получения сообщений от других пользователей. В сервисах также нужно будет предусмотреть возможность рассылок сообщений от органов власти.


В свою очередь, законопроект, который запрещает использование технологий, открывающих доступ к заблокированным сайтам, был внесен две недели назад и накануне одобрен профильным комитетом. Согласно поправкам Роскомнадзор получает право блокировать сайты, где будет размещена информация о средствах обхода блокировок. Законопроект предписывает операторам поисковых систем прекращать на территории России выдачу ссылок на информационные ресурсы, включенные в перечень Роскомнадзора.


Источник.


З.Ы. если хотите, напишу как поднять свой мессенджер с шифрованием

Показать полностью 1

Анонимность в интернете своими руками. Подключение клиентов к SoftEther VPN Server

Начало про настройку сервера тут и тут.


В предыдущей статье мы установили и настроли SoftEther VPN Server. Теперь подключим к нему клиентов.


Откроем страницу загрузок SoftEther и укажем следующие параметры:

Анонимность в интернете своими руками. Подключение клиентов к SoftEther VPN Server VPS, VPN, Softether, iOS, Android, Настройки, Инструкция, Длиннопост

Скачем клиент по полученной ссылке и запустим установку. Выберем устанавливаемый компонент:

Анонимность в интернете своими руками. Подключение клиентов к SoftEther VPN Server VPS, VPN, Softether, iOS, Android, Настройки, Инструкция, Длиннопост

В остальных окнах  со всем соглашаемся. После установки будет запущен менеджер подключений.

Анонимность в интернете своими руками. Подключение клиентов к SoftEther VPN Server VPS, VPN, Softether, iOS, Android, Настройки, Инструкция, Длиннопост

Жмём «Add VPN Connection». Нам будет предложено сделать виртуальный сетевой адаптер. Соглашаемся.

Анонимность в интернете своими руками. Подключение клиентов к SoftEther VPN Server VPS, VPN, Softether, iOS, Android, Настройки, Инструкция, Длиннопост

Придумаем ему любое название

Анонимность в интернете своими руками. Подключение клиентов к SoftEther VPN Server VPS, VPN, Softether, iOS, Android, Настройки, Инструкция, Длиннопост

Создание адаптера займет некоторое время

Анонимность в интернете своими руками. Подключение клиентов к SoftEther VPN Server VPS, VPN, Softether, iOS, Android, Настройки, Инструкция, Длиннопост

После того, как виртуальный адаптер создан, опять жмём «Add VPN Connection». Заполняем параметры как на скриншоте:

Анонимность в интернете своими руками. Подключение клиентов к SoftEther VPN Server VPS, VPN, Softether, iOS, Android, Настройки, Инструкция, Длиннопост

Разберём по шагам:

1. Любое название для этого соединения.

2. Выбираем аутентификацию по сертификатам.

3. Указываем то имя пользователя, которое мы указали при настройке сервера.

4. После нажатия кнопки указываем сертификаты, которые были созданы при настройке сервера (сначала открытый, потом закрытый).

6. Вписываем имя сервера, которое мы указали при настройке Dynamic DNS или IP-адрес нашей VPS.

7. Порт подключения 443.

8. Имя виртуального хаба. Если все настройки до этого правильные, его имя будет подтянуто с сервера и появится в выпадающем списке.


Появится строчка с нашим соединением

Анонимность в интернете своими руками. Подключение клиентов к SoftEther VPN Server VPS, VPN, Softether, iOS, Android, Настройки, Инструкция, Длиннопост

Щелкнем по нему двойным кликом. Если всё хорошо, то появится соответствующее уведомление

Анонимность в интернете своими руками. Подключение клиентов к SoftEther VPN Server VPS, VPN, Softether, iOS, Android, Настройки, Инструкция, Длиннопост

Все, ваш компьютер подключен к VPN.


Теперь настроим наш смартфон.


В настоящее время не существует «родного» клиента SoftEther для IOS и Android. Можно, конечно, использовать клиента OpenVPN, но мы пока не будеи этого делать и воспользуемся встроенными в операционную систему механизмами подключения к VPN. При этом, текущая версия SoftEther при таком способе подключения не позволит нам использовать сертификаты. Подключаться будем по ключу.


Для начала создадим пользователя. Открываем Server Manager, жмём «Manage Virtual Hub» -> «Manage Users» -> «New». Вписываем имя для нового клиента и придумываем длинный, стойкий пароль.

Анонимность в интернете своими руками. Подключение клиентов к SoftEther VPN Server VPS, VPN, Softether, iOS, Android, Настройки, Инструкция, Длиннопост

Жмём ОК. Пользователь создан.


Теперь берём смартфон на Android. Открываем настройки.

Анонимность в интернете своими руками. Подключение клиентов к SoftEther VPN Server VPS, VPN, Softether, iOS, Android, Настройки, Инструкция, Длиннопост
Анонимность в интернете своими руками. Подключение клиентов к SoftEther VPN Server VPS, VPN, Softether, iOS, Android, Настройки, Инструкция, Длиннопост

Внизу окна кнопка с плюсиком. Жмём её.

Анонимность в интернете своими руками. Подключение клиентов к SoftEther VPN Server VPS, VPN, Softether, iOS, Android, Настройки, Инструкция, Длиннопост

Название сети — любое понятное вам имя.

Общий ключ IP Sec указываем тот, который мы вписывали при настройке сервера вот в этом окне

Анонимность в интернете своими руками. Подключение клиентов к SoftEther VPN Server VPS, VPN, Softether, iOS, Android, Настройки, Инструкция, Длиннопост

В дополнительных настройках указываем следующее

Анонимность в интернете своими руками. Подключение клиентов к SoftEther VPN Server VPS, VPN, Softether, iOS, Android, Настройки, Инструкция, Длиннопост

И жмём «Сохранить»

В списке появится наше подключение

Анонимность в интернете своими руками. Подключение клиентов к SoftEther VPN Server VPS, VPN, Softether, iOS, Android, Настройки, Инструкция, Длиннопост

Жмем на него и вводим имя пользователя и пароль. Мы их настраивали выше.


Если всё сделано без ошибок, смартфон подключиться. Вверху экрана появится ключик. Скорее всего андроид предупредит вас, что соединение может отслеживаться VPN сервером. Это нормально. Сервер-то наш.


Для IOS настройки абсолютно такие же. И точно также вы можете подключить любое устройство с поддержкой L2TP/IPSec PSK

Показать полностью 16

Анонимность в интернете своими руками. Установка и настройка SoftEther VPN Server (Часть2)

Продолжение.

Часть 1


Пробуем запустить dnsmasq

systemctl restart dnsmasq

и смотрим состояние

systemctl status dnsmasq

Должно быть типа такого:

Анонимность в интернете своими руками. Установка и настройка SoftEther VPN Server (Часть2) VPN, VPS, Softether, Linux, Настройки, Инструкция, Длиннопост

Если не так, то смотрим в лог /var/log/messages


Если есть ошибка "warning: interface tap_softether does not currently exist", то либо вы ошиблись где-то в настройках ранее, либо не запущен VPN-сервер. Как запустить, написано выше.


Если ошибка "failed to bind DHCP server socket: Address already in use", то смотрим вывод команды

netstat -anlp | grep -w LISTEN

Скорее всего увидим что-то типа:

tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 1/init
tcp 0 0 0.0.0.0:53 0.0.0.0:* LISTEN 19819/dnsmasq
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 110/sshd
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 196/sendmail: accep
tcp6 0 0 :::111 :::* LISTEN 15492/rpcbind
tcp6 0 0 :::80 :::* LISTEN 104/httpd
tcp6 0 0 :::53 :::* LISTEN 19819/dnsmasq
tcp6 0 0 :::22 :::* LISTEN 110/sshd

Видим, что висит процесс dnsmasq и занимает интерфейс. Запоминаем число перед /dnsmasq (в моём случае это 19819) и используем его в команде

kill 19819

После этого пробуем

systemctl start dnsmasq
systemctl status dnsmasq

Всё должно стать хорошо.


Теперь открываем наш скрипт запуска VPN-сервера /etc/rc.d/init.d/sevpnserver и редактируем по образцу (можно просто очистить содержимое и вставить отсюда):

#!/bin/sh
#
# chkconfig: 2345 20 80
# description: SoftEther VPN Server
#
#
#
#
DAEMON=/etc/sevpn/vpnserver/vpnserver
LOCK=/var/lock/vpnserver/vpnserver
TAP_ADDR=10.8.0.1
test -x $DAEMON || exit 0
case "$1" in
start)
echo Starting SoftEther VPN Server...
$DAEMON start
touch $LOCK
sleep 3
/sbin/ifconfig tap_softether $TAP_ADDR
sleep 3
systemctl restart dnsmasq
;;
stop)
echo Stopping SoftEther VPN Server...
$DAEMON stop
rm $LOCK
;;
restart|reload)
echo Reloading SoftEther VPN Server...
$DAEMON stop
sleep 5
$DAEMON start
sleep 3
/sbin/ifconfig tap_softether $TAP_ADDR
sleep 3
systemctl restart dnsmasq
;;
*)
echo Usage: $0 "{start|stop|restart}"
exit 1
esac
exit 0

По традиции скрипты и конфиги с нормальным форматированием здесь

Сохраняем.


Добавим скрипт в автозагрузку

chkconfig sevpnserver on

Проверить, что скрипт добавился можно командой

chkconfig --list

В выводе команды должна присутствовать строчка

sevpnserver 0:off 1:off 2:on 3:on 4:on 5:on 6:off

Теперь идём в статью про файрволл и маршрутизацию и делаем всё, как там написано, но с единственным отличием: содержимое файла ipt-set взять указанное ниже.


В переменную IP_EXT вместо 123.123.123.123 вписываем IP-адрес своего VPS.

#!/bin/sh
IF_EXT="venet0"
IF_VPN="tap_softether"
VPN_PORT="443"
IPT="/sbin/iptables"
IPT6="/sbin/ip6tables"
IP_EXT="123.123.123.123"
# flush
$IPT --flush
$IPT -t nat --flush
$IPT -t mangle --flush
$IPT -X
$IPT6 --flush
# loopback
$IPT -A INPUT -i lo -j ACCEPT
$IPT -A OUTPUT -o lo -j ACCEPT
# default
$IPT -P INPUT DROP
$IPT -P OUTPUT DROP
$IPT -P FORWARD DROP
$IPT6 -P INPUT DROP
$IPT6 -P OUTPUT DROP
$IPT6 -P FORWARD DROP
# allow forwarding
echo 1 > /proc/sys/net/ipv4/ip_forward
# NAT
# #########################################
# SNAT - local users to out internet
$IPT -t nat -A POSTROUTING -s 10.8.0.0/24 -j SNAT --to-source $IP_EXT
# INPUT chain
# #########################################
$IPT -A INPUT -p tcp ! --syn -m state --state NEW -j DROP
$IPT -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
# ssh
$IPT -A INPUT -i $IF_EXT -p tcp --dport 22 -j ACCEPT
# DNS
$IPT -A INPUT -i $IF_VPN -p udp --dport 53 -s 10.8.0.0/24 -j ACCEPT
# vpn
$IPT -A INPUT -i $IF_VPN -p icmp -s 10.8.0.0/24 -j ACCEPT
$IPT -A INPUT -i $IF_EXT -p tcp --dport $VPN_PORT -j ACCEPT
$IPT -A INPUT -p udp --dport 500 -j ACCEPT
$IPT -A INPUT -p udp --dport 4500 -j ACCEPT
$IPT -N syn_flood
$IPT -A INPUT -p tcp --syn -j syn_flood
$IPT -A syn_flood -m limit --limit 500/s --limit-burst 2000 -j RETURN
$IPT -A syn_flood -j DROP
# FORWARD chain
# #########################################
$IPT -A FORWARD -i $IF_VPN -o $IF_EXT -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
$IPT -A FORWARD -i $IF_EXT -o $IF_VPN -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPT -A FORWARD -s 10.8.0.0/24 -d 10.8.0.0/24 -j ACCEPT
# OUTPUT chain
# #########################################
$IPT -A OUTPUT -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT

В Server Manager откроем «Encryption and Network»

Анонимность в интернете своими руками. Установка и настройка SoftEther VPN Server (Часть2) VPN, VPS, Softether, Linux, Настройки, Инструкция, Длиннопост

И выставляем опции как на скриншоте (обведено красным)

Анонимность в интернете своими руками. Установка и настройка SoftEther VPN Server (Часть2) VPN, VPS, Softether, Linux, Настройки, Инструкция, Длиннопост

Жмём Ок.

Перезагрузим VPS командой из консоли

reboot

Теперь наш сервер готов принимать подключения.

Как их настроить, читайте здесь.

Показать полностью 2

Анонимность в интернете своими руками. Установка и настройка SoftEther VPN Server (Часть1)

Ранее мы рассмотрели, как построить собственную VPN сеть на основе решения OpenVPN (1 2 3 4). Это очень хорошее решение, но есть ряд общих недостатков для конечного пользователя:

- относительно сложные установка и настройка;

- обязательное наличие на сервере TUN/TAP;

- трафик OpenVPN легко детектируется всякими Роскомнадзорами.


При этом OpenVPN является безусловным лидером с подтвержденной криптоустойчивостью. И если у вас нет необходимости маскировать VPN трафик под «обычный», то пользуйтесь OpenVPN.


А теперь отличная новость для тех кто в России/Украине/Казахстане/Китае и других странах, с контролем сети интернет на государственном уровне.


Встречайте решение от наших японских товарищей: SoftEther VPN.


SoftEther VPN — это мощный мультипротокольный VPN-сервер под лицензией CPLv2 (т.е. совершенно свободный к распространению и использованию).


Решение обладает огромным спектром возможностей:

- собственный протокол SSL-VPN, который не отличим от HTTPS траффика. При этом он может работать не только по TCP, но и по UDP, и, даже, ICMP.

- Поддерживает большинство существующих протоколов VPN: L2TP/IPsec, MS-SSTP, OpenVPN, L2TPv3 и EtherIP, причем для L2TP указана строгая совместимость со встроенными клиентами в iOS и Android. Т.е. к серверу SoftEther VPN вы можете подключить клиента OpenVPN или подключиться с использованием встроенных VPN-механизмов Windows. Причем одновременно.

- Сервер может быть установлен на Windows, Linux, OS X, FreeBSD и Solaris.

- И теоретически и практически работает быстрее OpenVPN.

- Имеет GUI через который можно управлять несколькими серверами.

- Ему не нужно TUN/TAP.

- Имеет встроенный NAT и DHCP. Не нужно настраивать iptables.


Нужно понимать, что хотя SoftEther VPN достаточно стабильное и надежное решение, но оно всё еще в стадии beta. А значит, теоретически, в его работе возможны неожиданные ошибки.


Хватит читать, нужно пробовать. Арендуем себе дешёвенький VPS, выполним его предварительную настройку. Исходим из того, что вы подключились к серверу по SSH через putty и WinCSP.


Идём на страницу загрузки SoftEther VPN и выбираем нужный дистрибутив.

Анонимность в интернете своими руками. Установка и настройка SoftEther VPN Server (Часть1) VPN, Linux, VPS, Softether, Инструкция, Длиннопост

Получив ссылку на нужный дистрибутив, переходим к консоли

cd /tmp/
wget http://www.softether-download.com/files/softether/v4.22-9634...

Также нам понадобиться некоторой набор инструментов:

yum -y groupinstall "Development Tools"
yum -y install gcc zlib-devel openssl-devel readline-devel ncurses-devel
yum -y install system-config-network-tui system-config-firewall-tui
yum -y install policycoreutils-python
yum -y install net-tools

Переведем SELinux в разрешающий (permissive) режим:

setenforce 0

Отключим файрвол:

system-config-firewall-tui
Анонимность в интернете своими руками. Установка и настройка SoftEther VPN Server (Часть1) VPN, Linux, VPS, Softether, Инструкция, Длиннопост

Убедимся, что в строчке «Firewall: [ ] Enabled нет звездочки *


Если она там есть, то используя кнопку TAB дл перемещения и пробел для «нажатия» убираем её. Затем переходим на кнопку ОК и нажимаем её. Если звёздочки нет, то сразу на ОК. В появившейся форме

Анонимность в интернете своими руками. Установка и настройка SoftEther VPN Server (Часть1) VPN, Linux, VPS, Softether, Инструкция, Длиннопост

«нажимаем» Yes.


Создадим папку для нашего сервера:

mkdir /etc/sevpn/

Теперь распакуем скачанный ранее архив с VPN-сервером, установим права на папку и перейдём в неё:

tar xzvf 64bit_-_Intel_x64_or_AMD64/softether-vpnserver-v4.22-9634-beta-2016.11.27-linux-x64-64bit.tar.gz -C /etc/sevpn/
chmod -R 744 /etc/sevpn
cd /etc/sevpn/vpnserver

Скомпилируем наш сервер:

make

На все вопросы о лицензионных соглашениях вводим 1 и жмём Enter.

Сделаем скрипт запуска. Для этого в папке /etc/rc.d/init.d создадим файл sevpnserver со следующим содержимым:

#!/bin/sh
#
# chkconfig: 2345 20 80
# description: SoftEther VPN Server
#
#
#
#
DAEMON=/etc/sevpn/vpnserver/vpnserver
LOCK=/var/lock/vpnserver/vpnserver
test -x $DAEMON || exit 0
case "$1" in
start)
echo Starting SoftEther VPN Server...
$DAEMON start
touch $LOCK
;;
stop)
echo Stopping SoftEther VPN Server...
$DAEMON stop
rm $LOCK
;;
restart|reload)
echo Reloading SoftEther VPN Server...
$DAEMON stop
sleep 3
$DAEMON start
;;
*)
echo Usage: $0 "{start|stop|restart}"
exit 1
esac
exit 0

По традиции пикабу не позволяет выкладывать скрипты и конфиги в нормальном структурированном виде. Работать будет и так, за красотой идём сюда.

И установим ему права 0755


Создадим папку /var/lock/vpnserver

mkdir /var/lock/vpnserver

Проверим работу сервера.

Введём команды:

/etc/sevpn/vpnserver/vpncmd

В появившемся запросе введём 3 и нажмём Enter.

Далее введём команду

check

Будет выполнено шесть тестов и в ответ на каждый мы должны получить Pass

Анонимность в интернете своими руками. Установка и настройка SoftEther VPN Server (Часть1) VPN, Linux, VPS, Softether, Инструкция, Длиннопост

Отлично. Выходим из VPN Tools командой

exit

Запустим наш сервер

/etc/rc.d/init.d/sevpnserver start

Опять вводим

/etc/sevpn/vpnserver/vpncmd

Вводим 1, а потом два раза жмём Enter. Появится приглашение:

VPN Server>

Вводим

ServerPasswordSet

И вводим два раза пароль. Это административный пароль сервера. Он открывает доступ ко всем настройкам и управлению. Пароль должен быть стойким к перебору: не менее 10 символов, верхний и нижний регистр, цифры, спецсимволы.


Чтобы выйти из режима администрирования (когда приглашение командной строки имеет вид VPN Server> ) введите

exit

Теперь установим на свой компьютер консоль управления для настройки сервера. Опять идём на страницу проекта и выбираем

Анонимность в интернете своими руками. Установка и настройка SoftEther VPN Server (Часть1) VPN, Linux, VPS, Softether, Инструкция, Длиннопост

Скачиваем Server Manager по получившейся ссылке и запускаем установку.

Анонимность в интернете своими руками. Установка и настройка SoftEther VPN Server (Часть1) VPN, Linux, VPS, Softether, Инструкция, Длиннопост
Анонимность в интернете своими руками. Установка и настройка SoftEther VPN Server (Часть1) VPN, Linux, VPS, Softether, Инструкция, Длиннопост

Затем всё время «Далее» и «Готово». В появившемся окне

Анонимность в интернете своими руками. Установка и настройка SoftEther VPN Server (Часть1) VPN, Linux, VPS, Softether, Инструкция, Длиннопост

Жмём «New Setting» и заполняем параметры Setting Name (любое понравившееся имя) и HostName (IP-адрес вашего сервера)

Анонимность в интернете своими руками. Установка и настройка SoftEther VPN Server (Часть1) VPN, Linux, VPS, Softether, Инструкция, Длиннопост

Жмём Connect и вводим административный пароль VPN сервера. Если пароль введен правильно, консоль подключится и запросит первоначальную конфигурацию. Выбираем как на скриншоте:

Анонимность в интернете своими руками. Установка и настройка SoftEther VPN Server (Часть1) VPN, Linux, VPS, Softether, Инструкция, Длиннопост

Соглашаемся

Анонимность в интернете своими руками. Установка и настройка SoftEther VPN Server (Часть1) VPN, Linux, VPS, Softether, Инструкция, Длиннопост

Придумываем имя виртуальному хабу

Анонимность в интернете своими руками. Установка и настройка SoftEther VPN Server (Часть1) VPN, Linux, VPS, Softether, Инструкция, Длиннопост

На следующем шаге мы можем выбрать имя для нашего VPN сервера. Это позволит в дальней, благодаря службе Dynamic DNS, обращаться к нашему серверу не только по IP-адресу, но и по имени (обведено зелёным цветом).

Анонимность в интернете своими руками. Установка и настройка SoftEther VPN Server (Часть1) VPN, Linux, VPS, Softether, Инструкция, Длиннопост

Выберем протокол и придумаем PSK ключ (т.е. еще один стойкий пароль). Этот ключ, по сути, секретная фраза необходимая для первоначального соединения между клиентом и сервером VPN. SoftEther не рекомендует делать его больше 9 символов, так это вроде вызывает баги в Android.

Анонимность в интернете своими руками. Установка и настройка SoftEther VPN Server (Часть1) VPN, Linux, VPS, Softether, Инструкция, Длиннопост

И откажемся от VPN Azure

Анонимность в интернете своими руками. Установка и настройка SoftEther VPN Server (Часть1) VPN, Linux, VPS, Softether, Инструкция, Длиннопост

На следующем шаге создадим нового пользователя

Анонимность в интернете своими руками. Установка и настройка SoftEther VPN Server (Часть1) VPN, Linux, VPS, Softether, Инструкция, Длиннопост

Настраиваем пользователя. Этот пользователь будет у нас для подключения с компьютера/ноутбука (т.е. Windows или Linux). Обязательно заполняем поле User Name. Поля Full Name и Note не обязательны. Выбираем аутентификацию по сертификатам (Individual Certificate Authentication) и жмём Create Certificate

Анонимность в интернете своими руками. Установка и настройка SoftEther VPN Server (Часть1) VPN, Linux, VPS, Softether, Инструкция, Длиннопост

Заполняем необходимые поля. Поля Organization, Country, State, Locale заполняем любыми значениями. Длительность действия сертификата рекомендую ставить 365 дней (но тут уж как сами захотите), длину ключа 4096 бит.

Анонимность в интернете своими руками. Установка и настройка SoftEther VPN Server (Часть1) VPN, Linux, VPS, Softether, Инструкция, Длиннопост

Жмём ОК и выбираем формат и место сохранения ключей. Также вы можете указать пароль для сертификата (обведено зелёным). Тогда при каждом подключении клиента к серверу нужно будет вводить пароль. Так, несомненно, лучше, но не очень удобно. Выбирать вам. Я всегда рекомендую делать сертификаты с паролями для тех устройств, которые вы не можете полностью контролировать (рабочий компьютер) или которые можно легко потерять, т.е. носимые устройства (ноутбук, смартфон).

Анонимность в интернете своими руками. Установка и настройка SoftEther VPN Server (Часть1) VPN, Linux, VPS, Softether, Инструкция, Длиннопост

Нажимаем ОК и указываем имя файла сертификатов (будут сформированы открытый и закрытый сертификаты) и куда сохранить . В окне создания пользователя жмём ОК.


В окне VPN Easy Setup Tasks жмём Close.


Теперь выбираем наш хаб и жмём Manage Virtual Hub

Анонимность в интернете своими руками. Установка и настройка SoftEther VPN Server (Часть1) VPN, Linux, VPS, Softether, Инструкция, Длиннопост

Зайдем в настройки NAT

Анонимность в интернете своими руками. Установка и настройка SoftEther VPN Server (Часть1) VPN, Linux, VPS, Softether, Инструкция, Длиннопост
Анонимность в интернете своими руками. Установка и настройка SoftEther VPN Server (Часть1) VPN, Linux, VPS, Softether, Инструкция, Длиннопост

Проверяем, что SecureNAT выключен (обведённая зелёным кнопка не активна) и жмём SecureNAT Configuration

Анонимность в интернете своими руками. Установка и настройка SoftEther VPN Server (Часть1) VPN, Linux, VPS, Softether, Инструкция, Длиннопост

Настраиваем как на скриншоте и жмём OK и Exit


Теперь настроим Local Bridge (мост, по которому VPN будет общаться с внешним миром).

Анонимность в интернете своими руками. Установка и настройка SoftEther VPN Server (Часть1) VPN, Linux, VPS, Softether, Инструкция, Длиннопост

Если появится предупреждение о недоступности физического LAN адаптера, просто жмём OK

Анонимность в интернете своими руками. Установка и настройка SoftEther VPN Server (Часть1) VPN, Linux, VPS, Softether, Инструкция, Длиннопост

И жмём Exit

Проверим, что наш виртуальный интерфейс действительно создался. В консоли putty выполним команду

ifconfig tap_softether

Должны получить примерно такой вывод

[root@vps00000 ~]# ifconfig tap_softether
tap_softether: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet6 fe80::2ac:ceff:fec4:484f prefixlen 64 scopeid 0x20<link>
ether 00:ac:ce:c4:49:4f txqueuelen 500 (Ethernet)
RX packets 158 bytes 10938 (10.6 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 136 bytes 11232 (10.9 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

Установим DNSMasq

yum -y install dnsmasq

Создадим файл /etc/dnsmasq.conf со следующим содержимым

interface=tap_softether
dhcp-range=tap_softether,10.8.0.2,10.8.0.200,12h
dhcp-option=tap_softether,3,10.8.0.1
server=8.8.8.8

IP адреса вписываете те, которые мы запомнили из настроек SecureNAT (см. выше). Сохраняем и закрываем файл.


Лимит на картинки кончился. Потому конец первой части. Часть вторая.

Показать полностью 25

Хотим свободы и анонимности в сети или еще раз про свой VPN сервер для чайников (Часть 5)

Предыдущие части: 1, 1.1(она же 4), 2, 3


Если вы вдохновились моими статьями и сделали всё, как написано, то у вас уже есть:

1. Сервер, расположенный где-то в дебрях Европы.

2. На сервере настроен вход SSH по сертификату и файрвол.

3. На сервер установлен VPN-сервер, сгенерирован ворох сертификатов для сервера и клиентов.

4. Ваши устройства (компьютеры, смартфоны, планшеты и т.п.) настроены на соединение с VPN-сервером.


Теперь ваш трафик по территории собственной страны идет только в зашифрованном виде, а доступ к ключам шифрования только у вас.


Казалось бы, живи и радуйся. Но не всё так просто. Ваше клиентское устройство, напрямую или косвенно, продолжает многое сообщать о вас: тип устройства, операционная система, внутренний IP адрес, и пр. Так происходит, потому что VPN-ервер не модифицирует полученные от вас пакеты, он просто их расшифровывает и отправляет в сеть.


Хватит это терпеть! Мы запилим свой прокси-сервер с анонимностью и прозрачностью.

Хотим свободы и анонимности в сети или еще раз про свой VPN сервер для чайников (Часть 5) Инструкция, VPN, Openvpn, Прокси, VPS, 3proxy, Squid, Настройка, Длиннопост

Из статьи в википедии:

Proxy server (Прокси сервер) – промежуточный компьютер, который является посредником между вашим компьютером и Интернетом. Прокси обычно используют либо для ускорения работы в сети Интернет, либо для анонимного прохождения в сети Интернет. Так же использование анонимного прокси, может быть использовано, как дополнительное средство защиты: анонимный прокси (anonymous proxy) подменяет Ваш IP-адрес, и злоумышленник будет пытаться совершить атаку не на Ваш компьютер, а на прокси сервер, у которого, зачастую, максимально мощная система защиты.

Там ещё есть интересное в статье, почитайте.


Нас интересует умение прокси подменять отправителя пакетов и обрезать из них всё лишнее. Т.е. повысить нашу анонимность. Я уже писал в первой части, что 100% анонимности мы не добьёмся, но двигаться в этом направлении мы будем.


Есть over9000 реализаций прокси. Изначально я хотел использовать squid в связке с squidguard + adblock, но с кальмаром возникли проблемы. В разных версиях дистрибутивов он вёл себя по-разному с протоколом https, да и вообще последние его редакции какие-то не удачные. Поскольку данная статья рассчитана на не квалифицированного читателя, то перегружать её всеми возможными костылями для squid я посчитал не целесообразным. Поэтому, после недолгих исканий, был выбран 3proxy. В дальнейшем я всё-таки запили статью про squid.


И да, как вы наверняка помните, наш файрволл настроен таким образом, что прокси будет принимать подключения только от клиентов VPN-сети.


Пока мы еще не сделали анонимный прокси, попробуйте позаходить на сайты, показывающие степень вашей анонимности. Например:


https://do-know.com/privacy-test.html

https://whoer.net/ru

https://2ip.ru/privacy/

http://witch.valdikss.org.ru/

и прочие. Тысячи их. Потом сравните с тем, что будет после настройки прокси.


Хватит читать, открываем консоль. Будем отращивать бороду собирать наш прокси из исходников.

Хотим свободы и анонимности в сети или еще раз про свой VPN сервер для чайников (Часть 5) Инструкция, VPN, Openvpn, Прокси, VPS, 3proxy, Squid, Настройка, Длиннопост

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

yum -y install gcc

Перейдём в домашнюю папку

cd ~

Быстренько посмотрим, какая версия 3proxy сейчась актуальна на странице загрузок https://www.3proxy.ru/download/

Хотим свободы и анонимности в сети или еще раз про свой VPN сервер для чайников (Часть 5) Инструкция, VPN, Openvpn, Прокси, VPS, 3proxy, Squid, Настройка, Длиннопост

На момент написания статьи это была версия 0.8.9

Качаем её

wget https://github.com/z3APA3A/3proxy/archive/0.8.9.tar.gz

Распаковываем

tar -xvzf 0.8.9.tar.gz

И переходим в папку с исходниками

cd 3proxy-0.8.9

В опциях исходников делает наш сервер полностью анонимным.

sed -i '1s/^/#define ANONYMOUS 1\n/' ./src/proxy.h

Компилируем (О да! Теперь вы можете хвастаться, что в линуксе компилировали из сырцов. Чувствуете, как на вашем лице начинает пробиваться борода, на спине прорастать свитер?)

make -f Makefile.Linux

Подготовим рабочее место для нашего прокси

mkdir -p /etc/3proxy/bin
touch /etc/3proxy/3proxy.pid

Теперь перенесем скомпилированные исполняемые файлы в рабочую папку

cp ./src/3proxy /etc/3proxy/bin
cp ./src/TransparentPlugin.ld.so /etc/3proxy/bin
cp ./cfg/3proxy.cfg.sample /etc/3proxy/3proxy.cfg

В папке /etc/rc.d/init.d

создаем файл 3proxy следующего содержания

#!/bin/sh
#
# chkconfig: 2345 20 80
# description: 3proxy tiny proxy server
#
#
#
#
case "$1" in
start)
echo Starting 3Proxy
/etc/3proxy/bin/3proxy /etc/3proxy/3proxy.cfg
RETVAL=$?
echo
[ $RETVAL ]
;;
stop)
echo Stopping 3Proxy
if [ /etc/3proxy/3proxy.pid ]; then
/bin/kill `cat /etc/3proxy/3proxy.pid`
else
/usr/bin/killall 3proxy
fi
RETVAL=$?
echo
[ $RETVAL ]
;;
restart|reload)
echo Reloading 3Proxy
if [ /etc/3proxy/3proxy.pid ]; then
/bin/kill -s USR1 `cat /etc/3proxy/3proxy.pid`
else
/usr/bin/killall -s USR1 3proxy
fi
;;
*)
echo Usage: $0 "{start|stop|restart}"
exit 1
esac
exit 0

Сохраняем и устанавливаем права 0755. К сожалению формат пикабу не позволяет разместить тексты скриптов с нормальным форматированием. Можете посмотреть, как он выглядит в нормальном виде здесь. Но и без форматирования работать будет.

Хотим свободы и анонимности в сети или еще раз про свой VPN сервер для чайников (Часть 5) Инструкция, VPN, Openvpn, Прокси, VPS, 3proxy, Squid, Настройка, Длиннопост

Теперь откроем файл /etc/3proxy/3proxy.cfg

Удалите всё его содержимое и вставьте следующее:

daemon
pidfile /etc/3proxy/3proxy.pid
plugin /etc/3proxy/bin/TransparentPlugin.ld.so transparent_plugin
nserver 8.8.8.8
nserver 8.8.4.4
nscache 65536
timeouts 1 5 30 60 180 1800 15 60
#log /dev/null
log /etc/3proxy/3proxy.log D
logformat "- +_L%t.%. %N.%p %E %U %C:%c %R:%r %O %I %h %T"
external 123.123.123.123
internal 10.8.0.1
auth none
maxconn 64
allow *
parent 1000 http 0.0.0.0 0
allow *
parent 1000 socks5 0.0.0.0 0
tcppm -i10.8.0.1 8080 127.0.0.1 11111

Здесь, в строчке

external 123.123.123.123

место 123.123.123.123 вписываем IP адрес вашего сервера.


Сохраним и закроем.

Прокси-сервер готов к запуску. Запустим его

service 3proxy start
Хотим свободы и анонимности в сети или еще раз про свой VPN сервер для чайников (Часть 5) Инструкция, VPN, Openvpn, Прокси, VPS, 3proxy, Squid, Настройка, Длиннопост

Отлично, прокси запустился.


Если пишет ошибки, смотрим, что написано в консоли, что написано в /etc/3proxy/3proxy.log.[дата и время лога]


Если вы всё сделали в точности, как написано выше, ошибок быть не должно.


Теперь нам нужно поправить правила для iptables. Чтобы не настраивать прокси-сервер на всех клиентских устройствах (на смартфонах это зачастую попросту невозможно без рут-прав), мы сделаем наш прокси-сервер прозрачным. Т.е. для клиентов он будет не виден. Однако весь трафик, приходящий по VPN будет заворачиваться на прокси-сервер, а уже потом отправляться в открытую сеть.


Открываем Файл /root/ipt-set и аккуратно вносим следующие исправления:

Находим строчку:

SQUID_PORT=»8080″

и исправляем на

PROXI_PORT=»8080″

Находим строчки

# squid
$IPT -A INPUT -i $IF_OVPN -p tcp —dport $SQUID_PORT -j ACCEPT
$IPT -A INPUT -i $IF_OVPN -p udp —dport $SQUID_PORT -j ACCEPT

и исправляем на

# proxi
$IPT -A INPUT -i $IF_OVPN -p tcp —dport $PROXI_PORT -j ACCEPT
$IPT -A INPUT -i $IF_OVPN -p udp —dport $PROXI_PORT -j ACCEPT

И сразу, после этих строчек добавляем ещё две:

$IPT -t nat -A PREROUTING -i $IF_OVPN -p tcp -m tcp —dport 80 -j DNAT —to-destination 10.8.0.1:$PROXI_PORT
$IPT -t nat -A PREROUTING -i $IF_OVPN -p tcp -m tcp —dport 443 -j DNAT —to-destination 10.8.0.1:$PROXI_PORT

Сохраняем и закрываем файл.

Приведу, на всякий случай, файл /root/ipt-set полностью:

#!/bin/sh
IF_EXT="venet0"
IF_OVPN="tun0"
OVPN_PORT="443"
PROXI_PORT="8080"
IPT="/sbin/iptables"
IPT6="/sbin/ip6tables"
# flush
$IPT --flush
$IPT -t nat --flush
$IPT -t mangle --flush
$IPT -X
$IPT6 --flush
# loopback
$IPT -A INPUT -i lo -j ACCEPT
$IPT -A OUTPUT -o lo -j ACCEPT
# default
$IPT -P INPUT DROP
$IPT -P OUTPUT DROP
$IPT -P FORWARD DROP
$IPT6 -P INPUT DROP
$IPT6 -P OUTPUT DROP
$IPT6 -P FORWARD DROP
# allow forwarding
echo 1 > /proc/sys/net/ipv4/ip_forward
# NAT
# #########################################
# SNAT - local users to out internet
$IPT -t nat -A POSTROUTING -o $IF_EXT -j MASQUERADE
# INPUT chain
# #########################################
$IPT -A INPUT -p tcp ! --syn -m state --state NEW -j DROP
$IPT -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
# ssh
$IPT -A INPUT -i $IF_EXT -p tcp --dport 22 -j ACCEPT
# VPN
$IPT -A INPUT -i $IF_OVPN -p icmp -s 10.8.0.0/24 -j ACCEPT
# DNS
$IPT -A INPUT -i $IF_OVPN -p udp --dport 53 -s 10.8.0.0/24 -j ACCEPT
# openvpn
$IPT -A INPUT -i $IF_EXT -p udp --dport $OVPN_PORT -j ACCEPT
# proxi
$IPT -A INPUT -i $IF_OVPN -p tcp --dport $PROXI_PORT -j ACCEPT
$IPT -A INPUT -i $IF_OVPN -p udp --dport $PROXI_PORT -j ACCEPT
$IPT -t nat -A PREROUTING -i $IF_OVPN -p tcp -m tcp --dport 80 -j DNAT --to-destination 10.8.0.1:$PROXI_PORT
$IPT -t nat -A PREROUTING -i $IF_OVPN -p tcp -m tcp --dport 443 -j DNAT --to-destination 10.8.0.1:$PROXI_PORT
# FORWARD chain
# #########################################
$IPT -A FORWARD -i $IF_OVPN -o $IF_EXT -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
$IPT -A FORWARD -i $IF_EXT -o $IF_OVPN -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPT -A FORWARD -s 10.8.0.0/24 -d 10.8.0.0/24 -j ACCEPT
# OUTPUT chain
# #########################################
$IPT -A OUTPUT -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT

Теперь весь трафик из VPN для портов 80 и 443 (т.е. http и https) будет перенаправлен на наш прокси.


Применим правила командой:

/root/ipt-set

Если вы прямо сейчас подключены к VPN-серверу, то уже можете заходить на разные сайты и проверять, что всё работает. Зайдите на один-два любых сайта, убедитесь, что они открываются. Теперь посмотрите в файл лога /etc/3proxy/3proxy.log.[дата и время лога]


В нем вы должны увидеть свою активность. Если всё работает, то остановим наш прокси:

service 3proxy stop

Откроем его конфиг /etc/3proxy/3proxy.cfg и строчки:

#log /dev/null
log /etc/3proxy/3proxy.log D
logformat «- +_L%t.%. %N.%p %E %U %C:%c %R:%r %O %I %h %T»

превратим в:

log /dev/null
#log /etc/3proxy/3proxy.log D
#logformat «- +_L%t.%. %N.%p %E %U %C:%c %R:%r %O %I %h %T»

Теперь прокси-сервер не будет писать логи и сохранять историю посещений сайтов. Сразу удалим уже имеющийся лог /etc/3proxy/3proxy.log.[дата и время лога]


И запустим прокси:

service 3proxy start

И добавим его в автозагрузку:

/sbin/chkconfig 3proxy on

Итак, что мы имеем после выполнения всех инструкций:

1. Арендован и настроен VPS. Вход по сертификату.

2. Установлен и настроен личный VPN-сервер и, в нагрузку, свой удостоверяющий уентр.

3. Настроены клиенты VPN-сети.

4. Установлен и настроен анонимный, прозрачный прокси-сервер.


В следующих статьях мы добавим еще немного анонимности нашему серверу и вообще поговорим за личную информационную безопасность во всемирной паутине. Не переключайтесь.

Хотим свободы и анонимности в сети или еще раз про свой VPN сервер для чайников (Часть 5) Инструкция, VPN, Openvpn, Прокси, VPS, 3proxy, Squid, Настройка, Длиннопост
Показать полностью 6
Отличная работа, все прочитано!