Skip to content

Commit 1c73af8

Browse files
authored
Create VPN_WireGuard.html
1 parent 0ff5094 commit 1c73af8

1 file changed

Lines changed: 179 additions & 0 deletions

File tree

VPN_WireGuard.html

Lines changed: 179 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,179 @@
1+
<head>
2+
<title>VPN_WireGuard</title>
3+
<link rel="shortcut icon" href="./WG.png" type="image/png">
4+
</head>
5+
<head>
6+
<meta charset="utf-8">
7+
</head>
8+
<style>
9+
.neonText1 {
10+
color: #87CEFA;
11+
text-shadow:
12+
0 0 1px #4169E1,
13+
0 0 1px #4169E1,
14+
0 0 1px #4169E1,
15+
0 0 1px #4169E1,
16+
0 0 1px #4169E1,
17+
0 0 1px #4169E1,
18+
0 0 1px #4169E1,
19+
0 0 1px #4169E1;
20+
}
21+
.neonText2 {
22+
color: #00FF00;
23+
text-shadow:
24+
0 0 1px #006400,
25+
0 0 1px #006400,
26+
0 0 1px #006400,
27+
0 0 1px #006400,
28+
0 0 1px #006400,
29+
0 0 1px #006400,
30+
0 0 1px #006400,
31+
0 0 1px #006400;
32+
}
33+
.neonText3 {
34+
color: #ff0000;
35+
text-shadow:
36+
0 0 1px #640000,
37+
0 0 1px #640000,
38+
0 0 1px #640000,
39+
0 0 1px #640000,
40+
0 0 1px #640000,
41+
0 0 1px #640000,
42+
0 0 1px #640000,
43+
0 0 1px #640000;
44+
}
45+
/* Additional styling */
46+
body{
47+
background-color: black;
48+
background-repeat: no-repeat;
49+
background-size: cover;
50+
background-attachment: fixed;
51+
max-width: 1400px;
52+
margin: 0 auto;
53+
padding: 20px;
54+
color: #cfcfcf;
55+
}
56+
a {
57+
text-decoration: none;
58+
}
59+
p {
60+
text-indent: 1.5em;
61+
font-family: monospace;
62+
font-weight: 500;
63+
white-space: pre;
64+
line-height: 2;
65+
letter-spacing: 1px;
66+
}
67+
</style>
68+
<div class="container">
69+
<p class="neonText1">
70+
Установка и настройка VPN-сервера на ОС Linux Fedora 42.
71+
--------------------------------------------------------------------------------------------------------------------------------------------------------------
72+
Все действия описанные ниже выполнялись под пользователем root.
73+
--------------------------------------------------------------------------------------------------------------------------------------------------------------
74+
<a class="neonText2">yum install -y NetworkManager-tui</a> |#|#| Установка пакета "nmtui" для настройки сети на АРМ/VM
75+
------------
76+
Гайд по тому, как пользоваться инструментом nmtui, вы можете посмотреть в интернете.
77+
------------
78+
<a class="neonText2">yum upgrade -y && reboot</a> |#|#| Команда для обновления ОС системы с последующим выполнением перезагрузки
79+
------------
80+
<a class="neonText2">yum install -y wireguard-tools</a> |#|#| Команда для установки WireGuard и его зависимостей
81+
------------
82+
<a class="neonText2">yum install -y kernel-devel kernel-headers</a> |#|#| Команда для обновления системы и дополнительных зависимостей
83+
------------
84+
<a class="neonText2">wg --version</a> |#|#| Команда для просмотра версии WireGuard
85+
------------
86+
<a class="neonText2">mkdir -p /etc/wireguard</a> |#|#| Команда для создания каталога "/etc/wireguard"
87+
------------
88+
<a class="neonText2">chmod 700 /etc/wireguard</a> |#|#| Команда для выдачи 700 прав каталогу "/etc/wireguard"
89+
------------
90+
<a class="neonText2">wg genkey | sudo tee /etc/wireguard/private.key</a> |#|#| Команда для генерации приватного ключа
91+
------------
92+
<a class="neonText2">chmod 600 /etc/wireguard/private.key</a> |#|#| Команда для выдачи 600 прав созданному ранее приватному ключу
93+
------------
94+
<a class="neonText2">cat /etc/wireguard/private.key | wg pubkey | sudo tee /etc/wireguard/public.key</a> |#|#| Данной командой извлечем публичный ключ из приватного
95+
------------
96+
<a class="neonText2">cat /etc/wireguard/private.key</a> |#|#| Команда для просмотра содержимого файла приватного ключа
97+
------------
98+
<a class="neonText2">cat /etc/wireguard/public.key</a> |#|#| Команда для просмотра содержимого файла публичного ключа
99+
------------
100+
<a class="neonText2">nano /etc/wireguard/wg0.conf</a> |#|#| С помощью данной команды создайте и приведите конфигурационный файл "wg0.conf" к следующему виду:
101+
<a class="neonText3">
102+
[Interface]
103+
Address = 10.10.10.1/24</a> |#|#| Новая сеть
104+
<a class="neonText3">SaveConfig = true
105+
#PostUp = iptables -A FORWARD -i wg0 -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
106+
#PostDown = iptables -D FORWARD -i wg0 -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE
107+
ListenPort = 51820
108+
PrivateKey = OPwdq2RslCwlOXrWYnZ73lUsAvZA1O62GsmsA5WgQUg=</a> |#|#| Содержимое файла "/etc/wireguard/private.key"
109+
<a class="neonText3">
110+
[Peer]
111+
PublicKey = K+8GllxeA8Ubiqno+ScE/HvDwj2vap8OFi2dMjZzHTQ=</a> |#|#| Содержимое файла "client_public.key". Данный файл создастся позже
112+
<a class="neonText3">AllowedIPs = 10.10.10.0/24</a> |#|#| Клиенту выдастся IP-адрес из новой подсети
113+
<a class="neonText3">Endpoint = 10.10.10.2:51820</a> |#|#| IP-адрес клиента из новой сети
114+
------------
115+
<a class="neonText2">firewall-cmd --add-port=51820/udp --permanent</a> |#|#| Команда для открытия порта "51820/udp"
116+
------------
117+
<a class="neonText2">firewall-cmd --reload</a> |#|#| Команда для приминения изменений "firewall-cmd"
118+
------------
119+
<a class="neonText2">wg genkey | tee client_private.key</a> |#|#| Команда для генерации нового приватного ключа
120+
------------
121+
<a class="neonText2">client_private.key | wg pubkey > client_public.key</a> |#|#| Команда для извлечения публичного ключа из приватного
122+
------------
123+
<a class="neonText2">nano /etc/wireguard/client.conf</a> |#|#| С помощью данной команды создайте и приведите конфигурационный файл "client.conf" к следующему виду:
124+
<a class="neonText3">
125+
[Interface]
126+
PrivateKey = AKLZ+QjEIAEqrXCryLEVo6CM5XGG1q20LewwSjsSCGA=</a> |#|#| Содержимое файла "client_private.key"
127+
<a class="neonText3">Address = 10.10.10.2/24</a> |#|#| Второй адрес новой сети
128+
<a class="neonText3">DNS = 77.88.8.8
129+
130+
[Peer]
131+
PublicKey = 97qd1bRWAJMLk13MW5GL0ZBkqW6ltf5lc6nCZysy4mM=</a> |#|#| Содержимое файла "/etc/wireguard/public.key"
132+
<a class="neonText3">Endpoint = 10.10.10.1:51820
133+
AllowedIPs = 0.0.0.0/0</a>
134+
--------------------------------------------------------------------------------------------------------------------------------------------------------------
135+
<a class="neonText2">wg-quick up wg0</a> |#|#| Команда для запуска сетевого интерфейса WireGuard
136+
------------
137+
<a class="neonText2">cd /etc/wireguard/</a> |#|#| Команда для перехода в каталог "/etc/wireguard/"
138+
------------
139+
<a class="neonText2">wg-quick up ./client.conf</a> |#|#| Команда для инициализации подключения "client.conf"
140+
141+
При успешном подключении, в консоли получите следующий вывод:
142+
<a class="neonText3">
143+
root@OVPN:/etc/wireguard# wg-quick up ./client.conf
144+
[#] ip link add client type wireguard
145+
[#] wg setconf client /dev/fd/63
146+
[#] ip -4 address add 10.10.10.2/24 dev client
147+
[#] ip link set mtu 65456 up dev client
148+
[#] resolvconf -a client -m 0 -x
149+
[#] wg set client fwmark 51820
150+
[#] ip -4 route add 0.0.0.0/0 dev client table 51820
151+
[#] ip -4 rule add not fwmark 51820 table 51820</a>
152+
------------
153+
А при выполнении команды "wg show", получите значения "endpoint, allowed ips, latest handshake, transfer":
154+
<a class="neonText3">
155+
peer: K+8GllxeA8Ubiqno+ScE/HvDwj2vap8OFi2dMjZzHTQ=
156+
endpoint: ***.***.***.***:18080
157+
allowed ips: 10.10.10.0/24
158+
latest handshake: 2 minutes, 5 seconds ago
159+
transfer: 252 B received, 9.30 KiB sent</a>
160+
------------
161+
Конфигурационный файл "clinet.conf" для импортирования на устройства будет выглядеть следующим образом:
162+
<a class="neonText3">
163+
[Interface]
164+
PrivateKey = AKLZ+QjEIAEqrXCryLEVo6CM5XGG1q20LewwSjsSCGA=</a> |#|#| Содержимое файла "client_private.key"
165+
<a class="neonText3">Address = 10.10.10.2/24</a> |#|#| IP-адрес клиента из новой сети
166+
<a class="neonText3">DNS = 77.88.8.8
167+
168+
[Peer]
169+
PublicKey = 97qd1bRWAJMLk13MW5GL0ZBkqW6ltf5lc6nCZysy4mM=</a> |#|#| Содержимое файла "/etc/wireguard/public.key"
170+
<a class="neonText3">Endpoint = ***.***.***.***:51820</a> |#|#| Белый IP-address
171+
<a class="neonText3">AllowedIPs = 10.10.10.0.24</a> |#|#| Подсети в которых будет находиться устройство
172+
<a class="neonText3">PersistentKeepalive = 20</a> |#|#| Интервал отправки keepalive-пакетов для поддержания соединения. Он указывается в секундах.
173+
------------
174+
После подключения клиента к серверу, в конфигурационном файле сервера "/etc/wireguard/wg0.conf" поменяется значение строки "Endpoint" в блоке "[Peer]".
175+
В дальнейшем там будет прописан белый IP-address подключаемого устройства(клиента).
176+
--------------------------------------------------------------------------------------------------------------------------------------------------------------
177+
На этом инструкция завершена! Всем спасибо за внимание!
178+
</p>
179+
</div>

0 commit comments

Comments
 (0)