3.4. Serviços de Portal Múltiplo e LVS
LVS routers under any topology require extra configuration when creating multi-port LVS services. Multi-port services can be created artificially by using firewall marks to bundle together different, but related protocols, such as HTTP (port 80) and HTTPS (port 443), or when LVS is used with true multi-port protocols, such as FTP. In either case, the LVS router uses firewall marks to recognize that packets destined for different ports, but bearing the same firewall mark, should be handled identically. Also, when combined with persistence, firewall marks ensure connections from the client machine are routed to the same host, as long as the connections occur within the length of time specified by the persistence parameter. For more on assigning persistence to a virtual server, see Seção 4.6.1, “A Subseção do SERVIDOR VIRTUAL”.
Infelizmente, o mecanismo usado para balancear as cargas nos servidores reais — IPVS — pode reconhecer as marcas firewall designadas ao pacote, mas não pode designar as marcas firewall por si mesmo. O trabalho das marcas firewall de designação deve ser desempenhado pelo filtro do pacote da rede,
iptables
, fora da Piranha Configuration Tool.
3.4.1. Designando Marcas Firewall
Para determinar as marcas firewall para o pacote destinado ao portal específico, o administrador deve usar
iptables
.
This section illustrates how to bundle HTTP and HTTPS as an example; however, FTP is another commonly clustered multi-port protocol. If an LVS is used for FTP services, refer to Seção 3.5, “Configurando o FTP” for configuration details.
A regra básica para lembrar de quando se utilizar as marcas firewall é a seguinte: cada protocolo que utiliza a marca firewall na Piranha Configuration Tool, possui uma regra
iptables
comensurável designando as marcas aos pacotes da rede.
Antes de criar as regras do filtro do pacote da rede, tenha certeza de que não hajam regras existentes. Para isto, abra o envelope de aviso, logon como root e digite:
/sbin/service iptables status
Caso as
iptables
não estiverem sendo executadas, o aviso aparecerá instantaneamente.
Caso as
iptables
estiverem ativas, elas exibirão o conjunto de regras. Caso as regras estejam presentes, digite o seguinte comando:
/sbin/service iptables stop
Caso as regras já estejam colocadas, será importante checar os conteúdos do
/etc/sysconfig/iptables
e copiar qualquer regra que seja importante guardar num lugar seguro antes de prosseguir.
Segue abaixo as regras que determinam a mesma marca firewall, 80, ao tráfego de entrada destinado ao endereço IP flutuante, n.n.n.n, nos portais 80 e 443.
/sbin/modprobe ip_tables
/sbin/iptables -t mangle -A PREROUTING -p tcp -d n.n.n.n/32 --dport 80 -j MARK --set-mark 80
/sbin/iptables -t mangle-A PREROUTING -p tcp -d n.n.n.n/32 --dport 443 -j MARK --set-mark 80
For instructions on assigning the VIP to the public network interface, see Seção 4.6.1, “A Subseção do SERVIDOR VIRTUAL”. Also note that you must log in as root and load the module for
iptables
before issuing rules for the first time.
Nos comandos
iptables
acima, o n.n.n.n deve ser substituído com o IP flutuante para o seus servidores virtuais HTTP e HTTPS. Estes comandos têm o efeito net de designar qualquer tráfego endereçado ao VIP nos portais apropriados à uma marca firewall de 80, que em atividade é reconhecida por IPVS e envios apropriados.
Atenção
The commands above will take effect immediately, but do not persist through a reboot of the system. To ensure network packet filter settings are restored upon reboot, refer to Seção 3.6, “Salvando as Configurações do Filtro do Pacote da Rede”