Как на ноутбуке включить wifi? Ubuntu не работает Wi-Fi? Вот как это исправить Подключение к вай фай на ubuntu 10.10.

Если вы владелец какого-либо мобильного устройства под управлением OS Linux , то вам в первую очередь придется задуматься над выполнением задачи номер один - настройка соединения с беспроводной точкой доступа Wifi. По умолчанию, стандартные инструменты для Linux-десктопов надежны и удобны в использовании. Например, Wifi Radar , Network Manager , и многие другие программы этого класса. Конечно, подразумевается, что вы используете окружения типа Gnome или KDE, обладающих очень богатым функционалом и выбором.

Но как быть, если у вас нечто другое и более редкое - E17, Fluxbox, ION или вообще "голая" консоль? В этом случае вам стоит применить классический способ настройки - командная строка.

Давайте рассмотрим два случая настройки соединения с беспроводной точкой доступа:

  • графическое приложение Wicd (для примера);
  • консольные утилиты.

Вступление

Предполагается, что у вас имеется беспроводное сетевое устройство (адаптер), который работает под Linux . Если вы вдруг обнаружили, что ваше устройство не работает, можно предложить, как один из вариантов для новичков, поставить последнюю версию дистрибутива Ubuntu и установить проприетарные драйвера для своей беспроводной карточки. Предложенный случай является наиболее простым и действенным, по сравнению с попытками заставить работать адаптер через драйвер ndiswrapper.
Также предполагается, что у вас имеются в наличии два параметра для подключения к беспроводной точке: SSID и идентификационный ключ. Без них (особенно - без второго, так как первый еще можно легко узнать) вы не сможете установить соединение.

Wicd

Wicd - графическое приложение, написанное на Python. Гибкая и удобная в использовании программа, предлагающая большой функционал. Wicd легко устанавливается и им также легко пользоваться. Достаточно всего нескольких минут для ознакомления с программой. Стоит также заметить, что Wicd, помимо графического интерфейса, имеет и консольный вариант "исполнения", не уступающий по функциональности.

Командная строка

Давайте теперь посмотрим, как настроить wifi -соединение через командную строку. К слову сказать, такой способ является универсальным, так как используются утилиты, являющиеся стандартными для всех дистрибутивов Linux . Более того, все приложения с графическим интерфейсом (GUI) основаны на работе именно этих утилит. Образно говоря, если мы "снимем" "крышу" GUI у любого графического приложения, то под ней мы увидим скромных и незаметных тружеников консоли: ifconfig, wireless-tools, wpa_supplicant, ping, nmap и многих других.

Для выполнения нашей задачи понадобятся следующие утилиты:

  • ifconfig : полностью управляет работой любого сетевого адаптера вашего компьютера (будь то проводной или беспроводной интерфейс);
  • iwlist : выдает список доступных для подключения (находящихся в радиусе досягаемости) беспроводных дочек доступа;
  • iwconfig : утилита управления и конфигурирования беспроводных сетевых устройств (адаптеров);
  • dhclient (или его налоги): автоматически получает IP-адрес от dhcp-сервера беспроводной точки;
  • wpa_supplicant : утилита для настройки шифрованных соединений.

Перед началом настройки wifi -соединения логичным было бы проверить наличие всех этих утилит в системе (хотя, почти все они входят в стандартный набор Linux -дистрибутивов). Давайте, все же, убедимся в том, что они есть у нас, выполнив совсем несложные команды (см. man which):

  • which ifconfig
  • which iwlist
  • which iwconfig
  • which dhclient
  • which wpa_supplicant

При выполнении каждой из этих команд вы увидите путь, по которому они располагаются в файловой системе. Если вдруг не увидите - вам придется установить отсутствующие. Наиболее простой и рекомендуемый - это менеджером пакетов того дистрибутива Linux , которым вы пользуетесь. Как альтернатива - можно предложить установку из исходников, но такой путь требует достаточного опыта от пользователя.

Рассмотрим пример подключения к wifi-точке с шифрованием WEP

  1. Первое, что мы сделаем - посмотрим, какие сетевые адаптеры имеются у нас на компьютере:
# ifconfig -a

Вывод будет содержать имена и подробное описание всех сетевых интерфейсов, которые удалось обнаружить утилите ifconfig . Если не был обнаружен желаемый, то причина заключается только в одном - нет драйверов для него и не включена поддержка этого интерфейса в ядре Linux.

  1. Запускаем беспроводной сетевой адаптер:
# ifconfig wlan0 up
  • wlan0 - стандартное в большинстве Linux -систем имя wifi -карточки;
  • up - опция говорит команде ifconfig запустить для работы ("поднять") сетевое устройство.
  1. Теперь нам надо сканировать эфир вокруг себя на наличие доступных hot-spot"ов:
# iwlist wlan0 scan
  • wlan0 - имя беспроводного адаптера;
  • scan - команда iwlist запускается в режиме сканирования.

Результатом работы iwlist будет детальный отчет, из которого на данном этапе нас интересует только одна строчка: ESSID:"Some_Name". Значение параметра ESSID ("Some_Name") - это имя беспроводной точки доступа. Теперь мы знаем, к какой конкретно wifi -точке мы будем подключаться.

  1. Выполняем подключение:
