CentOS

Як встановити WireGuard VPN на CentOS 8

Як встановити WireGuard VPN на CentOS 8

WireGuard - це популярний протокол зв'язку з відкритим кодом від точки до точки, який використовується для створення безпечного та швидкого тунелю віртуальної приватної мережі. Ця VPN була розроблена для використання в ядрі Linux. WireGuard - це легкий VPN, який забезпечує надзвичайно швидку швидкість для користувачів.

У цій статті показано, як встановити та налаштувати WireGuard у вашій системі CentOS 8. Встановлення та налаштування WireGuard набагато простіші, ніж уже існуючі VPN, такі як OpenVPN, і це є основною причиною його зростаючої популярності у спільноті Linux.

Огляд

Ця стаття складається з двох розділів:

Встановлення та налаштування WireGuard на сервері CentOS 8

У цьому розділі ми налаштуємо машину CentOS 8, яка буде виконувати роль сервера, встановлюючи WireGuard.

Крок 1: Додайте сховища EPEL та Elrepo

Для початку встановлення WireGuard на CentOS 8, спочатку додайте репозиторії EPEL та Elrepo, щоб встановити модулі ядра та інструменти WireGuard.

$ sudo dnf встановити epel-release elrepo-release -y

Тепер, після встановлення необхідних сховищ, встановіть модулі ядра та інструменти WireGuard.

Крок 2: Встановіть модулі ядра та WireGuard Tools

Модулі ядра та інструменти WireGuard можна швидко встановити із сховищ EPEL та Elrepo, виконавши таку команду:

$ sudo dnf встановити kmod-wireguard дротяні інструменти

Коли вам буде запропоновано дозвіл на імпорт та додавання GPG-ключів до системи CentOS 8, дозвольте цю дію, набравши "Y" та натиснувши "Enter."

Після успішного встановлення інструментів WireGuard ми виконаємо деякі конфігурації.

Крок 3: Створіть державні та приватні ключі

Спочатку ми створимо новий каталог '/ etc / wireguard', щоб ми могли налаштувати VPN-сервер у каталозі. Щоб створити новий каталог '/ etc / wireguard' у системі CentOS 8, виконайте таку команду.

sudo mkdir / etc / wireguard

Після створення каталогу створіть відкритий та закритий ключі за допомогою інструментів командного рядка “wg” та “tee”. Команда для створення приватних та відкритих ключів полягає в наступному.

$ wg genkey | sudo tee / etc / wireguard / privatekey | wg pubkey | sudo tee / etc / wireguard / publickey

Створений ключ буде надрукований після виконання вищевказаної команди.

Крок 4: Налаштування тунельного пристрою для маршрутизації трафіку VPN

Щоб налаштувати пристрій, створіть файл конфігурації в каталозі '/ etc / wireguard' і відкрийте файл за допомогою редактора nano.

Перш ніж створювати файл конфігурації, отримайте приватний ключ, використовуючи таку команду.

$ sudo cat / etc / wireguard / privatekey

Збережіть десь закритий ключ; цей ключ вам знадобиться пізніше у файлі конфігурації.

Тепер створіть “wg0.conf ”.

$ sudo nano / etc / wireguard / wg0.конф

Додайте наведений нижче вміст до “/ etc / wireguard / wg0.conf ”.

[Інтерфейс]
## IP-адреса сервера VPN ##
Адреса = 192.168.18.200/24
## Збережіть конфігурацію, коли новий клієнт додасть ##
SaveConfig = істина
## номер порту сервера VPN ##
ListenPort = 51820
## Приватний ключ сервера VPN ##
PrivateKey = SERVER_PRIVATE_KEY
## Команда, яку потрібно виконати перед запуском інтерфейсу ##
PostUp = firewall-cmd --zone = public --add-port 51820 / udp && firewall-cmd --zone = public --add-masquerade
## Команда, яку потрібно виконати перед вимкненням інтерфейсу ##
PostDown = firewall-cmd --remove-port 51820 / udp --zone = public && firewall-cmd --remove-masquerade --zone = public

Цей конфігураційний файл містить такі ключові терміни:

Тепер, коли ви досить добре розумієте файл конфігурації, ви можете зберегти файл і вийти за допомогою комбінацій клавіш (CTRL + S) та (CTRL + X).

Крок 5: Встановіть привілеї конфігурації та файлу “privatekey”

