Histórico da Página
...
| Informações | ||
|---|---|---|
| ||
Clientes cloud, os passos 2 e 4 precisam ser realizados pelo usuário, os demais passos é necessário entrar em contato com o time de Cloud para que seja realizado os demais procedimentos. |
Índice
| Índice | ||||||||
|---|---|---|---|---|---|---|---|---|
|
Objetivo
...
O objetivo deste guia é descrever os procedimentos para a configuração de um servidor de proxy reverso em uma instalação da plataforma.
| Dica | ||
|---|---|---|
| ||
Após a configuração do Proxy Reverso proxy reverso, não esqueça de alterar a URL de acesso ao portal nas Configurações do Sistema sistema da plataforma. Confira como fazer acessando Configurações do sistema Clique aqui e saiba como fazer. |
| Nota | ||
|---|---|---|
| ||
Salientamos que, ao utilizar um proxy reverso, uma prática de segurança recomendada para a plataforma é não expor o servidor de aplicação diretamente na Internet. Clique aqui e veja outras boas práticas de segurança recomendadas para o seu ambiente. |
Configuração de
...
proxy reverso / DMZ
...
Um proxy reverso é um servidor que repassa o tráfego de rede recebido para um ou mais servidores. Em uma instalação da plataforma este tipo de servidor é usado para habilitar uma topologia de arquitetura chamada DMZ.
...
A figura a seguir apresenta as topologias DMZ + SSL suportadas pela plataforma TOTVS Fluig.
| Informações | ||
|---|---|---|
| ||
Destacamos que a topologia considerada ideal e recomendada é a número 2: Apache (DMZ + SSL) → Fluig. |
| Nota | ||
|---|---|---|
| ||
Não é possível utilizar as notificações em tempo real quando utilizado proxy reverso com HTTPS. |
Pré-requisitos
...
- Apache™ versão 2.4. O instalador e a documentação oficial do Apache™ podem ser encontrados em http://httpd.apache.org/.
- Se for utilizar SSL, também será necessário converter o certificado utilizado na configuração da plataforma para os formatos .cer, .key e .pem. O guia para configurar a plataforma em SSL (HTTPS) encontra-se aqui.
- Para a porta do realtime (7777) no Apache é necessário habilitar o modulo SSL em todos os vhosts que utilizarem o realtime SSLEngine On e SSLProxyEngine On .
Módulos Apache
...
- Certifique-se que os seguintes módulos estão sendo carregados pelo Apache:
...
| Bloco de código |
|---|
# Módulo para HTTPS LoadModule ssl_module modules/mod_ssl.so |
Configuração do Apache (sem SSL)
...
1. Acesse a pasta /etc/httpd/conf.d.
| Informações | ||
|---|---|---|
| ||
O caminho da pasta pode variar, esse caminho do exemplo é de uma instalação Linux CentOS. |
2. Crie um arquivo de configuração para a plataforma (chamado fluig.conf, por exemplo), com o seguinte conteúdo:
| Bloco de código | ||
|---|---|---|
| ||
Listen 7777 Listen 21 Header set Access-Control-Allow-Origin: "http://<Nome externo do servidor>" Header set Access-Control-Allow-Headers: "Content-Type, X-Requested-With, accept-version" Header set Access-Control-Allow-Methods: "GET, PUT, OPTIONS, DELETE, POST" Header Set Access-Control-Request-Method: "GET, PUT, OPTIONS, DELETE, POST" ProxyRequests Off ProxyVia On AllowConnect 7777 AllowConnect 21 |
Listener HTTP
...
| Bloco de código | ||
|---|---|---|
| ||
<VirtualHost *:80>
ServerName <Nome externo do servidor>
ProxyPreserveHost On
ProxyPass / http://<IP do servidor Fluig>:<Porta do servidor Fluig>/
ProxyPassReverse / http://<Nome externo do servidor>/
</VirtualHost> |
Listener do RealTime
...
| Bloco de código | ||
|---|---|---|
| ||
<VirtualHost *:7777>
RequestHeader set X-Forwarded-Proto https
RequestHeader set Access-Control-Allow-Origin: "https://<Nome externo do servidor>"
RequestHeader set X-Forwarded-Host <Nome externo do servidor>:7777
ServerName <Nome externo do servidor>
SSLProxyEngine On
SSLEngine On
ProxyRequests Off
ProxyPreserveHost On
Include /etc/letsencrypt/options-ssl-apache.conf
SSLCertificateFile <diretorio-cadeia-certificados>/cert.pem
SSLCertificateKeyFile <diretorio-cadeia-certificados>/privkey.pem
# allow for upgrading to websockets
RewriteEngine On
RewriteCond %{HTTP:Upgrade} =websocket [NC]
RewriteRule /(.*) ws://<IP do servidor Fluig>:7777/$1 [P,L]
RewriteCond %{HTTP:Upgrade} !=websocket [NC]
RewriteRule /(.*) http://<IP do servidor Fluig>:7777/$1 [P,L]
ProxyPass "/" "http://<IP do servidor Fluig>:7777"
ProxyPassReverse "/" "http://<IP do servidor Fluig>:7777/"
ProxyPass "/" "ws://<IP do servidor Fluig>:7777/"
ProxyPassReverse "/" "ws://<IP do servidor Fluig>:7777/"
</VirtualHost> |
Listener FTP
...
| Bloco de código | ||
|---|---|---|
| ||
<VirtualHost *:21>
ServerName <Nome externo do servidor>
ProxyPreserveHost On
ProxyPass / ftp://<IP do servidor Fluig>/
ProxyPassReverse / ftp://<IP do servidor Fluig>:21/
</VirtualHost> |
| Informações | ||
|---|---|---|
| ||
<Nome externo do servidor>: nome que aparecerá na URL do navegador, por exemplo, http://meuservidor.com.br. <IP do servidor Fluig>: endereço IP interno do servidor onde o Fluig está rodando, por exemplo, 10.10.2.35. |
Configuração do Apache (SSL) + Fluig (HTTP)
...
Se não for utilizado HTTPS na plataforma, deve possuir a seguinte configuração:
...
| Informações | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||
<Nome externo do servidor>: nome que aparecerá na URL do navegador, por exemplo, http://meuservidor.com.br. <diretorio-certificado>: diretório e nome do arquivo do certificado de domínio enviado pela entidade certificadora, por exemplo: /etc/httpd/ssl/cert-dominio.crt <diretorio-chave-privada>: diretório e nome do arquivo da chave privada, enviada pela entidade certificadora, por exemplo: /etc/httpd/ssl/chave-privada.key <diretorio-cadeia-certificados>: diretório e nome do arquivo que contém a cadeia de certificados, por exemplo: /etc/httpd/ssl/cert-cadeia-certificados.pem
DICA: O arquivo referente a cadeia de certificados pode ser criado concatenando os certificados de domínio, intermediários e raiz. No Linux, isto pode ser feito com o comando abaixo:
OBS: Os certificados intermediários e raiz normalmente podem ser encontrados para download no site da entidade certificadora que você escolheu. <IP do servidor fluig>: endereço IP interno do servidor onde o Fluig está rodando, por exemplo, 10.10.2.35. |
Configuração para acessar a plataforma via mobile/OAuth
...
Essa configuração deve ser realizada para garantir que a requisição chega ao conector HTTP com o mesmo protocolo do qual a requisição foi originada.
...
| Bloco de código |
|---|
<http-listener max-post-size="1073741824" name="default" socket-binding="http" proxy-address-forwarding="true"/> |
Configuração do Apache (SSL) + Fluig (SSL)
...
1. Acesse a pasta /etc/httpd/conf.d.
| Informações | ||
|---|---|---|
| ||
O caminho da pasta pode variar, esse caminho do exemplo é de uma instalação Linux CentOS. |
...
