Centos 7 wifi из консоли

Настройку сети в CentOS 7 можно осуществить несколькими способами, я расскажу о довольно простом и быстром. Предполагается, что вы еще не настроили сеть при установке операционной системы (или установлен DHCP). Сначала посмотрим список доступных интерфейсов:

#ip link list 1: lo: mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 2: enp0s25: mtu 1500 qdisc pfifo_fast state UP mode DEFAULT qlen 1000 link/ether 00:1f:29:3d:96:9f brd ff:ff:ff:ff:ff:ff

Если у вас одна сетевая карта, то, скорее всего, вы увидите похожий вывод. Первый интерфейс — loopback , второй — интерфейс нужной сетевой карточки. Чаще всего имя интерфейса — eth0 , но бывает и как у меня — enp0s25 . Далее требуется отредактировать файл скрипта для сетевого интерфейса. При загрузке сетевого сервиса, параметры для сети берутся именно оттуда. Расположение файла скрипта: . Имя файла состоит из «ifcfg» и имени интерфейса. В моем случае это enp0s25 , вам нужно подставить свое. В файле уже указаны различные значения, можно смело все удалять и указывать свои параметры.

Откроем файл /etc/sysconfig/network-scripts/ifcfg-enp0s25 любимым текстовым редактором или текстовым редактором vi .

#vi /etc/sysconfig/network-scripts/ifcfg-enp0s25

Для настройки получения сетевых реквизитов по DHCP достаточно указать:

TYPE="Ethernet" DEVICE="enp0s25" BOOTPROTO="DHCP" DEFROUTE="yes" ONBOOT="yes"

Для настройки работы интерфейса со статическим адресом, запишем в файл следующее (тут же можно указать серверы DNS):

TYPE="Ethernet" DEVICE="enp0s25" BOOTPROTO="none" DEFROUTE="yes" ONBOOT="yes" IPADDR="192.168.0.10" NETMASK="255.255.255.0" GATEWAY="192.168.0.1" DNS1="192.168.0.1" DNS2="8.8.8.8"

Параметры сети указывайте свои. Ниже кратко опишу, что значит каждый пункт:

TYPE - тип соединения, в случае с обычной проводной сетью указывать «Ethernet»

DEVICE - имя интерфейса (сетевой карты), отображаемое в системе

BOOTPROTO - определяем, какой протокол требуется использовать для получения сетевых параметров. Возможные варианты:

«none» - не загружать параметры сети с сервера

«DHCP» - использовать протокол DHCP

«BOOTP» - использовать протокол BOOTP

DEFROUTE - указываем, что данный сетевой интерфейс будет использоваться по умолчанию

ONBOOT - требуется ли использовать данный скрипт при загрузке

IPADDR - ip-адрес в локальной сети

NETMASK - маска сети

GATEWAY - шлюз сети (часто — адрес роутера)

DNS1 - ip-адрес первого сервера DNS

DNS2 - ip-адрес второго сервера DNS. Тут я обычно указываю DNS-сервер Google

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

#systemctl restart network

Существуют и другие способы настройки сети в CentOS 7, но я предпочитаю использовать этот.

Как настроить Wi-Fi в Linux через терминал. Недавно я попробовал дистрибутив CentOS и нельзя сказать, что был сильно впечатлен. Одной из задач во время тестирования была настройка Wi-Fi в конфигурации без графической среды.

Настройка Wi-Fi в Linux

Зачем может понадобиться настройка Wi-Fi через терминал, если есть GUI?

Эта статья будет полезна не только любителям командной строки, но и тем, кто устал от чудачеств графических утилит настройки . Тем более, что ручная настройка не займет много времени, а вы получите ценный опыт, ведь поймете как работает Wi-Fi в Линуксе, тогда как любители GUIев понимают лишь какие кнопки и в какой последовательности нажимать.

Подключение к беспроводной сети в новой версии Ubuntu

Поддержка Wi-Fi ядром Linux