# iwconfig wlan0 essid Some_Name key Wireless_Key
  • wlan0 - сетевой адаптер, на котором настраивается соединение;
  • essid - задаем имя точки доступа, к которой подключаемся;
  • key - указываем ключ шифрования, использующийся этой точкой доступа для передачи данных.

Замечание:

Команда iwconfig по умолчанию использует для ключа шифрования данные в шестнадцатеричном виде HEX. Если вы хотите указать ключ в виде простого текста (ASCII), вам необходимо использовать опцию s .
Например, так:

# iwconfig wlan0 essid Some_Name key s:Wireless_Key

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

  1. Последний шаг - получаем от dhcp-сервера wifi-точки IP-адрес:
# dhclient wlan0

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

#! /bin/bash ifconfig wlan0 up iwconfig wlan0 essid Some_Name key s:Wireless_Key sleep 10 dhclient wlan0

Здесь мы добавили еще одну команду sleep с параметром 10 секунд. Это рекомендуется делать перед получением IP-адреса для надежности установки соединения.
Сохраняем этот файл под каким-либо именем (например, wireless_up) и делаем его исполняемым командой:

# chmod u+x wireless_up

Переносим wireless_up по пути /usr/local/bin, чтобы сделать его глобально видимым всей системой. Теперь вам достаточно набрать в командной строке:

# wireless_up

и соединение будет установлено.

Рассмотрим более сложный случай - соединение с точкой доступа по WPA-шифрованию

Соединение с таким шифрованием поддерживает только утилита wpa_supplicant , поэтому она нам понадобиться. Также, опять таки, предполагаем, что мы знаем ключ (пароль) шифрования этой точки доступа.

  1. Генерируем пароль на основе этого ключа с помощью утилиты wpa_passphrase , которая входит в состав пакета wpa_supplicant . Дело в том, что пароль, который мы будем использовать далее, должен быть в виде шестнадцатиричного числа:
# wpa_passphrase ssid password

Утилита выдаст сгенерированную строку psk, которую мы вставим в конфигурационный файл wpa_supplicant.conf:

# sudo nano -w /etc/wpa_supplicant.conf Network={ ssid=SSID psk=PSK }

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

Ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=wheel

для предоставления необходимых прав доступа.
2. "Поднимаем" интерфейс wlan0:

# ifconfig wlan0 up

  1. Указываем, к какой точке мы хотим подключиться:
# iwconfig wlan0 essid ssid
  1. Запускаем утилиту wpa_supplicant на установку соединения:
# wpa_supplicant -B -Dwext -i wlan0 -c /etc/wpa_supplicant.conf
  • -B - запускать команду wpa_supplicant в фоновом режиме;
  • -Dwext - говорим утилите wpa_supplicant использовать драйвер wext для интерфейса wlan0 ;
  • -i - задаем настраиваемый сетевой интерфейс (wlan0 в нашем случае);
  • - указываем путь к конфигурационному файлу wpa_supplicant.conf.
  1. Проверяем, что соединение установлено:
# iwconfig wlan0

На выводе увидим подробную информацию по указанному интерфейсу wlan0 .

  1. Получаем локальный IP-адрес:
# dhclient wlan0

7.Упрощаем процесс, создав по пути /etc/network/interfaces запись следующего вида:

Auto wlan0 iface wlan0 inet dhcp pre-up wpa_supplicant -Bw -Dwext -i wlan0 -c /etc/wpa_supplicant.conf post-down killall -q wpa_supplicant

Заключение

В зависимости от дистрибутива Linux , существует множество способов настройки wifi -соединений. Именно благодаря такому разнообразию настроить соединение можно практически в любой Linux -системе.

Главное, чтобы сам беспроводной адаптер поддерживался в Linux на уровне драйверов. Но это уже зависит главным образом от разработчиков операционных систем.

Приветствую тебя мой дорогой читатель! Сегодня мы поговорим о проблемах Ubuntu WiFi. Самым верным способом подключения компьютера с любой операционной системой является провод. Но не всегда возможно прокинуть кабель, поэтому ещё более простой способ коннекта - это Wi-Fi.

Вот тут у пользователей ОС Linux могут возникнуть проблемы, так как не во всех дистрибутивах «Убунты», есть вшитые драйвера вай -фай модуля. Оно и понятно, производители системы специально стараются её не загружать всяким хламом. Раз ты читаешь эти строки, то скорее всего у тебя возникли сложности с настройкой WiFi. Но ничего страшного нет и сейчас мы решим эту злосчастную и противную проблему.

Как установить драйвера

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

$ sudo lspci | grep Network

Теперь мы знаем название модели аппаратного передатчика. Осталось скачать драйвер для Linux. Заходим на страницу .


Теперь очень внимательно смотрите во второй столбец – это производитель. Тут может быть несколько вариантов как у меня. Поэтому после этого находим последний столбец – там будет указан тип подключения. Так как я использую внутренний модуль, который подключен к PCI, то выбираю именно этот вариант. Так можно взглянуть на типы поддерживаемых стандартов – «a/b/g/n», чтобы удостовериться, что вы скачиваете, именно то что нужно.


Открываем драйвер, который вы считаете наиболее приемлемым вариантом. Теперь находим в таблице название модели вашего модуля. И так для пущей уверенности, давайте проверим, PCI-ID - это первый столбец. Узнать PCI-ID можно с помощью команды:


