Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
Next revisionBoth sides next revision
ru:docs:guide-user:network:wifi:wireless.security.8021x [2018/09/10 09:14] – created a727ru:docs:guide-user:network:wifi:wireless.security.8021x [2018/09/12 08:23] a727
Line 1: Line 1:
-FIXME **This page is not fully translated, yet. Please help completing the translation.**\\ //(remove this paragraph once the translation is finished)// 
  
 ====== Введение в 802.1x ======   ====== Введение в 802.1x ======  
Line 5: Line 4:
 Одна из наименее известных опций безопасности стандарта 802.11 (как минимум среди SOHO пользователей) - это возможность иметь индивидуальные имена пользователей и пароли на централизованном сервере авторизации, который может быть использован для одной или более беспроводных точек доступа. Главное преимущество этого типа настройки – отдельные пользователи могут быть добавлены  и отключены от беспроводного доступа без нарушения работы других пользователей или изменения ключей доступа к сети. Поэтому такой способ популярен в корпоративной среде. Если у вас имеются более сложные системы (такие как Active Directory) для входа пользователей – тогда имеется возможность подключить вашу беспроводную сеть к вашему серверу Active Directory для аутентификации этих пользователей.    Одна из наименее известных опций безопасности стандарта 802.11 (как минимум среди SOHO пользователей) - это возможность иметь индивидуальные имена пользователей и пароли на централизованном сервере авторизации, который может быть использован для одной или более беспроводных точек доступа. Главное преимущество этого типа настройки – отдельные пользователи могут быть добавлены  и отключены от беспроводного доступа без нарушения работы других пользователей или изменения ключей доступа к сети. Поэтому такой способ популярен в корпоративной среде. Если у вас имеются более сложные системы (такие как Active Directory) для входа пользователей – тогда имеется возможность подключить вашу беспроводную сеть к вашему серверу Active Directory для аутентификации этих пользователей.   
  
-Для этого типа настройки на точке доступа используются режимы беспроводного шифрования «WPA Enterprise» или «WPA2 Enterprise». Вы также можете посмотреть ссылки на 802.1x, являющийся стандартом аутентификации пользователей - как проводных, так и беспроводных - через RADIUS сервер. 802.1x является базовым протоколом, который используется беспроводным режимом шифрования WPA/2 Enterprise.    +Для этого вида настройки на точке доступа используются режимы беспроводного шифрования «WPA Enterprise» или «WPA2 Enterprise». Вы также можете посмотреть ссылки на 802.1x, являющийся стандартом аутентификации пользователей - как проводных, так и беспроводных - через RADIUS сервер. 802.1x является базовым протоколом, который используется беспроводным режимом шифрования WPA/2 Enterprise.    
  
 Обратите внимание, что пользовательские имена и пароли хранятся на RADIUS сервере, с которым точка доступа будет общаться для авторизации пользователей. В большинстве случаев, программное обеспечение RADIUS сервера расположено где-то еще в сети (очевидно, что это место должно быть достижимо для точки доступа). Но также возможно установить и запустить RADIUS сервер на OpenWRT. Установка и конфигурация RADIUS сервера лежит за рамками этого документа, однако на эту тему будет дано несколько советов. RADIUS – стандартизированный протокол, который поддерживается многими серверными приложениями, в том числе Microsoft Windows Network Policy Server (NPS), что позволяет авторизовывать пользователей Active Directory. FreeRADIUS – наиболее распространенный open source RADIUS сервер.    Обратите внимание, что пользовательские имена и пароли хранятся на RADIUS сервере, с которым точка доступа будет общаться для авторизации пользователей. В большинстве случаев, программное обеспечение RADIUS сервера расположено где-то еще в сети (очевидно, что это место должно быть достижимо для точки доступа). Но также возможно установить и запустить RADIUS сервер на OpenWRT. Установка и конфигурация RADIUS сервера лежит за рамками этого документа, однако на эту тему будет дано несколько советов. RADIUS – стандартизированный протокол, который поддерживается многими серверными приложениями, в том числе Microsoft Windows Network Policy Server (NPS), что позволяет авторизовывать пользователей Active Directory. FreeRADIUS – наиболее распространенный open source RADIUS сервер.   
  