Прежде всего, необходимо убедиться, что ядро загрузило нужные модули под ваше Wi-Fi-оборудование. Проверить можно так:

Ifconfig -a

Команда выведет список всех доступных интерфейсов. Беспроводной (wlan0) должен быть. Можно еще использовать команду iwconfig, которая покажет только беспроводные интерфейсы. Ее использовать даже правильнее.

Далее смотрим список доступных беспроводных сетей. Тут важно точно запомнить название. Я как-то не заметил, что название настраиваемой сети было с заглавной и написал строчную - потом долго не мог найти почему все не работало. Итак, протираем очки и внимательно рассматриваем вывод следующей команды:

Iwlist wlan0 scan

Список беспроводных сетей в Linux

Будет выведена исчерпывающая информация об обнаруженных сетях. Ее можно прокручивать стандартными средствами (например, less или Shift-PageUp), а можно перенаправить в файл (iwlist wlan0 scan >!) и спокойно изучать в любимом редакторе. Разумеется, вместо wlan0 должно быть имя именно того интерфейса, который используется у вас.

WEP, WPA и WPA2 в Linux

Дальше любителей CentOS/RedHat ждет сюрприз. Для работы с сетями, защищенными WPA/WPA2 (а защитой WEP пользуются в наше время только мазохисты) потребуется дополнительный пакет wpa_supplicant. Если нет интернета, можно этот пакет поискать на установочном диске. Лично я считаю такое решение разработчиков странным, если не сказать глупым. Утилиты для работы с Wi-FI доступны «из коробки», а поддержку WPA/WPA2 надо доустанавливать вручную. Где смысл, в чем логика?

Этот коварный WPA Supplicant

Теперь настраиваем wpa_supplicant. Открываем /etc/sysconfig/wpa_supplicant и вписываем:

INTERFACES ="-iwlan0" DRIVERS ="-Dwext"

Опять же, обратите внимание, что интерфейс и драйвер в вашем случае могут быть другими. Расположение этого файла в директории /etc/sysconfig справедливо только для CentOS/Red Hat. Для вашего дистрибутива уточнить расположение конфигурационного файла можно с помощью команды «man wpa_supplicant».

Теперь открываем файл /etc/wpa_supplicant/wpa_supplicant.conf и вносим новую секцию, отвечающую за подключение к выбранной сети:

Network={ ssid="Название сети" key_mgmt=WPA-PSK psk="Тут пароль" pairwise=CCMP group=CCMP }

Это для WPA2. Для WPA значения pairwise и group устанавливаем в TKIP.

Теперь wpa_supplicant готов честно трудиться для того, чтобы пользователь имел возможность подключиться к своей любимой рабочей сети. Запускаем сервис:

Service wpa_supplicant start

Wi-Fi на сервере, автоматическое включение после перезагрузки

Ну и заключительный аккорд (а то еще немного и читатель смог бы засомневаться в правдивости моих слов о простоте и быстроте ручной настройки). Нам нужно описать сценарий запуска интерфейса wlan0. Открываем (или создаем) файл /etc/sysconfig/network-scripts/ifcfg-wlan0 и вписываем следующее:

DEVICE=wlan0 BOOTPROTO=dhcp ONBOOT=no

Строки предписывают использовать для интерфейса wlan0 получение данных (IP-адреса, шлюза и маски подсети) через службу DHCP и не поднимать Wi-Fi автоматически при загрузке (настоящий каккер выходит в онлайн только тогда, когда это действительно необходимо).

Пользователи Linux, избалованные дистрибутивами наподобие Ubuntu, практически не сталкиваются с проблемой настройки сети. Интернет подключается автоматически в момент установки дистрибутива. Система сама находит сетевое оборудование и производит его настройку. Примерно так же, как это происходит в операционной системе Windows сравнительно поздних выпусков.

