Primeiramente vamos desativar alguns serviços, para isto execute os comandos abaixo.
chkconfig avahi-daemon off
chkconfig bluetooth off
chkconfig cups off
chkconfig firstboot off
chkconfig hidd off
chkconfig ip6tables off
chkconfig iptables off
chkconfig isdn off
chkconfig nfslock off
chkconfig pcscd off
chkconfig portmap off
chkconfig rpcgssd off
chkconfig rpcidmapd off
chkconfig bluetooth off
chkconfig cups off
chkconfig firstboot off
chkconfig hidd off
chkconfig ip6tables off
chkconfig iptables off
chkconfig isdn off
chkconfig nfslock off
chkconfig pcscd off
chkconfig portmap off
chkconfig rpcgssd off
chkconfig rpcidmapd off
Agora vamos criar um usuário suporte para usarmos como conexão remota.
[root@fw ~]# adduser suporte
Coloque uma senha para o usuário suporte.
[root@fw ~]# passwd suporte
Configurar o acesso para conexão via ssh. Edite o arquivo de configuração do ssh.
[root@fw ~]# vim /etc/ssh/sshd_config
Descomente a linha abaixo (retire o #)
HostKey /etc/ssh/ssh_host_dsa_key
Desabilite o login para o root.
PermitRootLogin no
Libere somente para o usuário suporte adicionando a linha abaixo ao final do arquivo.
AllowUsers suporte
Ajuste o arquivo hosts.conf.
[root@fw ~]# vim /etc/hosts
Deixe com o seguinte conteúdo.
127.0.0.1 localhost.localdomain localhost
::1 localhost6.localdomain6 localhost6
192.168.0.1 fw.testes.com.br fw
::1 localhost6.localdomain6 localhost6
192.168.0.1 fw.testes.com.br fw
Edite o arquivo sysctl.conf e altere os valores abaixo.
[root@fw ~]# vim /etc/sysctl.conf
Altere a variável abaixo.
net.ipv4.ip_forward = 1
Agora configuramos um firewall básico onde deixará inicialmente passar todas as requisições oriundas da rede interna.
[root@fw ~]# mkdir bin
[root@fw ~]# cd bin
[root@fw bin]# vim firewall.sh
[root@fw ~]# cd bin
[root@fw bin]# vim firewall.sh
Neste arquivo teremos as regras relacionadas abaixo.
#!/bin/bash
# Variável para interface de rede externa
EXT_IF=eth0
# Variável para interface de rede interna
INT_IF=eth1
/sbin/modprobe ip_nat_ftp
/sbin/modprobe ip_conntrack_ftp
iptables -F
iptables -F -t nat
iptables -X
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -p tcp --dport 22 -m state --state NEW -j ACCEPT
iptables -A INPUT -p icmp --icmp-type echo-request -m limit --limit 1/s -j ACCEPT
iptables -A INPUT -p icmp --icmp-type echo-reply -m limit --limit 1/s -j ACCEPT
iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -i $INT_IF -o $EXT_IF -m state --state NEW -j ACCEPT
#Mascaramento
iptables -t nat -A POSTROUTING -o $EXT_IF -j MASQUERADE
# Variável para interface de rede externa
EXT_IF=eth0
# Variável para interface de rede interna
INT_IF=eth1
/sbin/modprobe ip_nat_ftp
/sbin/modprobe ip_conntrack_ftp
iptables -F
iptables -F -t nat
iptables -X
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -p tcp --dport 22 -m state --state NEW -j ACCEPT
iptables -A INPUT -p icmp --icmp-type echo-request -m limit --limit 1/s -j ACCEPT
iptables -A INPUT -p icmp --icmp-type echo-reply -m limit --limit 1/s -j ACCEPT
iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -i $INT_IF -o $EXT_IF -m state --state NEW -j ACCEPT
#Mascaramento
iptables -t nat -A POSTROUTING -o $EXT_IF -j MASQUERADE
Altere o arquivo para que seja executável.
[root@fw bin]# chmod 700 firewall.sh
Coloque para que ele seja chamado quando o servidor seja iniciado.
[root@fw bin]# echo "/root/bin/firewall.sh" >> /etc/rc.local
Instale um pacote que sera muito útil para monitorar o tráfego no firewall.
[root@fw bin]# yum install iptraf
Reinicie a máquina virtual, coloque outra como cliente da rede interna e você conseguirá navegar na Internet. Lembre que na configuração da máquina virtual a rede deve estar como rede interna (intnet). As configurações de rede da máquina cliente será:
IP: 192.168.0.2
NETMASK: 255.255.255.0
GATEWAY: 192.168.0.1
DNS1: o dns de seu provedor
DNS2: o dns de seu provedor
NETMASK: 255.255.255.0
GATEWAY: 192.168.0.1
DNS1: o dns de seu provedor
DNS2: o dns de seu provedor
linha a esta errada
ResponderExcluir#Mascaramento
ipatbles -t nat -A POSTROUTING -o $EXT_IF -j MASQUERADE
Obrigado, feita a correção.
ResponderExcluir