Теперь внимательно посмотрите во второй столбец – если драйвер есть, то вы увидите надпись «Yes», если его нет, то «No». Если вы видите, что дров такого типа нет, то возвращаемся на страницу назад и смотрим другой пакет.


Как только находим нужный драйвер нужно его скачать. Нажимаем по ссылке в самом начале после надписи «For example». Возможно потребуется установка драйвера, но он как уже и было сказано вшит в саму систему.

Но нужно будет установить прошивочку. Поэтому поводу нужно просмотреть в раздел «Firmware installation». Там может быть ссылка на файл и прошивку, которую нужно будет скопировать и скачать. Для каждого драйвера может быть какие-то отдельные нюансы, поэтому просто внимательно прочтите этот момент.

В моём случае, мне нужно скачать пакет и скопировать его в отдельную папочку. Далее нужно будет выгрузить модули по порядку:

$ sudo modprobe -r wl
$ sudo modprobe -r b43
$ sudo modprobe -r b43-legaxy

Также добавляем модули в ЧС, чтобы система их не подгружала.

$ vi /etc/modprobe.d/blacklist-bcm.conf
blacklist b43
blacklist b43-legacy
blacklist wl

Теперь модуль нужно запустить, для этого есть простая команда в консоли:

$ sudo modprobe brcmsmac

Все теперь радиоволны вай-фай должны витать вокруг вас. Сразу скажу, что я привел пример на своем аппарате, установка драйверов идёт по тому же принципу, но могут быть не которые различия. Особенно это касается прошивочки – о ней нужно смотреть отдельную инструкцию по своей модели.

Как подключить WiFi в Ubuntu

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


Бывает такие случаи, когда такой значок просто не появляется или нужно сделать это через командную строку. Чтобы произвести подключение к WiFi откройте консольку. И так всё действия нужно будет сделать ручками, так что приступим.

  1. Сканируем всё ближайшее воздушное пространство:


  1. В строке ESSID будет наименование, которое мы будем использовать для подключения. Далее прописываем:

$ wpa_passphrase ИМЯ_СЕТИ_ESSID > wpa.conf


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


  1. Теперь для подключения нужно ввести команду как на картинке выше. После «-D» нужно ввести название драйвера. После «-i» название интерфейса, который используется вашим оборудованием. Последнее «-с» - это наименование файла, который мы создали ранее.
  2. К маршрутизатору то мы подключились, но теперь нужно получить сетевой адрес и DNS прописать. Открываем новое окно, но не закрывая старое и прописываем:

$ sudo dhclient -r
$ sudo dhclient -i wlp3s0b1



Теперь вы знаете, как быстро настроить WiFi и запустить его, подключение уже должно работать. Можете попробовать пропинговать какой-нибудь сайт, для надёжности. На Линукс все куда сложнее, но после всех шагов, описанных в статье всё должно работать стабильно.

В данном руководстве объясняется, как подключить компьютер к сети при помощи конфигурационных файлов и консольных утилит. Основная цель - рассказать о различных способах подключения к интернету без использования GUI (графического интерфейса). Руководство не затрагивает таких тем, как настройка сетевых фильтров или, например, собственных точек доступа Wi-Fi. Подразумевается, что существует некий, предоставленный провайдером, способ подключения к интернету, для использования которого и необходимо выполнить приведенные ниже действия.

В руководстве приведены примеры редактирования конфигурационных файлов с помощью текстовых редакторов «nano» и «gedit». Обратите внимание на то, что первый редактор запускается в терминале и может быть использован как при запуске Ubuntu с графическим интерфейсом, так и без него, а «gedit» можно использовать только при включенной графической среде.

Требования к системе

Для воспроизведения описанных в руководстве действий подходит любой вариант установки системы. Наличие графического пользовательского интерфейса не обязательно. Все действия необходимо выполнять в консоли . Подразумевается, что команды, начинающиеся с символа $ - необходимо выполнять от пользователя, а начинающиеся с # - от суперпользователя (root).

Прежде чем Вы начнете, убедитесь, что:

    Различные сетевые фильтры (например iptables), и утилиты их конфигурирования (например, Firestarter) отключены/правильно настроены и не вмешиваются в работу сети.

    У Вас есть все необходимые параметры для подключения в Вашей сети (например, IP-адрес, маска подсети и шлюз по умолчанию для соединения с использованием статического IP).

    Устройства сети осуществляющие фильтрацию по MAC-адресу правильно настроены и «знают» Ваш сетевой интерфейс.

    Драйвер Вашего сетевого устройства корректно установлен, кабель (при проводном соединении) исправен и подсоединен.

Для настроек вам обязательно потребуется имя вашего сетевого адаптера. Его можно узнать из вывода команды:

$ sudo lshw -C network

Она позволяет посмотреть подключенные сетевые устройства.

Пример вывода команды:

