PfSense + UniFi controller



  • Добрый день.

    Прикрутил к pf UniFi controller 5.3.11. Метод установки подсмотрел тут: http://www.robpeck.com/2015/03/installing-the-ubiquiti-unifi-controller-software-on-pfsense-2.2/
    Сам контроллер запускается и точки видит, но никак не может их подцепить. (бесконечный "adopting"). На самой точке, если зайти по SSH "Status:      Unable to resolve (http://unifi:8080/inform)", либо "Server reject"
    Стандартные требуемые порты открыл Lan net -> Lan address, хотя вроде и так должен был пускать.

    Сталкивался кто?



  • Доброе

    Unable to resolve (http://unifi:8080/inform)

    Имя контроллера с точек резолвится ли в ip ? Пробовали пинговать ? Какой адрес в кач-ве dns на точках ?



  • dns - тот что по dhcp раздали - pfSense, на нём же контроллер UniFi.

    "unifi" в ip не резолвится, но даже если явно указываю, то получаю "Server reject"



  • Может что-то из этого поможет ?

    https://community.ubnt.com/t5/UniFi-Wireless/pfSense-DHCP-provision-option/td-p/366876

    03-07-2013 03:53 PM
    Yes we use pfSense and I think in every case we do either of:

    have a DHCP reservation for the controller PC, with DHCP hostname set to unifi,
    (with the DNS forwarder setting ticked to resolve for DHCP reservations)
    have a DNS forwarder entry for unifi (unifi.example.suffix) which works even if the controller is outside the network

    In either case it doesn't matter whether the controller machine hostname is really unifi or not.
    The first method is slightly neater as it both reserves the IP of the controller machine and resolves the name in one setting, so the controller's network settings can remain on automatic.
    Also if you ever have to setup a replacement controller machine you can prep it, then shut down the existing controller machine, then update the MAC address (in the DHCP reservation) when ready to attach the new one to the network.

    I worked this out:

    Use DHCP option 43 and select "String". You must convert your controller IP address to HEX and add 01:04 to the beginning ie. for my setup - IP = 10.0.0.10 in HEX it is 0A:00:00:0A so in the 'String' field I enter:

    01:04:0A:00:00:0A

    Hope this helps.

    Trying to make it simpler for ppl

    pfSense

    Additional BOOTP/DHCP Options -> press advanced and add a new entry.

    Number Type Value
    43 string 01:04:c0:a8:6e:0a

    (01:04: + 192.168.110.10 in hex) 192.168.110.10 is unifi controller in this case.

    Use http://www.kloth.net/services/iplocate.php to convert your controller ipadress.

    Check dhcplease and ssh to AP with (ubnt/ubnt) before adoption and unifi user/pass after to check status.

    Use help and info commands to get status.

    Status:

    Unable to resolve (http://unifi:8080/inform) <– cannot resolve unifi hostname or option 43 not present in dhcpd answer.

    Server Reject (http://unifi:8080/inform) <--  AP can reach server but is not adopted yet, login to controller and adopt.

    Connected (http://unifi:8080/inform) <-- AP adopted in unifi controller. Yippie!

    Hope this help

    0. Обновить ПО на самих точках до самой актуальной версии.
    1. Настроить резервирование\привязку имени unifi (ip адрес - лан-адрес pf) в настройках DHCP на pf .
    2. Настроить dhcp option 43 на pf.
    3. Создать разреш. правила fw на лан пф для работы контроллера.

    Еще варианты :
    https://community.ubnt.com/t5/UniFi-Wireless/Troubleshoot-Server-Reject-Error/td-p/888804
    https://community.ubnt.com/t5/UniFi-Wireless/AP-s-can-t-discover-controller/td-p/588425

    P.s. Покажите вывод netstat -plnt на пф



  • А в чем проблема прописать unifi в настройках DNS forwader'a или Resolver'a?
    Я например давно взял в привычку обращаться к сервисам по dns записям.



  • Это сделано. С точки получаю "Status:      Server Reject (http://unifi:8080/inform)"
    Тут дело в закрытом порте каком то. Если отключить fw, то всё гуд, но я так делать не хочу.

    Имею вот такие правила на LANе:
    где под UniFi AP алиасы IP-адресов точек




  • Я смотрю у вас в правилах файрвола прописаны шлюзы. А вы не пробовали посмотреть и снять дамп трафика со всех интерфейсов в момент регистрации точки на контроллере. Вполне вероятно, что файрвол просто передает пакет дальше не оставляя его системе.



  • Нет, точка стучится куда надо. (192.168.100.30 - точка, 192.168.100.1 - контроллер)

    P.S. не выйдет, дак разверну на другой машине контроллер, просто уже спортивный интерес появился.




  • Во что нашел: http://scottn.us/2016/02/pfsense-unifi-controller-stuck-adopting/

    Java is suppose to be cross-platform but in the case of the UniFi controller, that is not true. There is a snappy-java-1.0.5.jar which doesn't include FreeBSD/amd64 native libraries and thus doesn't work under pfSense. You'll notice this when you upgrade a UAP from 3.2.12.2920 to 3.3.17.3991. The inform url now requires the snappy compression I guess and if you sniff the traffic or look at logs you'll see a 500 failure and a trace about snappy. Just grab the one from the pkg system or, as I did:

    wget http://pkg.freebsd.org/freebsd:10:x86:64/release_1/All/snappyjava-1.0.4.1_1.txz
    tar vfx snappyjava-1.0.4.1_1.txz
    cp ./usr/local/share/java/classes/snappy-java.jar /usr/local/UniFi/lib/snappy-java-1.0.5.jar



  • Покажите вывод netstat -plnt на пф.  Это важно. И у вас нет правил fw на ЛАН, разр. порты для unifi.

    P.s. Правило, к-ое !Internet allow неверно создано (хоть и работает). Уберите в нем dest , а в gw явно укажите интернет-шлюз Balance-GW.



  • "netstat -plnt" - в чём-то ошибка. Неверный аргумент - "plnt". Что именно требуется посмотреть?
    И по поводу правил fw на ЛАН объясните пожалуйста поподробней. У меня логика такая: я разрешаю входящие соединения по любым портам и протоколам точкам на интерфейс LAN addreass (да хоть any). Исходящие же соединения блокироваться не должны.

    P.S. извиняюсь за offtop, но объясните тоже.



  • Доброе.

    "netstat -plnt" - в чём-то ошибка. Неверный аргумент - "plnt". Что именно требуется посмотреть?

    Требутся узнать, на каком интерфейсе (-ах) "висит" сейчас unifi. Если он слушает 127.0.0.1 - работать не будет. Он должен висеть на ЛАН.

    И по поводу правил fw на ЛАН объясните пожалуйста поподробней.

    Должны быть разрешены опред. протоколы и порты на ЛАН пф для работы unifi - src - LAN net, dest - LAN address и стоять выше всех. По аналогии с Anti-Lockout Rule .
    Список всего добра можно поискать в гугле.


Log in to reply