-===== Prerequisites =====+===== Необходимые требования =====
  
-Before beginning you will want to make sure you have completed the following steps+Перед началом удостоверьтесь, что были выполнены следующие шаги  
-  * Installed a RADIUS server such as FreeRADIUS (on OpenWRT or on another server). Note that in 802.1x documentation the system holding the username/password database is referred to as the "authentication server" or sometimes just the "server"+  * Установлен RADIUS сервер такой как FreeRADIUS (на OpenWRT или на другом сервере). Обратите внимание, что в документации по 802.1x система, хранящая базу данных имен/паролей пользователей упоминается как «сервер авторизации» (“authentification server”) или иногда просто как «сервер»   
-  * Configured your router as a "client" on the RADIUS serverThe IP address of your router/access point must be allowed to connect to the RADIUS server and have an associated key/password which it will use to authenticate to the RADIUS serverNote that in 802.1x documentation the router/access point is referred to as the "client" or sometimes as the "authenticator" to distinguish it from the end user device which is attempting to authenticate and which is called the "supplicant"+  * Ваш роутер сконфигурирован как клиент (“client”) RADIUS сервера. IP адресу вашего роутера/точки доступа должно быть разрешено соединяться с RADIUS сервером. Также роутер/точка доступа должны иметь ассоциированные ключ/пароль, которые будут использоваться для авторизации на RADIUS сервереОбратите внимание, что в документации 802.11x роутер/точка доступа упоминаются как «клиент» (“client”) или иногда как «аутентикатор» (“authenticator”) чтобы отличать его от устройства конечного пользователя которое называют «запрашивающим устройством» (“supplicant”)   
-  * Configured one or more usernames and passwords on the RADIUS serverNote that the user passwords must be stored in a format which matches the format the supplicant is using to check the passwordFor Windows clients this means you need to store the password as an NT/LM Hash valuefor other clients it would usually be Crypt/MD5/SHA. To simplify things you can store the password as cleartext and the RADIUS server will then be able to generate the needed hashes on the fly but this has obvious security downsides and should be considered carefully but may be of use for troubleshooting.+  * Сконфигурированы одно или более пользовательских имен и паролей на RADIUS сервереОбратите внимание, что формат хранения пароля пользователя должен соответствовать формату, в котором пользовательское устройство проверяет парольДля клиентов Windows это означает, что вы должны хранить пароль как значение NT/LM Hash. Для других клиентов, как правилоприменяется Crypt/MD5/SHA. Для упрощения вы можете хранить пароль как открытый текст и RADIUS сервер сможет генерировать необходимые хеши «на лету»Но в данном случае имеются очевидные недостатки безопасности, подобное решение должно быть внимательно обдумано. Данный вариант может использоваться для отладки.  
  
-===== Basic 802.1x Wireless User Authentication =====+===== Основа по беспроводной авторизация пользователя 802.1x =====
  
-Enterprise WPA is not supported by the wpad-mini access point software on OpenWRT so you will need to remove that and install the full version of hostapd:+Enterprise WPA не поддерживается пакетом wpad-mini для точек доступа на OpenWRT. Поэтому вы должны удалить его и установить полную версию пакета hostapd:   
  
 ''opkg update ''opkg update
Line 24: Line 23:
 opkg install hostapd'' opkg install hostapd''
  
-Nextyou can modify your ''/etc/config/wireless'' file to support WPA Enterprise authenticationSpecifically you will need to create a ''wifi-iface'' with the encryption option set to wpa2, a server address, and a keyOne example might be:+Далеедля поддержки авторизации WPA Enterprise вы можете изменить ваш файл /etc/config/wireless. В частности, вы должны создать ''wifi-iface'' с выставленной опцией шифрования wpa2, адрес сервера и ключНапример, следующим образом 
  
 ''config wifi-iface ''config wifi-iface
Line 35: Line 34:
         option key 'MyClientPassword'         option key 'MyClientPassword'
 '' ''