В Centos дело обстоит иначе – юзеру или администратору приходится поработать мозгами и ручками. Связано это с практичностью и минимализмом дистрибутива в некоторых его аспектах. А также тем, что он рассчитан на сравнительно узкий круг подготовленных пользователей. Данную ОС особенно любят системные администраторы в офисах и на производстве. На протяжении нашего короткого рассказа мы обсудим, как в Centos осуществляется настройка сети.

Разумеется, наш рассказ не будет всеохватным, мы остановимся только на основных моментах, а тонкую регулировку параметров оставим на потом. Многие пользователи сталкиваются с препятствиями уже на первом этапе: терминал реагирует на ifconfig ошибкой. Мол, нет такой команды и все тут. Ifconfig необходимо запускать от имени администратора системы с префиксом «su -».

Более подробно о конфигурировании

Вся настройка сети в CentOs сводится к редактированию конфигурационных файлов с именами, начинающимися на «ifcfg-».

Начнем с редактирования файла ifcfg-eth0, расположенного по адресу /etc/sysconfig/network-scripts/. Сделать это можно при помощи редактора vi или любого другого. Имеется две основные разновидности настроек сети в CentOs – на базе протокола DHCP и для статического IP-адреса. В первом случае содержимое данного файла конфигурации нужно будет сделать таким:

В случае использования DHCP эти строки будут выглядеть так:

Есть еще один файл конфигурации, который нужно править при настройке сети в CentOs. Это файл /etc/sysconfig/network. Сюда нужно ввести такие строки:

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

Указания на DNS задаются в файле под именем /etc/resolv.conf. Сведения о DNS вводятся в данный файл в таком формате:

Вот, пожалуй, и все, что нужно знать и уметь для первоначальной настройки сети в CentOs. То есть ничего особенно сурового. Приведем еще команду, используемую для отключения сетевого интерфейса.

Однако, чтобы их решить раз и навсегда рекомендуем, при технической возможности, выделить IP-АТС белый IP.

Внимание: делайте это если вы хорошо понимаете, что такое безопасность (Прочитать можно ) и с iptables на ТЫ.

Если в сервере нет второй сетевой карты, то обычно ее можно приобрести за небольшие деньги. Покупайте сетевую карту только от известного производителя, тогда она без проблем определится в системе и прослужит вам долго.


1. Определение сетевой карты в системе.

После того как вставили сетевую карту и загрузились, вводим команду: ifconfig. Если сетевая определилась, то мы увидим например такое:

….



RX packets:222424 errors:0 dropped:0 overruns:0 frame:0
TX packets:3456 errors:0 dropped:0 overruns:0 carrier:0

RX bytes:45173795 (43.0 MiB) TX bytes:380609 (371.6 KiB)
Interrupt:225

2. Настройка IP адреса

Это значит, что сетевая карта определилась, но пока не имеет IP адреса. Вставляем провод от провайдера для настройки внешнего IP. Например, провайдер выдал нам такие настройки:

ip: 123.45.45.2
gw: 123.45.45.1
netmask: 255.255.255.252
dns: 123.45.44.1

Представим, что мы находимся в другом городе и при потери контроля нас ждет командировка, ну или придется долго объяснять пользователю, что нужно сделать. Поэтому делаем все поэтапно.

Начинаем править конфиг:

nano /etc/sysconfig/network-scripts/ifcfg-eth1

DEVICE=eth1
BOOTPROTO=static
ONBOOT=yes
HWADDR=00:e0:4c:33:59:b0
IPADDR=123.45.45.2
NETMASK=255.255.255.252

Теперь перезапускаем наш eth1 интерфейс:

# ifdown eth1
# ifup eth1

Смотрим, что ip-адрес правильный:

# ifconfig
….
eth1 Link encap:Ethernet HWaddr 00:E0:4C:33:59:B0
inet addr:123.45.45.2 Bcast:123.45.45.3 Mask:255.255.255.252
inet6 addr: fe80::2e0:4cff:fe33:59b0/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:228286 errors:0 dropped:0 overruns:0 frame:0
TX packets:3508 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:46361012 (44.2 MiB) TX bytes:389499 (380.3 KiB)
Interrupt:225

