Sophos Firewall DHCP Options (SFOS)
Neste artigo mostramos como configurar DHCP Options numa Sophos Firewall com o sistema operativo SFOS.
Atualização - 24 de março de 2022
Desde SFOS v18.5 MR3 existem agora DHCP Options no GUI. Com isto, a configuração torna-se bastante mais rápida e simples.

Requisitos
- Sophos Appliance com SFOS
1. Criar servidor DHCP
Para poder fornecer DHCP Options, é naturalmente necessário ter primeiro um servidor DHCP. Este pode ser criado através da interface de administração. A Sophos já explicou como o fazer num artigo próprio da Knowledge Base:
- Sophos Firewall: How to configure the firewall as a DHCP-Server - https://community.sophos.com/kb/en-us/123133
Importante: No nome DHCP deve evitar espaços ou caracteres especiais. Use, por exemplo, CamelCase ou separe com hífen (-) ou underscore (_).
2. Ligar à consola
As DHCP Options não se encontram no WebAdmin GUI. Tem de se ligar à appliance via SSH para as definir. Em Windows existe a ferramenta PuTTY e em macOS pode ser usado o Terminal já pré-instalado.
- Abra o Terminal no macOS e introduza
ssh admin@192.168.1.1na consola. Ao usar Putty, só tem de introduzir o endereço IP. Naturalmente, o endereço IP pode ser diferente na sua firewall. Depois ainda tem de introduzir o seu nome de utilizador e a sua palavra-passe para iniciar sessão na firewall via SSH. - Depois de ligado, selecione 4. Device Console para chegar à shell.

Configurar DHCP Option Objects
A Sophos escreveu um artigo próprio da Knowledge Base sobre isto, mas do nosso ponto de vista não é assim tão fácil de entender. O que consideramos muito útil nesse artigo são as informações adicionais sobre DHCP Options. Por isso, ligamos aqui adicionalmente para o post KB da Sophos, para que possa encontrar a tabela completa com todas as opções: https://community.sophos.com/kb/en-us/123529
Exemplo 1 - parte 1
Tem, por exemplo, o problema de uma Sophos RED 15w num local remoto não reconhecer o Access Point integrado? Vamos usar este caso como exemplo e percorrer como pode criar uma DHCP Option para isso.
Definir DHCP Option
Antes de preencher a opção com dados, tem primeiro de definir uma opção. O comando tem o seguinte aspeto:
system dhcp dhcp-options add optioncode optionname optiontype
- Nr: Aqui define o optioncode. Existem no total 255 destes optioncodes. No KB Post 123529 da Sophos encontra o comando para listar todos os optioncodes no terminal.
- SAMPLE-NAME: Aqui pode introduzir um nome que faça sentido para si e descreva a opção da forma mais compreensível.
- TYPE: Aqui define o type que será necessário mais tarde para a sua opção. Estão disponíveis os seguintes types: array-of, boolean, four-byte, ipaddress, one-byte, string, two-byte
Importante: Nos meus exemplos, remover os parênteses.
O comando funcional para o nosso exemplo fica assim:
system dhcp dhcp-options add optioncode 234 optionname dhcp_magic_ip optiontype ipaddress
Exemplo 1 - parte 2
Depois de a opção estar definida, ainda fornecemos os dados. O comando tem o seguinte aspeto:
system dhcp dhcp-options binding add dhcpname optionname (234) value
- DHCP-NAME: Aqui introduz o nome do servidor DHCP que criou através do GUI.
- SAMPLE-NAME: Introduza o mesmo nome de antes. A grafia tem de coincidir exatamente.
- WERT: Como valor, espera-se aqui um endereço IP. Para o nosso exemplo RED, seria o endereço IP da RED 15w no local remoto.
O comando funcional para o nosso exemplo fica assim:
system dhcp dhcp-options binding add dhcpname dhcp_red_avanet optionname dhcp_magic_ip(234) value 10.10.10.12
Outro exemplo
Depois de explicar que dois comandos têm de ser executados, mostramos aqui alguns exemplos para facilitar a criação das suas próprias Sophos Firewall DHCP Options.
Com esta opção, indica a um ThinClient em que servidor se encontra a imagem.
system dhcp dhcp-options add optioncode 161 optionname ThinClientServer optiontype ipaddress
system dhcp dhcp-options binding add dhcpname DHCP_Server_Avanet_LAN optionname ThinClientServer(161) value '10.10.10.12'
Este comando fornece agora a porta em que o ThinClient se pode ligar ao servidor. Aqui é escolhido string como optiontype, e não ipaddress. No melhor dos casos, o fabricante do dispositivo fornece-lhe esta informação.
system dhcp dhcp-options add optioncode 192 optionname ThinClientServerPort optiontype string
system dhcp dhcp-options binding add dhcpname DHCP_Server_Avanet_LAN optionname ThinClientServerPort(192) value '443'
Exemplo do Robert: WDS / PXE
As DHCP Options podem deixar-nos loucos e podemos passar horas à procura dos commands corretos. O colega Robert partilha aqui a sua experiência connosco (obrigado).
Parte 1: Define-se exatamente o que deve ser configurado:
Um valor DHCP Option (IP) deve ser aplicado no âmbito DHCP interno “Home_Scope”, que configurei no GUI. No meu caso, o servidor WDS escuta no IP: 172.16.16.11
system dhcp dhcp-options binding add dhcpname Home_Scope optionname TFTP_Server_Name(66) value 172.16.16.11
Parte 2: Define-se onde um cliente pode encontrar o Pre-Environment:
system dhcp dhcp-options binding add dhcpname Home_Scope optionname Bootfile_Name(67) value \boot\x64\wdsnbp.com
Por Pre-Environment entende-se um ficheiro de boot que contém um driver VGA padrão, bem como drivers de placa de rede, rato e teclado. O Pre-Environment é a janela com que se trabalha durante o Windows Setup.
Eliminar a opção
Pode querer voltar a eliminar uma opção deste tipo. Nesse caso, o comando seria:
system dhcp dhcp-options delete optionname dhcp_magic_ip(234)
Mostrar DHCP Options
Com este comando obtém uma lista de todas as DHCP Options já definidas na Sophos Firewall.
system dhcp dhcp-options list
Mostrar DHCP-Options-Bindings
system dhcp dhcp-options binding show dhcpname
- DHCP-NAME: Este é o nome da opção que definiu.
O comando funcional para o nosso exemplo fica assim:
system dhcp dhcp-options binding show dhcpname DHCP_Server_Avanet_LAN