-Where 192.168.1.10 is a previously configured RADIUS server which is expecting connections from this client (router/APusing the password "MyClientPassword".+Где 192.168.1.10 – ранее сконфигурированный RADIUS сервер, ожидающий соединения от данного клиента (роутер/точки доступас паролем “MyClientPassword.
  
-===== 802.1x Dynamic VLANs on an OpenWRT Router =====+===== 802.1x динамические VLAN на роутере OpenWRT ===== 
 +==== Вступление ====
  
-==== Introduction ====+В следующем примере мы расширим нашу предыдущую 802.1x авторизацию в беспроводной сети. Пользователи, соединяющиеся с ОДНИМ SSID, будут в зависимости от их имени пользователя автоматически попадать либо в основную сеть “lan”, либо в новую сеть “guest”. Обратите внимание, что часть необходимого для выполнения этой работы функционала не включалась в OpenWRT до релиза “Chaos Calmer”. В предыдущих релизах технически возможно создавать динамические VLAN, но это требует модификации некоторых системных файлов. Рекомендовано использование “Chaos Calmer” r43473 или более новых релизов если вы хотите использовать динамические VLAN 802.1x на роутере. Если вы все-таки хотите узнать что необходимо менять – смотрите следующие ссылки [[https://dev.openwrt.org/changeset/43473/|r43473]], [[https://dev.openwrt.org/changeset/42787|r42787]] и [[https://dev.openwrt.org/changeset/41872|r41872]].
  
-In the following example we'll extend our previous 802.1x wireless network authentication to automatically assign users connecting to the SAME SSID to either the main "lan" network or a new "guest" network depending on their usernameNote that some of the functionality needed to make this work was not included in OpenWRT until the "Chaos CalmerreleaseIt is technically possible to make dynamic VLANs work in prior releases but it requires modifying some system filesit is suggested that you run "Chaos Calmer" r43473 or newer releases if you want to use 802.1x dynamic VLANs on a routerIf you really want the details on what needs to be changed see [[https://dev.openwrt.org/changeset/43473/|r43473]][[https://dev.openwrt.org/changeset/42787|r42787]]and [[https://dev.openwrt.org/changeset/41872|r41872]].+ВНИМАНИЕ! Вы будете изменять способ, которым CPU вашего роутера соединяется с вашим коммутатором (switch) в процессе этого конфигурованияЕсли выполнить это с ошибками, то вы можете потерять доступ к вашему роутеру. Если вы оказались в такой ситуации – вам понадобится ознакомиться с механизмом восстановления вашего роутераТогда вы сможет выполнить сброс настроек и вернуть управление или исправить вашу конфигурацию. Также хорошо **иметь резервную копию рабочей конфигурации до начала процесса** и знать каким образом OpenWRT управляет конфигурацией VLAN (т. к. это может быть несколько по-разному реализовано в том или ином роутере).  Если у вас есть физический доступ к вашему роутеру – вы навряд ли сможете "убитьсвой роутер таким образом, что это будет невозможно восстановитьНо если вы работаете по wifi или удаленното это возможно. //Лучше всего настраивать тестовую сеть на втором роутере и работать над ней пока вы не освоитесь с конфигурацией так как это поначалу может быть непросто сделать это правильно.//    
 +==== Конфигурация ==== 
 +Поскольку мы будем работать с множеством VLANнам необходимо создать дополнительные VLAN для гостевой сети и включить маркировку (tagging) VLAN на порту CPU для VLANов “lan” и “guest” чтобы роутер мог взаимодействовать с обоими VLANамиВ этом случае мы оставим сеть “lan” на VLAN 1 и создадим новую сеть “guest” на VLAN 3. Мы пропустим VLAN 2 потому что имеющийся у нас в этой демонстрации роутер использует VLAN 2 чтобы соединять порт WAN с CPU портомЭто не обязательно для всех роутеровнекоторые привязывают порт WAN непосредственно к CPUБольше информации по раскладке портов коммутатора можно найти на странице OpenWRT wiki, посвященной конкретной модели роутера  
  
-NOTE: You'll be working on changing the way your router'CPU connects to the switch as part of these configuration changesIf done improperly it's possible to lock yourself out of the routerIf you do this you will need to be familiar with the recovery mechanism of your router so that you can get back in and reset or fix your configurationsIt's a good idea to **have a backup of your working configuration before starting** and to be familiar with the way OpenWRT handles VLAN configuration (which can vary a bit from router to router). If you have physical access to your router you shouldn't be able to brick the router in such a way that it's impossible to recover but if you're working wirelessly or remotely it is possible. //It's best to setup a test network on a second router and work on that until you are familiar with the configuration as this is a tricky process to get right at first.//+Сначала, изменим существующий VLAN “lan” для маркировки трафика, идущего к порту CPU. В нашем примере порт CPU находится на порту 0, а порты 2, 3, 4 и 5 – существующие LAN порты коммутатора (которые мы хотим сохранить на VLAN “lan” как и раньше)Порт 1 на этом роутере – вторичный порт CPU, использующийся для WAN соединения. **Порты на вашем роутере могут различаться, проверьте подробности по портам вашего коммутатора на странице OpenWRT wiki, посвященной конкретно вашему роутеру.** На нашем роутере файл конфигурации коммутатора для VLAN ''/etc/config/network'' выглядит так:  
  
-==== Configuration ==== 
-Because we'll be working with multiple VLANs we need to create an additional VLAN for the guest network and enable VLAN tagging on the CPU port for the "lan" and "guest" VLANs so that the router can communicate with both VLANs. In this case we'll keep the "lan" network on VLAN 1 and create a new "guest" network on VLAN 3. We're skipping over VLAN 2 because the particular router used to create this demonstration uses VLAN 2 to connect the WAN port to the CPU, not all routers do this, some wire the WAN port directly to the CPU. More information on the switch port layout can be found on the OpenWRT wiki page for your particular router. 
- 
-First, modify the existing "lan" VLAN to tag traffic going to the CPU port. In this example the CPU is on port 0 and ports 2, 3, 4 and 5 are the existing LAN switch ports (which we want to keep on the "lan" VLAN as they were). Port 1 on this router is a secondary CPU port used for the WAN connection. **Ports on your own router may vary, check the switch port details for your router on the OpenWRT wiki page for your specific router.** On this router the existing VLAN 1 switch configuration in the ''/etc/config/network'' file looks like: 
  
 ''config switch_vlan ''config switch_vlan
Line 56: Line 54:
 '' ''
  
-To start tagging VLAN 1 traffic to the CPU change it to look like:+Чтобы начать маркировать трафик VLAN 1 к CPU внесите изменения как описано ниже 
  
 ''config switch_vlan ''config switch_vlan
Line 64: Line 62:
 '' ''
  
-Now create the new VLAN for guests (we're using VLAN 3 on this router):+Теперь создайте новый VLAN для гостевой сети (на нашем роутере мы использовали VLAN 3):  
  
 ''config switch_vlan ''config switch_vlan
Line 72: Line 70:
 '' ''
  
-Note that the only port in this VLAN is a tagged connection to the CPU port right now but the router will automatically bridge guest wireless users onto this VLAN following the 802.1x server's instructionYou can create additional VLANs as needed for your network design but beware the limits of the switch chip in your routerMany switch chips in consumer routers are limited to 15 VLANs.+Обратите внимание, что в данный момент единственный порт на этом VLAN – маркированное соединение с CPU портом. Но роутер будет автоматически  бриджить пользователей гостевой беспроводной сети в этот VLAN в соответствии с инструкциями 802.1x сервераВы можете создать дополнительные VLANы в соответствии с потребностями вашей сетевой архитектурыНо обратите внимание на ограничение микросхемы коммутатора в вашем роутере. Многие микросхемы коммутаторов в бытовых роутерах ограничены поддержкой до 15 VLAN  
  
-Next we need to modify the interface configuration in the same fileBecause we're now tagging VLAN traffic we need to modify the "lan" interface configuration slightlyOn this router the LAN CPU port is eth1//check the switch port details for your router on the OpenWRT wiki page for your router to determine the LAN CPU port on your own router//. Where we previously found a section like:+Далее мы должны изменить конфигурацию интерфейсов в этом же файлеПоскольку мы теперь маркируем трафик VLAN, то нам необходимо немного изменить конфигурацию интерфейса “lanНа нашем роутере порт CPU LAN – это eth1 //(проверьте раскладку портов коммутатора для вашего роутера на странице OpenWRT wiki чтобы определить порт CPU для LAN на вашей модели роутере)//. Изначально эта секция выглядела так 
  
 ''config interface 'lan' ''config interface 'lan'
Line 83: Line 81:
 '' ''
  
-We now need to make it:+Нам сейчас необходимо изменить это так 
  
 ''config interface 'vlan1' ''config interface 'vlan1'
Line 92: Line 90:
 '' ''
  
-There are TWO important changes to be made hereFirstthe interface MUST be named "vlan1" so that the hostapd program can find the correct interface to attach the user toSecondthe ifname MUST be changed to "eth1.1" because the traffic is now being tagged on VLAN 1 between the switch and CPU.+Мы сделали два важных измененияВо-первыхинтерфейс ДОЛЖЕН быть назван "vlan1" чтобы программа hostapd могла найти правильный интерфейс, к которому нужно присоединить пользователяВо-вторыхопция ifname ДОЛЖНА быть изменена на “eth1.1.” т.к. трафик на VLAN 1 теперь будет маркироваться между коммутатором и CPU.   
  
-We also need to add a new interface on VLAN 3 for our guest network.+Мы также должны добавить новый интерфейс на VLAN 3 для нашей гостевой сети.
  
 ''config interface 'vlan3' ''config interface 'vlan3'
Line 104: Line 102:
 '' ''
  
-Note that the ifname is eth1.3 indicating this interface should interact with VLAN 3 on the switch CPU port and that the ipaddr is on a different network than VLAN 1. For simplicity's sake I have made the third octet of the IP address equal to the VLAN number but that is not a requirementthe connection to the VLAN is made by the interface namethe ifname option, and switch configuration only.+Обратите внимание, что опция ifname – eth1.3 – указывает что этот интерфейс должен взаимодействовать с VLAN 3 на порте CPU коммутатора и опция ipaddr находится в сети, отличной от VLAN 1. В целях упрощения, я сделал третий октет IP адреса равным номеру VLAN, но это не обязательно. Соединение с VLAN сделано только по имени интерфейсаопции ifname и конфигурации коммутатора  
  
-**Important Note:** Because you changed the name of your primary interface from "lan" to "vlan1" you will need to update your ''/etc/config/dhcp'' (the interface optionand ''/etc/config/firewall'' (the network option in the zonesfiles to reflect that change. //Failure to do this will likely lock you out of the router!//+**Важное замечание:** до того, как вы измените имя вашего первичного интерфейса с “lan” на “vlan1”, вы должны обновить ваши файлы ''/etc/config/dhcp'' (опцию interface) и ''/etc/config/firewall'' (опцию network в зонахчтобы отразить это изменение. //Ошибка в этих действиях сделает ваш роутер недоступным для вас.//   
  
-Save the changes to your ''/etc/config/network'' file and issue a ''/etc/init.d/network'' reload command to apply themIf you've done everything correctly you should be returned back to a prompt in a few seconds and you should still have access to the routerIf you have a problem accessing the router you probably somehow disconnected your CPU port from the switch and you'll need to use the recovery mechanism of your router to get back in and fix your configurations.+Сохраните изменения в вашем файле ''/etc/config/network'' и используйте команду перезагрузки ''/etc/init.d/network'' чтобы применить измененияЕсли вы все сделали правильно – то через несколько секунд у вас должно получиться вернуться в командную строку и у вас по-прежнему будет доступ к роутеруЕсли у вас появились проблемы с доступом к роутеру – наверняка вы каким-то образом отсоединили ваш порт CPU от коммутатора и вам необходимо использовать механизм восстановления чтобы снова попасть на роутер и исправить вашу конфигурацию  
  
-It's likely that you will want to setup a DHCP server for this guest interface as well as appropriate firewall rules to allow access to the Internet but prevent access to the LAN computers but doing those things is outside the scope of this documentWe'll proceed assuming that you have addressing and firewall rules setup and workingBefore proceeding you may want to temporarily setup a separate wireless SSID on the router which does NOT use 802.1x which is bridged to the guest network and verify it worksif it does not you'll want to figure that out before adding in the 802.1x dynamic VLAN complexity.+Вероятно, что вы захотите настроить DHCP сервер для этого гостевого интерфейса, а также соответствующие правила фаервола чтобы разрешить доступ к Интернет, но запретить доступ к компьютерам вашей LAN. Но эти настройки находятся за пределами этого документаМы продолжим считая, что у вас есть настроенные и работающие адресация и правила фаервола. Вы также можете захотеть перед продолжением настроить отдельный беспроводной SSID на роутере, который НЕ БУДЕТ использовать 802.1x, который будет бриджиться с гостевой сетью и убедиться, что он работает. Если он не будет работать – вы должны будете разобраться с этим до того, как будете добавлять сложности динамических VLAN 802.1x.    
 + 
 +Теперь на нашем роутере есть функционирующая гостевая сеть и мы можем модифицировать нашу беспроводную конфигурацию для поддержки динамических VLANов 802.1x. Чтобы это сделать необходимо изменить настройки SSID в вашем файле ''/etc/config/wireless'' и удалить опцию ''network'', а также добавить опции ''dynamic_vlan'' и ''vlan_tagged_interface''. Пример ниже основан на базовой настройке 802.1x и будет выглядеть так: 
  
-Now that we have a guest network functioning on the router we can modify our wireless configuration to support 802.1x dynamic vlans. To do this modify the SSID setup in your ''/etc/config/wireless'' file and remove the ''network'' option and add the ''dynamic_vlan'' and ''vlan_tagged_interface options''. An example based on the basic 802.1x setup found above would be: 
  
 ''config wifi-iface ''config wifi-iface
Line 127: Line 126:
 '' ''
  
-Finallyyou need to ensure that your RADIUS server is sending VLAN informationOn FreeRADIUS each username section should look like:+И наконецвы должны убедиться, что RADIUS сервер отправляет информацию VLAN. На FreeRADIUS каждая секция username должна выглядеть так
  
 ''"username"      Cleartext-Password := "password" ''"username"      Cleartext-Password := "password"
Line 135: Line 134:
 '' ''
  
-With the important part being the three "Tunnel" settings where ''Tunnel-Private-Group-ID'' is set to the VLAN that user should be placed on.+Важной частью являются три настройки "Tunnel", где ''Tunnel-Private-Group-ID'' выставлена на тот VLAN, в который мы хотим поместить пользователя 
 + 
 +Если к этому моменту все выполнено правильно, то вы сможете перезагрузить ваш роутер и попробовать потестировать как ассоциируются разные пользовательские имена с различными VLANами.  
  
-If everything has been done correctly to this point you should be able to reboot your router and try testing with some different usernames with different VLANs associated. 
  
-==== How It Works/Troubleshooting ====+==== Как это работает/устранение неисправностей ====
  
-If you were able to make standard 802.1x work on your router and also can make VLANs work on your router but are having problems trying to do 802.1x with dynamic VLANs or you want to customize your configuration it is helpful to know how OpenWRT handles dynamic VLANs.+Если вы смогли завести обычный 802.1x на вашем роутере и также смогли заставить заработать VLANы, но у вас имеются проблемы с попытками заставить работать 802.1x с динамическими VLANами или если вы хотите измененную конфигурацию – полезно знать как OpenWRT управляет динамическими VLANами 
  
-When we set the interface names in the above example to "vlan1" and "vlan3" and set their type to "bridge" OpenWRT automatically created two bridges (software switcheson the router named "br-vlan1" and "br-vlan3"You can see these bridgesand which ports they're connected toby running the ''brctl show'' command which gives output like this:+Когда мы установили имена интерфейсов  в примере выше в "vlan1" и "vlan3"и установили их тип в "bridge"OpenWRT автоматически создала два моста (программных коммутаторана роутере, поименовав их “br-vlan1” и “br-vlan3Вы можете посмотреть информацию об этим мостах и томкакие порты эти мосты соединяютзапустив команду ''brctl_show'', которая даст вам вывод, подобный этому
  
 ''root@OpenWrt:~# brctl show ''root@OpenWrt:~# brctl show
Line 151: Line 151:
 '' ''
  
-In this example output you can see the two bridges and that eth1.1 (the CPU port for VLAN 1) and eth1.3 (the CPU port for VLAN 3) are the only members of each respective bridgeWhen an 802.1x dynamic VLAN wireless client joins VLAN 1 the output will change like this:+В этом примере вывода можно увидеть эти два моста. Также видно, что eth1.1 (CPU порт для VLAN 1) и eth1.3 (CPU порт для VLAN 3) являются единственными членами каждого соответствующего мостаКогда беспроводной клиент динамического VLAN 802.1x присоединяется к VLAN 1  - вывод изменяется следующим образом
  
 ''root@OpenWrt:~# brctl show ''root@OpenWrt:~# brctl show
Line 160: Line 160:
 '' ''
  
-As you can see the wlan0.1 interface (the connection for VLAN 1 traffic to wireless users on wlan0) is now a member of br-vlan1. Because eth1.1 is a member of the same bridge wireless users on VLAN 1 can exchange traffic with the CPU VLAN 1 port.+Как вы можете видеть – интерфейс wlan0.1 (соединяющий трафик для VLAN 1 с беспроводными пользователями wlan0) сейчас является членом br-vlan1. Поскольку eth.1.1 является членом того же моста, беспроводные пользователи на VLAN 1 могут обмениваться трафиком с портом CPU VLAN 1.  
  
 But how does wlan0.1 know to connect to eth1.1 on br-vlan1? The answer lies in the hostapd software and in the additional configuration we did in ''/etc/config/wireless''. But how does wlan0.1 know to connect to eth1.1 on br-vlan1? The answer lies in the hostapd software and in the additional configuration we did in ''/etc/config/wireless''.
 +Но как wlan0.1 знает, что присоединяться нужно к eth1.1 на br-vlan1? Ответ лежит в ПО hostapd и в дополнительной конфигурации, сделанной нами в /etc/config/wireless.  
  
-On a normal Linux based access point the idea is that you only need to set a ''vlan_tagged_interface'' option in your configuration which lets hostapd know what tagged CPU interface contains access to all VLANs. Hostapd would then automatically create subinterfaces like ethX.Y where ethX is the tagged interface and is the VLAN numberUnfortunately this simple configuration does not work with OpenWRT because most users are ALREADY using bridging on their CPU interface by setting the interface type to bridge in ''/etc/config/network'' which is part of the standard OpenWRT configuration as it is how non-802.1x wireless users connect to the CPU portWhen you set things up that way OpenWRT automatically creates a bridge called "br-lan" or "br-" in front of whatever the interface name is and then adds the physical interface such as eth1.1 to the bridgeRun ''brctl show'' on an OpenWRT router which is not configured for 802.1x dynamic VLANs to see this setup.+На обычной точке доступа, работающей на Linux, смысл заключается в том, что вам необходимо только задать опцию ''vlan_tagged_interface'' в вашей конфигурации, что позволит hostapd знать, что маркированный интерфейс CPU содержит доступ ко всем VLANам. Hostapd должен затем автоматически создать субинтерфейсы типа ethX.Y, где ethX - это маркированный интерфейс, и номер VLAN. К сожалению, эта простая конфигурация не работает с OpenWRT потому, что большинство пользователей УЖЕ используют мостовое соединение на их интерфейсах CPU, устанавливая тип интерфейса в мост в ''/etc/config/network'', что является частью стандартной конфигурации OpenWRT. Так беспроводные пользователи не-802.1x соединяются с портом CPU. Когда вы задаете все таким образом - OpenWRT автоматически создает мост, поименованный "br-lan" или "br-" впереди имени любого интерфейса, и затем добавляет в мост конкретный физический интерфейс (такой, как eth1.1)Запустите команду ''brctl show'' на роутере OpenWRT, не сконфигурированном для динамических VLANов 802.1x, чтобы увидеть эти настройки
  
-Because a physical interface can only be a member of ONE bridge hostapd is not then able to add eth1.1 to a new hostapd created bridge for wlan0.1 so you end up with no communicationIf you ran ''brctl show'' on a misconfigured router like this you would see one or more bridge interfaces created by OpenWRT through the ''/etc/config/network'' file and one bridge interface created by hostapd for each VLAN a user had tried to connect to which ONLY had the wlan0.Y interface as a memberObviously if the wlan interface is the only member of a bridge the traffic has nowhere to go so the user is unable to obtain an IP address or go anywhere.+Физический интерфейс может быть членом только ОДНОГО моста. Соответственно, hostapd не может добавить eth1.1 к вновь созданному hoastapd мосту для wlan0.1 и вы прерываетесь с отсутствием соединенияЕсли вы запустите ''brctl show'' на таком неверно сконфигурированном роутере, вы можете увидеть один или более мостовых интерфейсов созданных OpenWRT из файла ''/etc/config/network''. И один интерфейс моста, созданный hostapd для каждого VLAN, с которым пользователь пытался соединиться и где в качестве члена есть ЕДИНСТВЕННЫЙ интерфейс wlan0.Y. Очевидно, что если интерфейс wlan является единственным членом моста, то трафику некуда направляться и пользователь неспособен получить IP адрес или направиться куда-то
  
-To work around this problem we make a few changesFirstwe must name our interfaces in ''/etc/config/network'' based on their VLAN such as ''vlan1'' and ''vlan3''This causes OpenWRT to name the bridges it creates ''br-vlan1'' and ''br-vlan3''Secondwe set the ''vlan_bridge'' option in ''/etc/config/wireless'' to "br-vlan" and the ''vlan_naming'' option to "0" what this does is tell hostapd to create bridges using the br-vlanY naming convention (where is the VLAN number). As you can see those bridges will already exist based on the OpenWRT configuration and because you can only have one bridge with the same name hostapd just adds the wlan0.Y interface to the existing bridge allowing it to communicate with the eth1.Y interface that OpenWRT placed there.+Чтобы решить эту проблему мы внесли несколько измененийВо-первыхмы должны именовать наши интерфейсы в ''/etc/config/network'' основываясь на их вланах - так, как ''vlan1'' и ''vlan3''В результате, OpenWRT именует созданные ей мосты ''br-vlan1'' и ''br-vlan3''Во-вторыхмы устанавливаем опцию ''vlan_bridge'' в ''/etc/config/wireless'' в значение "br-vlan" и опцию ''vlan_naming'' в "0". Что даёт инструкцию hostapd создавать мосты, используя br-vlanY конвенцию именования (где - номер VLAN). Как вы можете увидеть, эти мосты уже будут существовать в соответствии с OpenWRT конфигурацией. Поскольку у вас может быть только один мост с каким-то именем, hostapd просто добавит интерфейс wlan0.Y к существующему мосту. И это даст возможность общаться с интефейсом eth1.Y, который там поместила OpenWRT. 
  
-Hopefully this section allowed you to understand how hostapd interacts with OpenWRT to allow for dynamic VLANs over 802.1x. As you can see it's a bit of a tricky configurationWhen things don't seem to be working correctly with dynamic VLANs but work with fixed VLANs a good place to start is by checking the output of the ''brctl show'' command and seeing which interfaces are being connected to each otherOnce you verify that is the problem it gives you a starting point to figure out what must be modified in the configuration to get the correct interfaces bridged together.+Надеемся, что эта секция позволила вам понять каким образом hostapd взаимодействует с OpenWRT для возможности использования динамических VLANов на 802.1x. Вы могли убедиться, что это слегка "хитрая" конфигурацияЕсли вам кажется, что у вас не работают правильно динамические VLANы, но работают фиксированные - для начала будет правильным проверить вывод команды ''brctl show'' и посмотреть какие интерфейсы соединены с каждым другимПосле того, как вы проверите, что проблема кроется в этом - у вас появится отправная точка для понимания: что должно быть изменено в конфиггурации чтобы правильные интерфейсы были соединены в мостовые соединения
  
-===== Additional Resources =====+===== Дополнительные источники =====
  
-WPA Enterprise options can be found in the [[docs:guide-user:network:wifi:basic#wpa_enterprise_access_point|Wireless documentation]].+Опции WPA Enterprise можно найти в [[docs:guide-user:network:wifi:basic#wpa_enterprise_access_point|Wireless documentation]].
  • Last modified: 2021/07/24 05:34
  • by someothertime