Тепер ми зробимо сервер VPN трохи безпечнішим. Базовий користувач не повинен мати привілеїв читати файл конфігурації та файл 'privatekey'. Щоб надати доступ до цих файлів, ми змінимо режим цих двох файлів на 600. Команда для встановлення дозволів наведена нижче.

$ sudo chmod 600 / etc / wireguard / privatekey

$ sudo chmod 600 / etc / wireguard / wg0.конф

Після доопрацювання дозволів ми запустимо інтерфейс (wg0) за допомогою інструменту командного рядка wg-quick.

Крок 6: Запустіть інтерфейс

Щоб запустити інтерфейс, виконайте команду, наведену нижче:

$ sudo wg-швидкий вгору wg0

Якщо ви отримали вихідні дані, показані на скріншоті вище, ви успішно запустили інтерфейс. Тепер ми перевіримо статус інтерфейсу.

$ sudo wg

Увімкніть інтерфейс для автоматичного запуску інтерфейсу при завантаженні сервера CentOS 8.

$ sudo systemctl увімкніть wg-quick @ wg0

На цьому етапі налаштування сервера завершено. Тепер, якщо ви хочете налаштувати цей сервер VPN для NAT, вам потрібно буде ввімкнути переадресацію IPv4.

Крок 7: Увімкніть переадресацію IPv4

Щоб увімкнути переадресацію IPv4 для NAT, створіть «99-настроюваний.conf ”у“ / etc / sysctl.d ”за допомогою редактора nano.

$ sudo nano / etc / sysctl.г / 99-на замовлення.конф

Додайте наступний вміст до “/ etc / sysctl.г / 99-на замовлення.конф

## для ввімкнення переадресації IPv4 ##
чистий.ipv4.ip_forward = 1

Щоб увімкнути переадресацію IPv6, додайте такий вміст до “/ etc / sysctl.г / 99-на замовлення.conf ”.

## для ввімкнення переадресації IPv6 ##
чистий.ipv6.конф.всі.переадресація = 1

Увімкнувши переадресацію IPv4, збережіть файл і вийдіть за допомогою ярликів (CTRL + S) та (CTRL + X).

Тепер перейдемо до налаштування машини клієнта WireGuard.

Встановлення та налаштування WireGuard VPN на клієнті CentOS 8

У цьому розділі ми налаштуємо машину CentOS 8, яка буде виконувати функції клієнта. Процес встановлення та налаштування клієнта WireGuard VPN буде майже таким самим, як і для сервера WireGuard VPN.

Крок 1: Додайте сховища EPEL та Elrepo

Спочатку ми додамо репозиторії EPEL та Elrepo для встановлення модулів ядра та інструментів WireGuard:

$ sudo dnf встановити epel-release elrepo-release -y

Тепер, після встановлення необхідних сховищ, ми встановимо модулі ядра та WireGuard Tools.

Крок 2: Встановіть модулі ядра та WireGuard Tools

Модулі ядра та інструменти WireGuard тепер можна встановити із сховищ EPEL та Elrepo, виконавши таку команду.

$ sudo dnf встановити kmod-wireguard дротяні інструменти

Коли вас попросять дозволу імпортувати та додати ключі GPG до системи CentOS 8, дозвольте зміни, набравши "Y" та натиснувши "Enter."

Після успішного встановлення інструментів WireGuard потрібно також налаштувати клієнтську машину CentOS 8.

Крок 3: Створіть державні та приватні ключі

На цьому кроці ми створимо новий каталог '/ etc / wireguard' на машині клієнта. Щоб створити новий каталог '/ etc / wireguard' у вашій системі CentOS 8, введіть таку команду.

sudo mkdir / etc / wireguard

Після створення каталогу створіть відкритий та закритий ключі за допомогою інструментів командного рядка “wg” та “tee”. Команда для створення приватних та відкритих ключів наведена нижче.

$ wg genkey | sudo tee / etc / wireguard / privatekey | wg pubkey | sudo tee / etc / wireguard / publickey

Тепер створені ключі будуть надруковані.

Крок 4: Налаштування маршрутизації трафіку VPN

На цьому кроці ми створимо файл конфігурації в каталозі '/ etc / wireguard' і відкриємо його за допомогою редактора nano.

Перш ніж створювати файл конфігурації, отримайте приватний ключ, використовуючи таку команду.

$ sudo cat / etc / wireguard / privatekey

Збережіть десь закритий ключ; вам це знадобиться пізніше у файлі конфігурації.