Теперь проверяем доступность шлюза провайдера. То что он выдал, надо еще проверить:

# ping 123.45.45.1
PING 123.45.45.1 (123.45.45.1) 56 (84) bytes of data.
64 bytes from 123.45.45.1: icmp_seq=1 ttl=64 time=0.127 ms
64 bytes from 123.45.45.1: icmp_seq=2 ttl=64 time=0.127 ms

--- 123.45.45.1 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 999ms
rtt min/avg/max/mdev = 0.127/0.127/0.127/0.000 ms

Ага, все хорошо. Но опять же, это не значит, что нас пустят в интернет. Добавляем маршрут, например, до нашего роутера откуда работаем, через новый шлюз 123.45.45.1.

# route add -host 87.250.250.203 gw 123.45.45.1

Проверяем, что маршрут добавился
# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
87.250.250.203 123.45.45.1 255.255.255.255 UGH 0 0 0 eth1
192.168.192.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
123.45.45.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1
169.254.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth1
0.0.0.0 192.168.192.1 0.0.0.0 UG 0 0 0 eth0

Выполням ping 87.250.250.203 и traceroute 87.250.250.203, удостоверяемся, что все проходит удачно. Для гарантии добавьте маршруты до DNS сервера, который будет использоваться и еще какой-нибудь узел в интернете. Если все пингуется, значит наш gw пускает в интернет. Теперь можно сменить маршрут по умолчанию на новый, а старый закомментировать.

# nano /etc/sysconfig/network-scripts/ifcfg-eth0
# Broadcom Corporation NetXtreme BCM5723 Gigabit Ethernet PCIe
DEVICE=eth0
BOOTPROTO=none
HWADDR=2c:41:38:87:88:43
ONBOOT=yes
NETMASK=255.255.255.0
IPADDR=192.168.192.87
#GATEWAY=192.168.192.1
TYPE=Ethernet

# nano /etc/sysconfig/network-scripts/ifcfg-eth1
# Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+
DEVICE=eth1
BOOTPROTO=static
ONBOOT=yes
HWADDR=00:e0:4c:33:59:b0
IPADDR=123.45.45.2
NETMASK=255.255.255.252
GATEWAY=123.45.45.1

Если все сделано верно, то выполняем перезагрузку всех сетевых интерфейсов
# service network restart

Внимание: убедитесь, что правила iptables позволяют сделать подключение из чужой сети. Временно выключить защиту можно командой: service iptables stop
И если все прошло гладко, то вы уже сможете подключится через внешний IP.

Внимание: возможны отличия в конфигурации, внимательно подходите к этому вопросу, если сервер находится далеко и нет KVM.

3. Настройка роутинга

Итак, мы добавили второй интерфейс, настроили его. Теперь может встать задача, настройки маршрутизации трафика до определенного хоста или сети через старый шлюз (например, там трафик дешевле). Для этого необходимо прописать маршрут. Это делается командой route.
#route add -host 95.11.13.5 gw 192.168.192.1 dev eth0

Делаем ping и traceroute (mtr) до хоста 95.11.13.5. Видим, что трафик идет через указанный шлюз.

Примечание: часто думают, что на этом настройка закончена, но после перезагрузки или рестарта сетевых интерфейсов маршруты слетают. Тут и добавка в rc.local может не помочь
Правильно прописать маршруты «навсегда» так.
Создаем файл:

#nano /etc/sysconfig/network-scripts/route-eth0
ADDRESS0=95.11.13.5
GATEWAY0=192.168.192.1
NETMASK0=255.255.255.255

Сохраняем. Теперь после service network restart данный маршрут пропишется автоматически.

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

  • Сергей Савенков

    какой то “куцый” обзор… как будто спешили куда то