Ubuntu@ubuntu:~$ sudo lshw -C network *-network description: Ethernet interface # Тип устройства product: L2 100 Mbit Ethernet Adapter # Название адаптера vendor: Attansic Technology Corp. # Производитель устройства physical id: 0 bus info: pci@0000:03:00.0 logical name: eth0 # Имя сетевого интерфейса version: a0 serial: 00:00:00:00:00:00 # Физический адрес устройства (mac-адрес) size: 100MB/s capacity: 100MB/s width: 64 bits clock: 33MHz capabilities: pm msi pciexpress vpd bus_master cap_list ethernet physical tp 10bt 10bt-fd 100bt 100bt-fd autonegotiation configuration: autonegotiation=on broadcast=yes driver=atl2 # Используемый драйвер driverversion=2.2.3 # Версия драйвера duplex=full firmware=L2 ip=192.168.0.5 latency=0 link=yes # Наличие линка module=atl2 multicast=yes port=twisted pair speed=100MB/s # Текущая скорость подключения.

Обратите внимание на строку:

Logical name: eth0

eth0 - это и есть искомое имя сетевого интерфейса.

Имя eth0 будет далее применяться для настройки именно данной сетевой карты. Где eth обозначает что используется Ethernet интерфейс, а 0 - номер устройства. Если у вас установлено несколько сетевых устройств, то, соответственно, им будут присвоены имена: eth0 , eth1 , eth2 и т.д.

После внедрения SystemD (начиная с Ubuntu 15.04) сетевые интерфейсы могут иметь другие имена (не ethX). Сделано это для того, что бы имена сетевых устройств не менялись при подключении к машине новых адаптеров (в последнее время, некоторые USB модемы выступают в роли сетевого адаптера). В результате eth0 может называться например enp0s4 или eno1, или даже enx78e7d1ea46da. Именно это имя сетевого адаптера и нужно использовать в настройке сети.

Более подробно о наименовании сетевых интерфейсов в SystemD можно почитать (англ.).

Такое переименование можно отключить добавив в /etc/default/grub , в строку с переменной GRUB_CMDLINE_LINUX_DEFAULT строку net.ifnames=0 . После этого нужно выполнить sudo update-grub

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

Настройка IP-адреса, шлюза по умолчанию, маски подсети

/etc/network/interfaces , например так:

И допишите в него:
Для статического IP:

Iface eth0 inet static address 192.168.0.1 netmask 255.255.255.0 gateway 192.168.0.254 dns-nameservers 192.168.0.254 8.8.8.8 auto eth0

    Iface eth0 inet static - указывает, что интерфейс (iface eth0) находится в диапазоне адресов IPv4 (inet) со статическим ip (static);

    Address 192.168.0.1 - указывает что IP адрес (address) нашей сетевой карты 192.168.0.1;

    Netmask 255.255.255.0 - указывает что наша маска подсети (netmask) имеет значение 255.255.255.0;

    Gateway 192.168.0.254 - адрес шлюза (gateway) по умолчанию 192.168.0.254;

    Dns-nameservers 192.168.0.254 8.8.8.8 - адреса DNS серверов (о ниж мы расскажем позже)

    Auto eth0 - указывет системе что интерфейс eth0 необходимо включать автоматически при загрузке системы с вышеуказанными параметрами.

eth0 - имя подключаемого своего интерфейса. Список интерфейсов можно посмотреть набрав:

$ ip addr

В итоге файл /etc/network/interfaces должен выглядеть примерно так:
(для одного проводного соединения со статическим IP)

# This file describes the network interfaces available on your system # and how to activate them. For more information, see interfaces(5). # The loopback network interface auto lo iface lo inet loopback # Моя проводная сеть. iface eth0 inet static address 192.168.0.1 netmask 255.255.255.0 gateway 192.168.0.254 dns-nameservers 192.168.0.254 8.8.8.8 auto eth0

Сохраните файл и закройте редактор. В данном примере (редактор nano) - нажмите Ctrl + X , затем Y , убедитесь, что «Имя файла для записи» - /etc/network/interfaces и нажмите Enter .

Более подробно про синтаксис файла /etc/network/interfaces можно прочитать в документации .

Пример конфигурации для динамического IP:

Iface eth0 inet dhcp auto eth0

Временная настройка IP-адреса и маски подсети

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

$ sudo ip addr add 192.168.0.1/24 dev eth0

Где 192.168.0.1 - наш IP-адрес, /24 - число бит в префиксной части адреса (соответствует маске подсети 255.255.255.0).
eth0 - подключаемый сетевой интерфейс.

Данные настройки пропадут после перезагрузки системы и не повлияют на файл /etc/network/interfaces

Настройка DNS

За конфигурацию DNS отвечает утилита resolvconf, которая работает в паре с небольшим кеширующим DNS сервером dnsmasq. resolvconf позволяет осуществить настройку DNS на основе данных от разных подсистем.
Одним из следствий этого полезного нововведения (переход на эту схему произошел в Ubuntu начиная с версии 12.04) является то, что теперь файл /etc/resolv.conf генерируется автоматически, а не индивидуально каждой программой, которая хочет его изменить (порой перезаписывая правки сделанные ранее). Автоматическая генерация /etc/resolv.conf означает, что внесенные «руками» изменения в него будут потеряны.
Автоматически формируемый /etc/resolv.conf содержит ссылку на DNS сервер на локальном интерфейсе (127.0.1.1), а там (на 53 порту) и сидит сервис dnsmasq, который отвечает за разрешение символьных имен в IP адреса. Нужно отметить, что этот порт (53) открыт в режиме LISTEN, но т.к. это локальный интерфейс, то из внешней сети этот порт не доступен.
Информацию о DNS для статических интерфейсов теперь надо вносить в /etc/network/interfaces в параметры dns-nameservers, dns-search и dns-domain (которые соответствуют параметрам nameserver, search и domain в /etc/resolv.conf)

