Author Topic: Подключение zentyal к точке доступа Wi-Fi (роутеру)  (Read 2514 times)

kruzzz74

  • Zen Apprentice
  • *
  • Posts: 1
  • Karma: +0/-0
    • View Profile
Добрый день (ночь)
есть сервер Zentyal с двумя сетевыми картами
  • стандартная проводная Ethernet для организации локальной сети в компьютерном классе
  • wi-fi карта для подключения к роутеру (который подключен к Интернет)

нужно брать интернет и фильтруя раздавать в локальную сеть. Не могу понять где хранятся конфиги zentyal-network, стандартный конфиг interfaces так понимаю игнорируется. Где вообще нужно вводить SSID и пароль?
Пытался воспользоваться советами отсюда https://forum.zentyal.org/index.php?topic=14717.msg85440#msg85440,  насколько понял нужно было после установки wpasupplicant отредактировать соответствующим образом файл /etc/wpa_supplicant/wpa_supplicant.conf и вроде как все..
В общем этот вариант не сработал, сеть передергивал после манипуляций, может чего-то не так сделал. Был вариант попробовать Network Manager поставить, не знаю правда спасло бы или нет.. Вообще конечно удивительно что в настройках веб морды не предусмотрена возможность нормального коннекта к беспроводной сети.

PS По поводу сети к сожалению на данный момент нужно только так и только эти использовать интерфейсы. 
« Last Edit: August 26, 2014, 05:46:38 pm by kruzzz74 »

YOBA

  • Zen Monk
  • **
  • Posts: 87
  • Karma: +4/-0
  • ALLU YOBA ETO TI?
    • View Profile
    • XXX MYTISCHI HARDCORE OCHOBA XXX
Всё очень как всегда, не задокументировано.

1. Отредактируй этот файл. Замени wlan1, d-link и wifi_password на имя адаптера в системе, название сети и пароль.
/etc/zentyal/hooks/network.postsetconf

Code: [Select]
#!/bin/sh

export WLAN_IFACE=wlan1
export WLAN_ESSID="d-link"
export WLAN_CONF="wpa-psk wifi_password"
/usr/share/zentyal-network/setup-wireless

# we need to tell ebox we have updated the interfaces file so we are not asked in the interface
# every time we save
/usr/share/zentyal/update-file-digest network /etc/network/interfaces

exit 0

2. Не забудь сделать файл исполняемым:
Code: [Select]
sudo chmod +x /etc/zentyal/hooks/network.postsetconf
3. Отредактируй этот файл:
/usr/share/zentyal-network/setup-wireless

Code: [Select]
#!/usr/bin/perl
my $iface = $ENV{'WLAN_IFACE'};
defined($iface) or exit 0;
my $essid = $ENV{'WLAN_ESSID'};
defined($essid) or exit 0;
my $extra_conf = $ENV{'WLAN_CONF'};
my $conf = "wpa-ssid $essid\n";
if(defined($extra_conf)) {
    $conf .= ($extra_conf . "\n");
}
my $ifile = '/etc/network/interfaces';
my $newifile = '/etc/network/interfaces.new';
open(IFACES, $ifile);
open(NEW_IFACES, '>', $newifile);
my $print = 1;
for my $line (<IFACES>) {
    print NEW_IFACES $line;
    if ($line =~ m/^iface $iface/) {
        print NEW_IFACES $conf;
    }
}
close(NEW_IFACES);
close(IFACES);
rename($newifile, $ifile);

Настрой сетевую карту в веб-интерфейсе (адрес, шлюз итд ну или просто вруби DHCP).
Сохрани изменения.

Примечания.

1. Если у тебя есть несколько вай-фай карт, то тебе необходимо делать копи-пэйст блока описания карты несколько раз. Пример с двумя вайфай-адаптерами:

/etc/zentyal/hooks/network.postsetconf

Code: [Select]
#!/bin/sh

export WLAN_IFACE=wlan1
export WLAN_ESSID="D-Link"
export WLAN_CONF="wpa-psk superpassw0rd"
/usr/share/zentyal-network/setup-wireless

export WLAN_IFACE=wlan2
export WLAN_ESSID="TP-LINK"
export WLAN_CONF="wpa-psk anotherpassw0rd"
/usr/share/zentyal-network/setup-wireless

# we need to tell ebox we have updated the interfaces file so we are not asked in the interface
# every time we save
/usr/share/zentyal/update-file-digest network /etc/network/interfaces

exit 0

2. Файл /usr/share/zentyal-network/setup-wireless в дистрибутиве 3.2 был с ошибкой.
Криво(руко)жопые говнокодеры зентяла генерировали строку:
my $conf = "    essid $essid\n";
когда надо было
my $conf = "wpa-ssid $essid\n";

Удачи.