<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>https://wiki.mna.tom.ru/index.php?feed=atom&amp;namespace=0&amp;title=%D0%A1%D0%BB%D1%83%D0%B6%D0%B5%D0%B1%D0%BD%D0%B0%D1%8F%3A%D0%9D%D0%BE%D0%B2%D1%8B%D0%B5_%D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%86%D1%8B</id>
		<title>База знаний - Новые страницы [ru]</title>
		<link rel="self" type="application/atom+xml" href="https://wiki.mna.tom.ru/index.php?feed=atom&amp;namespace=0&amp;title=%D0%A1%D0%BB%D1%83%D0%B6%D0%B5%D0%B1%D0%BD%D0%B0%D1%8F%3A%D0%9D%D0%BE%D0%B2%D1%8B%D0%B5_%D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%86%D1%8B"/>
		<link rel="alternate" type="text/html" href="https://wiki.mna.tom.ru/index.php/%D0%A1%D0%BB%D1%83%D0%B6%D0%B5%D0%B1%D0%BD%D0%B0%D1%8F:%D0%9D%D0%BE%D0%B2%D1%8B%D0%B5_%D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%86%D1%8B"/>
		<updated>2026-05-18T11:06:28Z</updated>
		<subtitle>Материал из База знаний</subtitle>
		<generator>MediaWiki 1.27.7</generator>

	<entry>
		<id>https://wiki.mna.tom.ru/index.php/AmneziaWG</id>
		<title>AmneziaWG</title>
		<link rel="alternate" type="text/html" href="https://wiki.mna.tom.ru/index.php/AmneziaWG"/>
				<updated>2025-12-06T13:04:58Z</updated>
		
		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[category:Linux]]&lt;br /&gt;
&lt;br /&gt;
== Хитрый VPN сервер на основе WireGuard ==&lt;br /&gt;
AmneziaWG - это Wireguard, но допиленный на имитацию себя под обычный трафик. Wireguard могут блокировать различные провайдеры, этот пока обходит блокировки.&lt;br /&gt;
&lt;br /&gt;
Информация отсюда:&lt;br /&gt;
&lt;br /&gt;
- https://docs.amnezia.org/ru/documentation/amnezia-wg&lt;br /&gt;
&lt;br /&gt;
- https://github.com/openwrt-xiaomi/awg-openwrt/wiki/AmneziaWG-installing&lt;br /&gt;
&lt;br /&gt;
=== Краткое изложение: ===&lt;br /&gt;
&lt;br /&gt;
Обновляемся и разрешаем маршрутизацию трафика для драйвера AWG:&lt;br /&gt;
 apt update&lt;br /&gt;
 apt upgrade -y&lt;br /&gt;
 echo &amp;quot;net.ipv4.ip_forward = 1&amp;quot; &amp;gt; /etc/sysctl.conf&lt;br /&gt;
 reboot&lt;br /&gt;
&lt;br /&gt;
Устанавливаем пакеты:&lt;br /&gt;
 add-apt-repository -y ppa:amnezia/ppa&lt;br /&gt;
 apt install -y amneziawg curl wget python3 python3-qrcode libxcb-xinerama0 libxcb-cursor0 qrencode&lt;br /&gt;
 mkdir /etc/amnezia/clients&lt;br /&gt;
 cd /etc/amnezia/clients&lt;br /&gt;
 wget -O awgcfg.py https://gist.githubusercontent.com/remittor/8c3d9ff293b2ba4b13c367cc1a69f9eb/raw/awgcfg.py&lt;br /&gt;
&lt;br /&gt;
Предположим, что мы выбрали номер UDP-порта: 49666, подсеть vpn: 10.9.9.1/24&lt;br /&gt;
&lt;br /&gt;
Генерируем основной конфиг AWG:&lt;br /&gt;
 python3 awgcfg.py --make /etc/amnezia/amneziawg/awg0.conf -i 10.9.9.1/24 -p 49666&lt;br /&gt;
&lt;br /&gt;
Генерируем конфиг-шаблон, который будет использоваться для создания клиентских конфигов и QR-кодов:&lt;br /&gt;
 python3 awgcfg.py --create&lt;br /&gt;
&lt;br /&gt;
В строке вывода должны быть указаны реальные адреса. В случае ошибки, можно поправить руками в файле ''_defclient.config''. Так же рекомендую заменить в этом файле '''AllowedIPs''' на '''0.0.0.0/0''', если это не противоречит настройкам. Чем меньше получится сам файл, тем компактнее будет qr-код ;)&lt;br /&gt;
&lt;br /&gt;
Поднимаем туннельный интерфейс AWG:&lt;br /&gt;
 awg-quick up awg0&lt;br /&gt;