Обратите внимание - в /etc/resolv.conf, при записи нескольких серверов используется несколько ключей nameserver, а в /etc/network/interfaces все адреса DNS серверов записывались в одну строчку после ключа dns-nameservers, разделенные пробелами.

В итоге описание статического интерфейса в /etc/network/interfaces должно выглядеть примерно так:

Iface eth0 inet static address 192.168.0.1 netmask 255.255.255.0 gateway 192.168.0.254 dns-nameservers 8.8.8.8 192.168.0.254 auto eth0

Ubuntu до версии 12.04

В более старых версиях ubuntu, когда есть необходимость указать статические адреса DNS серверов (если они не выдаются автоматически) выполните:

$ sudo gedit /etc/resolv.conf

и впишите туда адреса DNS серверов (отдельные записи для каждого сервера):

Nameserver 192.168.0.100 nameserver 192.168.0.200

Где 192.168.0.100 и 192.168.0.200 - адреса DNS серверов. Если нужно добавить больше адресов - каждый адрес нужно начинать с новой строки и с фразы nameserver

Настройка соединений ppp

За создание соединений типа «точка-точка» в Ubuntu отвечает демон pppd , более подробная информация о котором доступна в документации . В рамках данного руководства будут рассмотрены примеры создания PPPoE подключения через DSL модем, подключения PPTP (VPN-подключения) и DIAL-UP подключения через обычный модем.

Соединение PPPoE

В стандартную установку Ubuntu входит утилита для настройки PPPoE соединений – pppoeconf , для ее запуска наберите:

$ sudo pppoeconf

Появится «псевдографическое» окно в терминале. Утилита произведет поиск сетевых устройств и выведет их на экран, далее она произведет поиск модема на этих устройствах. Если на этом этапе pppoeconf выдаст отрицательный результат - проверьте правильность подключения, питание модема. Следующий шаг - выбор «популярных параметров» - в большинстве случаев стоит согласиться. Далее утилита запросит Ваш логин, а затем - пароль. Теперь - выбор способа указания DNS серверов. Опять же, в большинстве случаев следует согласиться на получение адресов DNS серверов автоматически. Далее Вам предложат ограничить размер MSS до 1452-х байт - как правило, стоит согласиться. Следующий вопрос - устанавливать ли подключение автоматически при загрузке компьютера. Последний вопрос утилиты - установить ли соединение сейчас. pppoeconf по умолчанию создает для подключения имя dsl-provider. Управлять подключением Вы можете при помощи команд:

$ sudo pon dsl-provider # Для подключения или $ sudo poff dsl-provider # Для отключения

Если в Вашем случае опций, предоставляемых утилитой pppoeconf недостаточно - обратитесь к документации по pppd или pppoeconf .

Замечание: при настройке соединения с помощью pppoeconf часть настроек записывается в /etc/network/interfaces , в результате чего Network Manager больше не может управлять сетью. Выход: либо использовать только NM, либо только консоль+конфиги. Вернуть управление Network Manager можно следующим образом. Приведите /etc/network/interfaces к следующему виду (лишнее не обязательно удалять, достаточно закомментировать):

# This file describes the network interfaces available on your system # and how to activate them. For more information, see interfaces(5). # The loopback network interface auto lo iface lo inet loopback

Перезапустите сеть:

Перезагрузитесь или перезапустите Network Manager:

$ sudo /etc/init.d/NetworkManager restart

Соединение PPTP

