Easy-RSA 3.0.3. Создание ключей для OpenVPN.

После обновления утилиты Easy-RSA изменился процесс создания ключей.

Переходим в директорию Easy-RSA, по умолчанию /usr/share/easy-rsa/3.0.3.

cd /usr/share/easy-rsa/3.0.3/

Создаем CA:

./easyrsa init-pki
./easyrsa build-ca

После создания попросят придумать пароль. Этот пароль необходимо запомнить т.к. он понадобится для создания клиентских сертификатов.

Читать далееEasy-RSA 3.0.3. Создание ключей для OpenVPN.

iptables. Forward трафика.

Задача выпустить компьютеры локальной сети в интернет через сервер с Linux и двумя интерфейсами. Eth0 — внешний интерфейс, Eth1 внутренний.

Разрешаем форвардинг для всей локальной сети. В этом примере локальный интерфейс eth1. Первое правило разрешает форвард входящего трафика, второе исходящего.

iptables -A FORWARD -i eth1 -j ACCEPT
iptables -A FORWARD -o eth1 -j ACCEPT

Теперь нужно поднять NAT. В данном примере в роли внешнего интерфейса выступает eth0:

iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

Не забываем включить форвардинг в системе. Для этого редактируем /etc/sysctl.conf и исправляем параметр net.ipv4.ip_forward = 0 на net.ipv4.ip_forward = 1
В итоге получаем функционал гейтвея во внешнюю сеть.

Bash. Добавление строк в таблицу MySQL.

Как добавить строку в таблицу MySQL при помощи Bash скрипта на примере добавления пачки доменов в blacklist. Исходные данные:

1. Файл со списком доменов
2. Таблица в бд с двумя полями(имя домена и действие)

user="%Mysql_user%"
pass="%Mysql_pass%"
db="%Mysql_db%"
cat %FileWithBadDomain% | while read line
do
        echo "INSERT INTO %table_name% (addr,status) VALUES ('$line', 'REJECT');" | mysql -h127.0.0.1 -u$user -p$pass $db;
        echo $line
done