Настройка интернет сервера linux

Как настроить статический IP-адрес в Ubuntu Server 20.04

Настройка сети в Ubuntu Server 20.04 LTS осуществляется через утилиту Netplan.

NetPlan — это инструмент для управления настройками сети, представленный в Ubuntu начиная с версии 17.10 и выше.

Этот инструмент заменяет файл статических интерфейсов /etc/network/interfaces , который ранее использовался для настройки сетевых интерфейсов в Ubuntu. Теперь нужно использовать /etc/netplan/*.yaml для ваших изменений в настройках сетевых интерфейсов.

Определение сетевых интерфейсов

Определите все доступные сетевые интерфейсы используя команду ip или lshw :

sudo ip a // Или sudo lshw -class network

Определение сетевых интерфейсов

У меня уже настроен IP адрес: 192.169.0.150. Я изменю его.

Настройки локальной сети

Отредактируйте файл конфигурации netplan который находится в директории /etc/netplan/ :

sudo vim /etc/netplan/00-installer-config.yaml

Настройки локальной сети

Здесь придётся прописать всё ручками, если у вас ещё нет доступа по SSH. У меня этот файл уже редактировался, мне необходимо изменить только IP адрес.

Основные настройки:

  • addresses — ip адрес который будет назначен вашей сетевой карте.
  • gateway4 — ip адрес вашего роутера.
  • nameservers — DNS сервера. Первый — наш роутер.
  • search — домен в котором будет произведен поиск. Домен можно настроить при помощи DNS сервера

Мои настройки:

network: ethernets: enp0s3: addresses: - 192.168.0.105/24 gateway4: 192.168.0.1 nameservers: addresses: [192.168.0.1, 8.8.4.4] optional: true version: 2 renderer: networkd

ВАЖНО!
Обратите внимание на пробелы! Именно пробелы должны быть, а не табуляция. Если у вас после сохранения файла не появилась ошибка типа: Error while loading /etc/netplan/00-installer-config.yaml, то файл отредактирован правильно с точки зрения его синтаксиса.

После редактирования файла: Esc -> Shift + : -> wq! -> Enter .

Настройки локальной сети - результат

Если есть необходимость передать управление сетевыми устройствами утилите NetworkManager:

network: version: 2 renderer: NetworkManager

Настройки беспроводной сети

Для корректной работы беспроводного интерфейса вам потребуется установить утилиту WPA supplicant , которая позволяет подключиться к точкам доступа с WPA. WPA и WPA2:

sudo apt install wpasupplicant

Добавьте новый файл конфигурации в каталог /etc/netplan/ :

sudo vim /etc/netplan/01-config.yaml

Отредактируйте файл конфигурации беспроводной сети с динамическим ip-адресом (DHCP):

network: version: 2 renderer: networkd wifis: wlp3s0: dhcp4: yes dhcp6: no access-points: "network_ssid_name": password: "**********"

Для беспроводной сети в которой используются статические ip-адреса подойдет следующая конфигурация:

network: version: 2 renderer: networkd wifis: wlp3s0: dhcp4: no dhcp6: no addresses: [192.168.0.21/24] gateway4: 192.168.0.1 nameservers: addresses: [192.168.0.1, 8.8.8.8] access-points: "network_ssid_name": password: "**********"

Применение конфигурации

Использование netplan для генерации необходимой конфигурации:

Читайте также:  Boot repair astra linux

Для подробного вывода информации при генерации, используйте опцию —debug :

sudo netplan --debug generate

Применение конфигурации netplan:

Для подробного вывода информации при применении, используйте опцию —debug :

Применение конфигурации

Далее рекомендуется перезапустить интерфейсы или перезагрузить сервер:

Подключение по SSH

В Windows PowerShell:

Подключение по SSH в PowerShell

Используем Putty. Указываем IP адрес и задаем имя сессии, жмём Open:

Подключение по SSH в Putty

При первом подключении к серверу мы увидим сообщение. Жмём ДА.

Первое подключение по SSH в Putty

Вводим имя пользователя и пароль. Если всё прошло успешно, увидим:

Соединение по SSH установлено

На этом настройка статического IP-адреса в Ubuntu Server 20.04 LTS закончена.

Пример конфигурации

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

network: version: 2 # if specified, can only realistically have that value, as networkd cannot # render wifi/3G. renderer: NetworkManager ethernets: # opaque ID for physical interfaces, only referred to by other stanzas wlp3s0: match: macaddress: 00:11:22:33:44:55 wakeonlan: true dhcp4: true addresses: - 192.168.14.2/24 - 192.168.14.3/24 - "2001:1::1/64" gateway4: 192.168.14.1 gateway6: "2001:1::2" nameservers: search: [foo.local, bar.local] addresses: [8.8.8.8] routes: - to: 0.0.0.0/0 via: 11.0.0.1 table: 70 on-link: true metric: 3 routing-policy: - to: 10.0.0.0/8 from: 192.168.14.2/24 table: 70 priority: 100 - to: 20.0.0.0/8 from: 192.168.14.3/24 table: 70 priority: 50 # only networkd can render on-link routes and routing policies renderer: networkd lom: match: driver: ixgbe # you are responsible for setting tight enough match rules # that only match one device if you use set-name set-name: lom1 dhcp6: true switchports: # all cards on second PCI bus unconfigured by # themselves, will be added to br0 below # note: globbing is not supported by NetworkManager match: name: enp2* mtu: 1280 wifis: all-wlans: # useful on a system where you know there is # only ever going to be one device match: <> access-points: "Joe's home": # mode defaults to "infrastructure" (client) password: "s3kr1t" # this creates an AP on wlp1s0 using hostapd # no match rules, thus the ID is the interface name wlp1s0: access-points: "guest": mode: ap # no WPA config implies default of open bridges: # the key name is the name for virtual (created) interfaces # no match: and set-name: allowed br0: # IDs of the components; switchports expands into multiple interfaces interfaces: [wlp1s0, switchports] dhcp4: true

Подробнее об использовании Netplan здесь.

Источник

Домашний интернет-шлюз. Начальная настройка 6-портового мини-компьютера на Ubuntu Server 20.04 LTS

На просторах интернета присутствует бесчисленное количество информации касательно настройки сервера на Ubuntu, но на каждом шагу можно встретить неочевидные для новичка моменты. Я хочу поделиться своим опытом и, возможно, решить чью-то проблему. В статье будет рассказано, как настроить многопортовый сервер (6 портов): Netplan, DHCP-сервер, UFW(Uncomplicated Firewall). А теперь обо всем по порядку.

Читайте также:  Удалить раздел windows linux

Введение

Обновил я интернет до 500 Мбит/с, и пришло время заняться 100 Мбитным сервером, который работал на Pentium 3 и был уже на грани. Выбор пал на китайского зверя. Все, что нужно — имеется, потребление в обычном режиме не превышает 15W, запас производительности для дополнительных задач есть.

Установку ОС расписывать не буду («ОК — Далее — Далее»), отмечу только, что при установке требуется сконфигурировать хотя бы один сетевой интерфейс для доступа в интернет.

Для удобства я использую Midnight Commander и его текстовый редактор. Работать будем от root-пользователя:

Итак, у нас есть установленная Ubuntu Server, начнем с конфигурации остальных сетевых интерфейсов.

Netplan

В последних версиях Ubuntu появилась утилита Netplan, позволяющая настроить сеть в унифицированном формате и выбирать сетевой менеджер для работы. По умолчанию используется Systemd-networkd, я же выбрал NetworkManager, так как установил Web-интерфейс Cockpit, который использует именно NM для отображения части информации.
Синтаксис конфигурации Netplan очень строгий и лишний пробел или табуляция может вызвать ошибку.

Подробнее о функционале уже расписывали habr.com/ru/post/448400, так же различные примеры есть на сайте netplan.io/examples.

Посмотрим названия интерфейсов:

Перейдем в директорию /etc/netplan и откроем (F4 для МС) файл 50-cloud-init.yaml. Для сетевого интерфейса, который будет использоваться для подключения к интернету, определим получение настроек по dhcp (dhcp4: true). В моем случае это enp6s0. Для остальных укажем false и добавим параметр optional: true, т.к. интерфейс может быть ни к чему не подключен.

Для объединения интерфейсов в локальную сеть я использовал bridge, но, возможно, правильнее было бы использовать vlan. Создадим мост lan-br, зададим общий IP-адрес, DNS-сервер и пропишем объединяемые интерфейсы:

 bridges: lan-br: dhcp4: false addresses: [ 192.168.13.1/24 ] nameservers: addresses: [ 192.168.13.1 ] interfaces: [ enp1s0, enp2s0, enp3s0, enp4s0, enp5s0 ]

У меня будет собственный DNS-сервер, поэтому указываю адрес своего сервера в поле nameservers, можно указать например 8.8.8.8 (Google). Указываем версию и менеджер. В итоге должно получиться примерно так:

network: ethernets: enp1s0: dhcp4: false optional: true enp2s0: dhcp4: false optional: true enp3s0: dhcp4: false optional: true enp4s0: dhcp4: false optional: true enp5s0: dhcp4: false optional: true enp6s0: dhcp4: true nameservers: addresses: - 127.0.0.1 - 192.168.13.1 bridges: lan-br: dhcp4: false addresses: [ 192.168.13.1/24 ] nameservers: addresses: [ 192.168.13.1 ] interfaces: [ enp1s0, enp2s0, enp3s0, enp4s0, enp5s0 ] version: 2 renderer: NetworkManager 

Сохраняем файл и проверяем/применяем конфигурацию:

1: lo: mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: enp1s0: mtu 1500 qdisc fq_codel master lan-br state UP group default qlen 1000 link/ether 0c:e8:2c:68:5b:57 brd ff:ff:ff:ff:ff:ff 3: enp2s0: mtu 1500 qdisc fq_codel master lan-br state UP group default qlen 1000 link/ether 0c:e8:2c:68:5b:58 brd ff:ff:ff:ff:ff:ff 4: enp3s0: mtu 1500 qdisc fq_codel master lan-br state UP group default qlen 1000 link/ether 0c:e8:2c:68:5b:59 brd ff:ff:ff:ff:ff:ff 5: enp4s0: mtu 1500 qdisc fq_codel state DOWN group default qlen 1000 link/ether 0c:e8:2c:68:5b:5a brd ff:ff:ff:ff:ff:ff 6: enp5s0: mtu 1500 qdisc fq_codel state DOWN group default qlen 1000 link/ether 0c:e8:2c:68:5b:5b brd ff:ff:ff:ff:ff:ff 7: enp6s0: mtu 1500 qdisc fq_codel state UP group default qlen 1000 link/ether 0c:e8:2c:68:5b:5c brd ff:ff:ff:ff:ff:ff inet 188.32.236.197/19 brd 188.32.255.255 scope global dynamic noprefixroute enp6s0 valid_lft 2898sec preferred_lft 2898sec inet6 fe80::ee8:2cff:fe68:5b5c/64 scope link valid_lft forever preferred_lft forever 8: lan-br: mtu 1500 qdisc noqueue state UP group default qlen 1000 link/ether 0c:e8:2c:68:5b:57 brd ff:ff:ff:ff:ff:ff inet 192.168.13.1/24 brd 192.168.13.255 scope global noprefixroute lan-br valid_lft forever preferred_lft forever inet6 fe80::ee8:2cff:fe68:5b58/64 scope link valid_lft forever preferred_lft forever

DHCP-сервер

Настроим DHCP-сервер для того, чтобы клиенты могли получать IP-адреса автоматически.

apt-get install isc-dhcp-server

В файле /etc/default/isc-dhcp-server правим строчку:

Читайте также:  Просмотр размера дисков linux

Переходим в /etc/dhcp, открываем dhcpd.conf и прописываем настройки:

option domain-name "your-domain-name"; option domain-name-servers 192.168.13.1; subnet 192.168.13.0 netmask 255.255.255.0
service isc-dhcp-server restart

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

UFW

UFW (Uncomplicated Firewall) — инструмент для более легкой настройки iptables. Настроим фаервол и пересылку пакетов между интерфейсами. Переходим в/etc/ufw и в файле sysctl.conf раскомментируем строку:

Если Вы подключены через ssh перед началом откройте 22 порт:

Включим UFW, проверим состояние:

ufw enable ufw status verbose

Зададим политики по умолчанию:

ufw default deny incoming ufw default allow outgoing ufw default allow routed

Разрешим доступ из локальной сети:

ufw allow in on lan-br to any

Настроим NAT. Откроем файл before.rules и пишем следующее перед блоком *filter:

*nat :POSTROUTING ACCEPT [0:0] #local -A POSTROUTING -s 192.168.13.0/24 -o enp6s0 -j MASQUERADE COMMIT

Сохраняемся и перезапускаем ufw:

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

На этом базовую настройку сервера можно считать законченной.

Заключение

Я не поднимал вопрос настройки DNS-сервера, так как планирую выпустить вторую часть, где будет изложена настройка Dnscrypt-proxy в роли DNS-сервера для локальной сети.

Более подробная информация:

Источник

Оцените статью
Adblock
detector