Для осуществления VPN-соединения при помощи pppd Вам потребуется установить пакет pptp-linux , который может быть найден на установочном диске Ubuntu. Далее создайте (от root"а) в папке /etc/ppp/peers файл с названием Вашего провайдера и отредактируйте его, например так:

$ sudo nano /etc/ppp/peers/my-provider

И добавьте туда опции подключения, например такие:

Persist # При разрыве соединения - переподключаться снова. maxfail 0 # Максимальное количество неудачных попыток подключения. 0 - бесконечно. mtu 1476 # Значение MTU name {логин} # Ваш логин. #nodefaultroute # Не быть шлюзом по умолчанию defaultroute # Быть шлюзом по умолчанию replacedefaultroute # Заменить шлюз по умолчанию если он был remotename {vpn} # Имя удаленного сервера (для нас), может быть любым. pty "pptp {адрес_сервера} --nolaunchpppd" # Команда запуска pptp. # Адрес сервера - может быть как IP адресом, так и доменным именем, например vpn.foo.bar

{логин} {vpn} {пароль}

После перезагрузки системы Вы сможете управлять соединением при помощи команд:

Процесс настройки VPN-соединения может сильно облегчить скрипт-помощник .

Настройка DIAL-UP подключения

Для настройки модемного соединения можно использовать встроенный конфигуратор pppd - pppconfig или специальную утилиту wvdial .

При помощи pppconfig

Процесс настройки при помощи pppconfig во многом похож на утилиту pppoeconfig , Вам по очереди будут заданы вопросы о параметрах подключения, и будет предложено ввести номер телефона, логин и пароль, а также имя соединения. Запускать pppconfig следует с правами суперпользователя. Например так:

$ sudo pppconfig

Управлять соединением можно так:

$ sudo pon my-provider # Для подключения или $ sudo poff my-provider # Для отключения

Где my-provider - имя, присвоенное Вами соединению при настройке.

При помощи wvdial

В некоторых случаях (например при подключении с использованием мобильного телефона), удобнее использовать wvdial . Для этого нужно его сначала установить. Например так:

$ sudo apt-get install wvdial

В состав пакета wvdial входит утилита автоматического конфигурирования - wvdialconf .

$ sudo wvdialconf

Вывод будет примерно следующим:

Ubuntu@ubuntu:~$ sudo wvdialconf password for ubuntu: Editing `/etc/wvdial.conf". Scanning your serial ports for a modem. Modem Port Scan<*1>: S0 S1 S2 S3 WvModem<*1>: Cannot get information for serial port. ttyACM0<*1>: ATQ0 V1 E1 -- OK ttyACM0<*1>: ATQ0 V1 E1 Z -- OK ttyACM0<*1>: ATQ0 V1 E1 S0=0 -- OK ttyACM0<*1>: ATQ0 V1 E1 S0=0 &C1 -- OK ttyACM0<*1>: ATQ0 V1 E1 S0=0 &C1 &D2 -- OK ttyACM0<*1>: ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0 -- OK ttyACM0<*1>: Modem Identifier: ATI -- Manufacturer: QUALCOMM INCORPORATED ttyACM0<*1>: Speed 4800: AT -- OK ttyACM0<*1>: Speed 9600: AT -- OK ttyACM0<*1>: Speed 19200: AT -- OK ttyACM0<*1>: Speed 38400: AT -- OK ttyACM0<*1>: Speed 57600: AT -- OK ttyACM0<*1>: Speed 115200: AT -- OK ttyACM0<*1>: Speed 230400: AT -- OK ttyACM0<*1>: Speed 460800: AT -- OK ttyACM0<*1>: Max speed is 460800; that should be safe. ttyACM0<*1>: ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0 -- OK Found an USB modem on /dev/ttyACM0. Modem configuration written to /etc/wvdial.conf. ttyACM0: Speed 460800; init "ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0"

Теперь остается только отредактировать файл /etc/wvdial.conf и добавить в него номер телефона, логин и пароль.

$ sudo nano /etc/wvdial.conf

Init1 = ATZ Init2 = ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0 Modem Type = USB Modem ISDN = 0 Idle Seconds = 0 New PPPD = yes Dial Attempts = 0 Phone = #777 Modem = /dev/ttyACM0 Username = mobile Password = internet Baud = 460800 Idle Seconds = 0 # Время простоя соединения, # после которого нужно будет его разорвать. Значение 0 - никогда. Dial Attempts = 0 # Количество попыток дозвона. 0 - бесконечно. Dial Command = ATDP # Команда набора номера (P - импульсный, T - тональный). Имеет смысл для набора номера в импульсном режиме на старых АТС.

Файл /etc/wvdial.conf разбит на секции, в качестве разделителей которых выступают сами названия секций, предварённые словом Dialer, в квадратных скобках. Если исполнять команду без параметров, то в дело пойдут установки, перечисленные в секции Defaults. В противном случае дополнительно будут исполнены указанные в добавочных секциях команды.

Теперь, когда все настроено, соединение можно установить набрав:

$ sudo wvdial

Если потребуется запустить wvdial с набором номера в импульсном режиме, то это можно сделать командой

$ sudo wvdial pulse

Прервать соединение можно прервав выполнение команды wvdial , т.е. в том же терминале нужно нажать Ctrl + C .

Автоматическое подключение

Отредактируйте файл конфигурации /etc/network/interfaces , например так:

$ sudo nano /etc/network/interfaces

И допишите в него:
Для pppoe , pptp , и модемного подключения без использования wvdial :

Iface ppp0 inet ppp provider my-provider auto ppp0

Где my-provider - название вашего соединения.
При использовании wvdial :

Iface ppp0 inet wvdial provider wvdial auto ppp0

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

Ручная настройка роутинга

Если Вы не получаете адрес шлюза по-умолчанию от сервера, к которому подключаетесь, или по какой-либо иной причине Вам необходимо указать маршруты вручную - Вы можете создать свой скрипт в /etc/ppp/ip-up.d/ , либо по рекомендации официальной документации создать /etc/ppp/ip-up.local например так:

$ sudo nano /etc/ppp/ip-up.local

$ sudo nano /etc/ppp/ip-up.d/routing

со следующим кодом:

#! /bin/sh # route del default route add default ppp0 # Имя ppp-подключения. # тут - необходимые маршруты, например: route add -net 192.168.0.0 netmask 255.255.255.0 gw 192.168.0.1 dev eth0

$ sudo chmod ug+x /etc/ppp/ip-up.local

$ sudo chmod ug+x /etc/ppp/ip-up.d/routing

Теперь маршруты будут автоматически подключаться при установлении ppp-соединения.

Установка MTU и TTL

MTU (Maximum Transfer Unit) - параметр определяет величину максимальной единицы передачи. Это максимальное количество октетов (байт), которое интерфейс способен поддерживать за одну операцию приема/передачи. Для Ethernet это значение по умолчанию составляет 1500 (максимальный размер пакета Ethernet).

TTL (Time To Live) - время жизни ip-пакета в секундах. Нужен чтобы избежать перегрузки сети пакетами. Обычно каждый роутер, через которого прошел пакет, уменьшает TTL на еденицу. Если TTL=0, пакет из системы удаляется. Изначально TTL=128 (для Windows) и TTL=64 (для Ubuntu). Для DNS -записей TTL определяет время актуальности данных при кешировании запросов.

Для изменения величины MTU, отредактируем файл конфигурации /etc/network/interfaces , например так:

Auto eth0 iface eth0 inet static address 192.168.1.5 netmask 255.255.255.0 mtu 600

Для изменения величины TTL наберите:

$ sudo su затем # echo "128" > /proc/sys/net/ipv4/ip_default_ttl

Значение TTL меняется только с правами администратора, для выхода из аккаунта администратора введите exit

Настройка WiFi

Настройка Wi-Fi при помощи wpa-supplicant и /etc/network/interfaces

В этой главе пойдет речь о настройке подключения к существующей Wi-Fi сети с использованием наиболее безопасного на сегодняшний день стандарта шифрования и аутентификации WPA2. Дополнительно приведены примеры настроек для менее безопасных соединений.

Если Вы можете повлиять на настройку точки доступа, например, в случае, если это Ваш домашний Wi-Fi роутер - постарайтесь настроить авторизацию с использованием WPA2, т.к. это наиболее безопасный протокол аутентификации в беспроводных сетях на настоящий момент.

Замечания

Решение проблем

Не устанавливается соединение по Wi-Fi/Ethernet с точкой доступа/маршрутизатором

Симптомы: сеть обычно изначально работает нормально, долго или недолго, а затем неожиданно пропадает и не появляется после перезагрузки. Эта проблема может быть непостоянной. Сеть «сама собой» начинает работать, а затем пропадает вновь. При перезапуске адаптера сети таким образом:

Sudo ifdown wlan0 sudo ifup wlan0

будет выводиться в консоль похожий текст

Listening on LPF/wlan0/00-02-2A-E1-E0-6C Sending on LPF/wlan0/00-02-2A-E1-E0-6C Sending on Socket/fallback DHCPDISCOVER on wlan0 to 255.255.255.255 port 67 interval 8 DHCPDISCOVER on wlan0 to 255.255.255.255 port 67 interval 8 DHCPDISCOVER on wlan0 to 255.255.255.255 port 67 interval 15 No DHCPOFFERS received. No working leases in persistent database - sleeping.

Причиной проблемы может быть то, что материнская плата полностью не обесточивается при выключении компьютера. При этом вероятно не обесточивается и некоторое периферийное оборудование, в т.ч. могут не обесточиваться usb порты. Если вы используете, например, Wi-Fi usb-адаптер, то в таком случае можно заметить горящий на адаптере светодиод (если он им оборудован). Вероятно проблема возникает из-за того, что сетевое оборудование в этом режиме работает не совсем корректно.

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

Сложное решение проблемы состоит в настройке параметров BIOS-а на полное обесточиваение сетевого оборудования при выключении компьютера.

Иногда наглухо пропадает соединение по Wi-Fi с точкой доступа/маршрутизатором

Симптомы: сеть изначально работает, а затем после перезагрузки точки доступа/маршрутизатора неожиданно пропадает, и не появляется ни после перезагрузки, ни после танцев с бубном. При этом беспроводной адаптер в упор не видит точку доступа (хотя она может стоять рядом с компьютером), но прекрасно видит все соседские сети. Затем после ~дцатой~ перезагрузки маршрутизатора сеть сама собой появляется вновь.

Причиной проблемы может быть то, что некоторые маршрутизаторы произвольно выбирают номер рабочего канала, игнорируя номер канала выбранный в настройках маршрутизатора. Если в файле /etc/network/interfaces номер канала для беспроводного интерфейса указан, то вероятно проблема состоит именно в этом. Номер 6 канала указывается в файле примерно так:

Auto wlan0 ... wireless-channel 6

Простое решение проблемы состоит в комментировании этого параметра, чтобы адаптер не был ограничен только этим каналом, и перезапуске сети

Auto wlan0 ... #wireless-channel 6

Сложное решение проблемы состоит в регистрации бага на сайте производителя маршрутизатора (прошивки для него) и обновление прошивки маршрутизатора после (в случае) его исправления.

Перезапуск сети

Теперь, когда все необходимые действия выполнены, можно перезапустить сеть и проверить соединение. Для этого:

$ sudo /etc/init.d/networking restart

Теперь, при запуске команды ip addr должно отобразиться подключение eth0 с выставленными параметрами. Если подключение отображается, но параметры не такие, какие были указаны в файле /etc/network/interfaces , либо возникают любые другие ошибки, перепроверьте этот файл на наличие неточностей и опечаток и попробуйте ещё раз перезапустить сеть.

FAQ по сетям

Как зайти на мой компьютер извне (через интернет)?

Для начала надо узнать, какой IP-адрес даёт провайдер - серый или белый (не путать со статическим/динамическим). Если серый, то ничего не получится. Если белый, то возможны два варианта:

    Роутера нет или он работает в режиме бриджа (моста). В этом случае белый IP-адрес присваивается самому компьютеру. Вводим адрес - попадаем на комп, всё просто.

    Белый адрес присваивается роутеру. Соответственно, по этому адресу мы попадаем на роутер, а не на компьютер. Чтобы попасть на компьютер, на роутере нужно пробросить порты (см. ниже).

Мне кажется, у меня слишком медленно работает сеть!

Измерьте скорость сети между двумя компьютера с помощью iperf . Можно воспользоваться этой инструкцией. В ней предлагают скомпиллировать программу из исходников, но можно просто установить её из репозитория . Если iperf покажет значение немного меньшее, чем ожидаемое, то с сетью всё в порядке, проблема может быть в железе (жёсткий диск/процессор не могут обеспечить большую скорость), в способе передачи (например, scp и ftp весьма неторопливы), в настройках (скорость может быть ограничена, например, настройками FTP -сервера) или в чём-то ещё. Если iperf показал величину, которая в разы меньше желаемой, то да - с сетью проблемы. Стоит посмотреть, в нужном ли режиме работает карта (например, с помощью ethtool), проверить наличие «errors» в выводе ifconfig и протестировать скорость подключения к какому-нибудь третьему компьютеру.

Как узнать, какие программы слушают порты на моём компьютере?

Чтобы посмотреть список открытых портов и названия слушающих их программ, используйте команду:

Sudo netstat -nlpA inet,inet6

Для вывода информации о конкретном порте можно использовать grep . Например, для 80 порта:

Sudo netstat -nlpA inet,inet6 | grep:80

Из вывода netstat не всегда понятно, о какой программе идёт речь (например, 2671/python ), подробнее о процессе расскажет ps:

Ps aux | grep 2671

Как присвоить два IP-адреса одной сетевой карте?

Например, интерфейсу eth0 нужно добавить адрес 192.168.1.1 . Кратковременно, до перезапуска сети:

Sudo ip addr add 192.168.1.1/24 dev eth0

Навсегда - добавить в /etc/network/interfaces следующее:

#исправить строку auto auto eth0 eth0:1 # добавить алиас iface eth0:1 inet static address 192.168.1.1 netmask 255.255.255.0

Как пробросить порт?

Например, нужно пробросить порт 8081. Адрес, на который обращается клиент, назовём внешний_ip , а адрес, на который он должен попасть - внутренний_ip .

Iptables -t nat -A PREROUTING -p tcp -d внешний_ір --dport 8081 -j DNAT --to-destination внутренний_ір:8081 iptables -t nat -A POSTROUTING -p tcp --dst внутренний_ір --dport 8081 -j SNAT --to-source внешний_ір

И обязательно нужно что-то вроде

Iptables -t filter -A FORWARD -m conntrack --ctstate DNAT -j ACCEPT

Приветствую Всех!
В этой статье я расскажу как подключиться к действующей сети Wi-Fi в Linux Ubuntu. А также как настроить и наиболее безопасно использовать данный вид подключения к сети.

Сейчас немного теории.
При использовании Wi-Fi в любой ОС, включая Linux Ubuntu, вся информация передается по радиоволне. Это делает Wi-Fi сети гораздо более уязвимыми по сравнению с проводными сетями. Дело в том, что радиосигналы, посылаемые точкой доступа (Wi-Fi роутером) и устройствами, которые подключены к точке доступа, доступны для перехвата любым аналогичным устройством, которое находится в радиусе «видимости» от точки доступа до клиента этой точки доступа. То есть перехват сетевого трафика становится очень простым, доступным и незаметным. А перехват сетевого трафика позволяет собрать информацию, необходимую для атаки на Wi-Fi сеть и ее взлома в дальнейшем. По мере того, как становится все больше точек доступа Wi-Fi, и количество желающих «взломать» Wi-Fi сеть.

Одна из распространенных мотиваций для взлома точек доступа — это бесплатное подключение к Интернету. Довольно распространенная сегодня картина — у вас в квартире установлен Wi-Fi роутер и к нему подключены не только ваши устройства, но и устройства кого-то из ваших соседей. Вы платите за Интернет, а ваш технически грамотный сосед, получает Интернет бесплатно.

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

Для уменьшения риска взлома вашей Wi-Fi сети в Linux Ubuntu и в других ОС, необходимо настроить сеть и придерживаться определенных правил.

Не подключайтесь к открытым общественным сетям Wi-Fi через устройства на котором у вас хранится ценная информация. А если вам в Linux Ubuntu или в любых других сетях необходим доступ к Интернет через открытые сети Wi-Fi, тогда используйте на вашем ноутбуке или планшете настроенный файерволл и антивирус.

Если вы используете роутер Wi-Fi у себя дома или в офисе, необходимо правильно его настроить:

При начальной настройке роутера необходимо сменить пароль администратора, а не оставлять используемый по умолчанию.
Используйте тип защиты WPA2.
Пароль для защиты должен быть длинный — желательно более 8 символов, и должен состоять из произвольного набора символов. Пароль qwerty1234 очень плохой — его взломают за несколько минут. Пароль y57k-S}