&lt;br /&gt;
Проверяем созданный основной AWG-конфиг:&lt;br /&gt;
 awg showconf awg0&lt;br /&gt;
&lt;br /&gt;
Проверяем созданный AWG-интерфейс:&lt;br /&gt;
 awg show&lt;br /&gt;
&lt;br /&gt;
Выключаем туннельный интерфейс AWG:&lt;br /&gt;
 awg-quick down awg0&lt;br /&gt;
&lt;br /&gt;
Добавляем в автозагрузку поднятие AWG-интерфейса:&lt;br /&gt;
 systemctl enable --now awg-quick@awg0&lt;br /&gt;
 systemctl restart awg-quick@awg0.service&lt;br /&gt;
&lt;br /&gt;
Ещё раз проверяем статус AWG:&lt;br /&gt;
 awg show&lt;br /&gt;
&lt;br /&gt;
Рекомендую отдельно вынести команды по изменению Firewall по поднятию и опусканию интерфейса. Это можно сделать в файле '''/etc/amnezia/amneziawg/awg0.conf''':&lt;br /&gt;
 PostUp = /etc/amnezia/amneziawg/awg-up.sh&lt;br /&gt;
 PostDown = /etc/amnezia/amneziawg/awg-down.sh&lt;br /&gt;
&lt;br /&gt;
В этих файлах прописать все необходимые команды, например так:&lt;br /&gt;
&lt;br /&gt;
/etc/amnezia/amneziawg/awg-up.sh:&lt;br /&gt;
 iptables -I INPUT -p udp --dport 49666 -m conntrack --ctstate NEW -j ACCEPT&lt;br /&gt;
 iptables -I FORWARD -i awg0 -j ACCEPT&lt;br /&gt;
 iptables -t nat -I POSTROUTING -o eth0 -j MASQUERADE&lt;br /&gt;
 ip6tables -I FORWARD -i awg0 -j ACCEPT&lt;br /&gt;
 ip6tables -t nat -I POSTROUTING -o eth0 -j MASQUERADE&lt;br /&gt;
&lt;br /&gt;
/etc/amnezia/amneziawg/awg-down.sh&lt;br /&gt;
 iptables -D INPUT -p udp --dport 49666 -m conntrack --ctstate NEW -j ACCEPT&lt;br /&gt;
 iptables -D FORWARD -i awg0 -j ACCEPT&lt;br /&gt;
 iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE&lt;br /&gt;
 ip6tables -D FORWARD -i awg0 -j ACCEPT&lt;br /&gt;
 ip6tables -t nat -D POSTROUTING -o eth0 -j MASQUERADE&lt;br /&gt;
&lt;br /&gt;
Для создания пользователей предлагаю такой скрипт. Он умеет показывать уже созданных пользователей, а так же создает новых. Так же показывает конфиг и QR код прямо в консоли для настройки клиента.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/bash&lt;br /&gt;
&lt;br /&gt;
if [ &amp;quot;$1&amp;quot; == &amp;quot;&amp;quot; ]; then&lt;br /&gt;
  echo -e &amp;quot;\n VPN Client configs:&amp;quot;&lt;br /&gt;
  cat /etc/amnezia/amneziawg/awg0.conf | grep &amp;quot;_Name&amp;quot; | sed &amp;quot;s/^.* = /\t/&amp;quot;&lt;br /&gt;
  echo -e &amp;quot;==================================&amp;quot;&lt;br /&gt;
  echo -e &amp;quot;\n\tUsage: $0 &amp;lt;UserName&amp;gt;\n&amp;quot;&lt;br /&gt;
  exit 1&lt;br /&gt;
fi&lt;br /&gt;
&lt;br /&gt;
cd /etc/amnezia/clients&lt;br /&gt;
python3 awgcfg.py -a $1 2&amp;gt;/dev/null&lt;br /&gt;
python3 awgcfg.py -c&lt;br /&gt;
awg-quick down awg0&lt;br /&gt;
awg-quick up awg0&lt;br /&gt;
&lt;br /&gt;
echo -e &amp;quot;\nClient config for AmneziaWG:&amp;quot;&lt;br /&gt;
echo -e &amp;quot;==================================\n&amp;quot;&lt;br /&gt;
cat /etc/amnezia/clients/$1.conf&lt;br /&gt;
echo -e &amp;quot;==================================\n&amp;quot;&lt;br /&gt;
&lt;br /&gt;
qrencode -t ansiutf8 -r $1.conf&lt;br /&gt;
rm -f *.conf&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	</feed>