iptables -F
/etc/dhcp/dhclient.conf
com uma linha contendo
send dhcp-client-identifier = hardware;
eth0→enp0s10
e
eth1→enp1s7
.
eth0
e eth1
usando o comando sed
: por exemplo, para substituir
eth0
por enp0s10
seria
sed -e 's/eth0/enp0s10/g' -i
trab3.gns3.
Deve indicar no relatório a correspondência
entre as interfaces eth0 e eth1 e as que usou.
eth0
(enp0s10
). Pode fazer isto desactivando a
interface, mudando no ficheiro de configuração o BOOTPROTO
para none
e voltando a activar a interface (ou então usando
ifconfig interface 0.0.0.0
).
tap0
é
“destruída”, sendo criada de novo com um endereço MAC
diferente quando o voltar a correr. Para evitar ter que
reconfigurar no router Cisco a entrada manual no DHCP para o
Terminal 1, da primeira vez que corre a emulação da rede deve verificar que
endereço MAC foi atribuído à tap0
e fixá-lo adicionando ao
ficheiro /etc/sysconfig/network-scripts/ifcfg-tap0
a linha
MACADDR="<mac_da_tap0>"
.
dnf install proftpd
dnf install dhcp-server
iptables
para masquerading, isto é,
source NAT usando o endereço (dinâmico) da interface eth0
route -n
)ifconfig
)resolv.conf
dhcpd.conf
(apenas no Router Linux)iptables-save
)
show running-config
show ip route
show ip nat translations
show ip dhcp bindings
ping
ou o
traceroute
nas questões indicadas como
outRes (em texto com fonte de tamanho fixo, para melhor
visibilidade)wireshark
Nota: em qualquer dump ou captura deve indicar sempre o comando; nas capturas deve indicar sempre os filtros que eventualmente tenha utilizado.
ifdown
) a interface tap0
do
terminal 1. Limpe a cache do dhclient
com
rm -f
/var/lib/dhclient/*
Inicie uma captura wireshark na interface f1/1 de R0 e
volte a activar (ifup
) a interface tap0
do
terminal 1. Repita o procedimento para a interface eth0
do terminal 2.
As capturas devem mostrar o conteúdo das mensagens.
(2 × capRes)
debug ip nat
detailed
. No terminal 1, faça download
deste
ficheiro (de preferência, use o wget
ou o curl
).
Com base nas linhas de output de R0, explique o trabalho do NAT
(outRes + texRes).
ssh
para a interface eth0 do Router
Linux. Nessa shell, corra o comando while true; do echo hello; sleep 1; done
para
que o servidor ssh vá gerando pacotes.
Explique o que acontece quando usa o comando clear
ip nat translation *
e comente a afirmação Quando usamos NAT com tradução de portas, os fluxos de pacotes passam de connectionless para connection-oriented. (texRes)
/etc/ssh/sshd_config
modificando a linha PermitRootLogin without-password
para
PermitRootLogin yes
e depois reinicie o serviço sshd com
systemctl restart sshd.service
.
ssh
do router linux para o terminal 1.
eth0
(enp0s10
) para obter endereço
por DHCP da rede do laboratório.
Certifique-se de que o servidor de ftp está a correr nos Terminais 1 e
2 e que não está a correr no Router Linux (use os
comandos netstat -ant
para ver se tem algum processo na
porta 21 e systemctl start|stop proftpd.service
para
activar/desactivar o servidor FTP).
Ponha o wireshark a capturar em todas as interfaces do Router Linux.
Em todas as alíneas desta pergunta deve correr
o ftp em modo
activo (use o cliente ncftp
e, dentro deste, corra o
comando set passive off
, ou então use o cliente
ftp
e, dentro deste, corra o comando passive no
).
Para melhor compreender o que se passa, atente aos endereços IP dos pacotes
capturados e procure nesses pacotes os comandos PORT
(ou
EPRT
) do FTP.
get
) de um ficheiro. Justifique o
insucesso deste procedimento. (capRes + texRes)
setenforce 0
em ambas as máquinas e volte a tentar.
modprobe nf_nat_ftp
. Tente novamente o
ftp da alínea anterior e comente os resultados tendo em conta o que
acontece na conexão de controlo e na de dados. (capRes + texRes)