Тепер створіть “wg0.conf ”.

$ sudo nano / etc / wireguard / wg0.конф

Додайте наведений нижче вміст до “/ etc / wireguard / wg0.conf ”

[Інтерфейс]
## Приватний ключ клієнта VPN ##
PrivateKey = 8D8puLQCbUw + 51wPE3Q7KutGxQhUvsy + a + DBgamb + 3o =
## IP-адреса клієнта VPN ##
Адреса = 192.168.18.201/24
[Ровесник]
## Відкритий ключ сервера VPN CentOS 8 ##
PublicKey = VWndJ4oB7ZJwC / 7UOm ++ OLDrbAxMPsR2yd0cl3sEkUI =
## встановити ACL ##
Дозволені IP-адреси = 0.0.0.0/0
## IP-адреса та порт сервера VPN CentOS 8 ##
Кінцева точка = 192.168.18.200: 51820

Файл конфігурації містить такі ключові терміни:

Тепер ми також налаштували клієнтську машину. Збережіть файл і вийдіть за допомогою комбінацій клавіш (CTRL + S) та (CTRL + X).

Крок 5: Встановіть привілеї конфігурації та файлу “privatekey”

Тепер ми змінимо режим і встановимо привілеї файлу конфігурації та файлу “privatekey” на 600. Введіть таку команду, щоб встановити дозволи.

$ sudo chmod 600 / etc / wireguard / privatekey

$ sudo chmod 600 / etc / wireguard / wg0.конф

Тепер, коли ми доопрацювали дозволи, ми можемо запустити інтерфейс (wg0) за допомогою інструменту командного рядка “wg-quick”.

Крок 6: Запустіть інтерфейс

Щоб запустити інтерфейс, виконайте команду, наведену нижче:

$ sudo wg-швидкий вгору wg0

Зараз ми успішно запустили інтерфейс. Далі ми перевіримо стан інтерфейсу.

$ sudo wg

Увімкніть інтерфейс для автоматичного запуску інтерфейсу при завантаженні сервера CentOS 8.

$ sudo systemctl увімкніть wg-quick @ wg0

На цьому етапі також налаштовується клієнт.

Крок 7: Додайте IP-адресу та відкритий ключ клієнта до CentOS 8 Server

Останній крок - це додавання IP-адреси та відкритого ключа машини-клієнта VPN до файлу конфігурації серверної машини VPN CentOS 8 WireGuard.

Поверніться до серверної машини та додайте наступний вміст до “/ etc / wireguard / wg0.conf ”.

[Ровесник]
## Відкритий ключ клієнта VPN ##
PublicKey = dmfO9pirB315slXOgxXtmrBwAqPy07C57EvPks1IKzA =
## IP-адреса клієнта VPN ##
Дозволені IP-адреси = 192.168.10.2/32

Після оновлення файлу конфігурації сервера VPN збережіть файл і вийдіть за допомогою комбінацій клавіш (CTRL + S) та (CTRL + X).

Зараз тунель встановлено, і весь трафік буде проходити через сервер CentOS 8 WireGuard VPN.

Крок 8: Перевірте підключення до тунелю

Щоб переконатися, що сервер CentOS 8 WireGuard VPN встановлений та налаштований належним чином, виконайте наведену нижче команду, щоб переконатися, що трафік проходить через налаштований сервер WireGuard VPN.

$ sudo wg

І це все! Ви успішно налаштували та встановили сервер WireGuard VPN.

Висновок

У цій статті показано, як встановити та налаштувати WireGuard VPN на вашому комп'ютері CentOS 8 та налаштувати систему як сервер VPN. Ми також показали вам, як налаштувати VPN-клієнт CentOS 8 WireGuard і налаштувати клієнта на маршрутизацію трафіку через сервер WireGuard VPN.

Топ 5 ергономічних продуктів для комп'ютерної миші для Linux
Чи викликає тривале використання комп’ютера біль у зап’ясті або пальцях? Ви страждаєте від ригідності суглобів і вам постійно доводиться трясти руки? ...
How to Change Mouse and Touchpad Settings Using Xinput in Linux
Most Linux distributions ship with “libinput” library by default to handle input events on a system. It can process input events on both Wayland and X...
Remap your mouse buttons differently for different software with X-Mouse Button Control
Maybe you need a tool that could make your mouse's control change with every application that you use. If this is the case, you can try out an applica...