Mudanças entre as edições de "Action"
Linha 59: | Linha 59: | ||
- Instalação e configuração do Router WIFI da rede LAN 192.168.20.0/24 (BSSID1) | - Instalação e configuração do Router WIFI da rede LAN 192.168.20.0/24 (BSSID1) | ||
- Instalação e configuração com teste de certificação (taxa de erros usando test-set) do link. | - Instalação e configuração com teste de certificação (taxa de erros usando test-set) do link. | ||
+ | |||
[[Imagem:topologia.jpg]] | [[Imagem:topologia.jpg]] | ||
Edição das 16h26min de 19 de dezembro de 2008
Action Telecom S.A
EQUIPE ACTION TELECOM S.A
Sistema Operacional: Debian
IP Externo: 200.135.37.103
Integrantes : André de Espindola
Eduardo Kwiatkowski Scheffer
Gilberto Laus Fernandes
Projeto
Disciplinas
Gerência de REDES
- Configurar um servidor para responder por um domínio. O nome do domínio deverá seguir o modelo: dominio.sj.cefetsc.edu.br. Onde “dominio” será o nome dado ao grupo.
- O ip do servidor será: 200.135.37.10x. Onde “x“ deverá ser igual ao último digito do ip do servidor de sua equipe, ou algum outro determinado pelo professor em caso de conflito. Este número, bem como o "dominio" da item anterior, deverá ser repassado ao professor, para que sejam feitos os ajustes necessários no DNS (hendrix) da escola. Obs.: não confunda "dominio" com nome de máquina.
- No servidor deverão estar configurados os seguintes serviços: DNS, servidor de e-mail, ssh, ftp, firewall, Apache com uma página personalizada e cotas em disco para os usuários. Também deverão ser configurados os serviços NAT, roteamento e Squid para uso com possíveis clientes locais, conectados via uma segunda interface de rede. Estes serviços não serão habilitados para conexões remotas.
- Deverão ser criados usuários, e estes deverão ter um e-mail do tipo: usuario@dominio.sj.cefetsc.edu.br. Os usuários poderão também ter acesso a suas contas/arquivos remotamente. Para cada professor envolvido no projeto deverá ser criado um usuário exclusivo e na criação deste, a equipe deverá informar, como faria há um usuário leigo, quais os serviços disponíveis e o procedimento para acessar os mesmos, em resumo: manual do usuário. Obs.: os professores farão uso destes usuários para testar o sistema. Convidem colegas para serem usuário do seu sistema, avisando que é um sistema experimental.
Programação para REDES
O presente projeto consiste na concepção de um serviço de diário pessoal, popularmente conhecido como blog (abreviação para web log). O serviço deverá permitir que somente usuários autorizados possam publicar notas pessoais na página do blog. As notas publicadas deverão estar visíveis a qualquer visitante do sítio. O WordPress é um exemplo de blog.
Em suma o projeto deverá apresentar:
- Uma forma para autenticar usuários;
- Um formulário para a submissão de notas. Para cada nota publicada deverá ser registrada a data e a hora da publicação.
- Uma página inicial listando todas as notas já publicadas.
- O banco de dados MySQL deverá ser utilizado para o registro e recuperação das notas.
- Uma página Sobre que apresente algumas informações sobre a equipe responsável pelo projeto.
Requisitos de software
- Servidor HTTP (Apache Web Server)
- Suporte a PHP
- Banco de dados MySQL
Parte-se do pressuposto que os softwares subjacentes necessários para o provimento deste sistema já serão instalados e configurados por cada grupo, como por exemplo, servidor HTTP com suporte ao PHP. A instalação e configuração do MySQL será realizada com apoio do professor.
Cabeamento Estruturado
- Realizar o levantamento dos componentes necessários para a montagem dos equipamentos em seus locais definidos no projeto.
- A partir deste levantamento, fazer um projeto para a montagem.
- Realizar Certificação da Rede.
Instalação de Equipamentos de REDE
Topologia da Rede
Abaixo temos uma figura que mostra como será a topologia da rede a ser implementada. Deve-se observar que cada equipe implementará apenas parte da rede. A rede como um todo surgirá do conjunto dos trabalhos feitos pelas diversas equipes. Os equipamentos mostrados na figura serão disponibilizados pelo professor. A instalação e configuração dos mesmos será responsabilidade das equipes.
Equipe Action
- Instalação e configuração com teste de certificação (ping) do link ótico formado entre os Tranceivers do LAB. REDES 1 e LAB REDES 2; - Instalação e configuração da placa WIFI LAN 192.168.20.13 e seu link no LAB REDES 1 ótico redundante 2MBps entre COINF e LAB REDES 1 até as Interfaces seriais dos Routers CISCO1750; Configuração das interfaces seriais nos routers correspondentes. - Instalação e configuração do Router WIFI da rede LAN 192.168.20.0/24 (BSSID1) - Instalação e configuração com teste de certificação (taxa de erros usando test-set) do link.
Cronograma Proposto
Etapas de Execução | 24 | 25 | 26 | 27 | 28 | 01 | 02 | 03 | 04 | 05 | 08 | 09 | 10 | 11 | 12 | 15 | 16 | Responsável | |||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Configuração do Servidor | |||||||||||||||||||||||||||
Formatação do Servidor | X | Giba | |||||||||||||||||||||||||
Instalação do Sistema Operacional Debian | X | André | |||||||||||||||||||||||||
Instalação e Configuração do Serviço SSH | X | Gaúcho | |||||||||||||||||||||||||
Criação de Usuários e Grupos | X | Giba | |||||||||||||||||||||||||
Instalação e Configuração do Serviço DNS | X | Gaúcho | |||||||||||||||||||||||||
Instalação e Configuração do Firewall - Regras de IPTables | X | André | |||||||||||||||||||||||||
Instalação e Configuração do Serviço SQUID | X | Gaúcho | |||||||||||||||||||||||||
Instalação e Configuração do Serviço de NAT | X | André | |||||||||||||||||||||||||
Instalação e Configuração do Servidor de FTP | X | Giba | |||||||||||||||||||||||||
Instalação e Configuração do Servidor DHCP | X | Gaúcho | |||||||||||||||||||||||||
Instalação e Configuração do Servidor de Email POSTFIX | X | X | X | X | X | X | X | X | X | X | Gaúcho | ||||||||||||||||
Instalação e Configuração do Servidor Apache | X | Giba | |||||||||||||||||||||||||
Instalação e Configuração do Serviço PPP | X | André | |||||||||||||||||||||||||
Cabeamento e Instalação de Equipamentos | |||||||||||||||||||||||||||
Instalação da Placa WIFI Lan | X | Giba | |||||||||||||||||||||||||
Instalação do Router WIFI BSSID1 | X | André | |||||||||||||||||||||||||
Configuração e Certificação do PABX | X | Giba | |||||||||||||||||||||||||
Configuração e Cerficação do Link WIFI | X | Gaúcho | |||||||||||||||||||||||||
Configuração e Cerficação das Interfaces Serias dos Routers | X | X | X | X | André | ||||||||||||||||||||||
Confecção da Página Web | |||||||||||||||||||||||||||
Layout Blog | X | X | X | Giba | |||||||||||||||||||||||
Banco de Dados | X | X | X | X | X | X | X | André | |||||||||||||||||||
PHP | X | X | X | X | X | X | X | X | X | Giba | |||||||||||||||||
Teste e Ajustes Finais | |||||||||||||||||||||||||||
Página Web | X | X | Todos | ||||||||||||||||||||||||
Servidor e Serviços | X | X | Todos | ||||||||||||||||||||||||
Rede Local e Equipamentos de Rede | X | X | Todos | ||||||||||||||||||||||||
Relatórios - WIKI | X | X | Todos | ||||||||||||||||||||||||
Apresentação FINAL | X | Todos |
Relatorio Final do Projeto Integrador 2008
Serviços do servidor
SSH
-PermitEmptyPasswords no (não permite acesso sem senha)
-PasswordAuthentication yes (permite autentificação com senha)
-PrintMotd yes ( mostra a "message of the day" quando se loga)
-Port 2200
-Demais configurações é padrão do ssh
Proxy Squid (transparent)
hierarchy_stoplist cgi-bin ?
acl QUERY urlpath_regex cgi-bin \?
no_cache deny QUERY
cache_mgr = eduardo@action.sj.cefetsc.edu.br
visible_hostname action_servProxy
http_port 8080 transparent
cache_mem 100 MB
maximum_object_size_in_memory 128 KB
maximum_object_size 4 MB
minimum_object_size 0 KB
cache_dir ufs /var/spool/squid 500 16 256
cache_access_log /var/log/squid/access.log
cache_log /var/log/squid/cache.log
cache_swap_low 90
cache_swap_high 95
error_directory /usr/share/squid/errors/Portuguese
"Padrões de atualização do cache para o seguinte tipos de arquivos"
-Java
refresh_pattern .class 2880 60% 28800
-Imagens
refresh_pattern .gif 2880 150% 28800 override-expire reload-into-ims
refresh_pattern .jpg 2880 150% 28800 override-expire reload-into-ims
refresh_pattern .jpeg 2880 150% 28800 override-expire reload-into-ims
refresh_pattern .png 2880 150% 28800 override-expire reload-into-ims
refresh_pattern .bmp 2880 150% 28800 override-expire reload-into-ims
refresh_pattern .tif 2880 150% 28800 override-expire reload-into-ims
refresh_pattern .tiff 2880 150% 28800 override-expire reload-into-ims
refresh_pattern .xbm 2880 150% 28800 override-expire reload-into-ims
refresh_pattern .ico 2880 150% 28800 override-expire reload-into-ims
- Animacoes
refresh_pattern .mov 2880 80% 28800 override-expire reload-into-ims ignore-reload
refresh_pattern .avi 2880 80% 28800 override-expire reload-into-ims ignore-reload
refresh_pattern .mpg 2880 80% 28800 override-expire reload-into-ims ignore-reload
refresh_pattern .swf 2880 80% 28800 override-expire reload-into-ims ignore-reload
- Audio
refresh_pattern .wav 2880 80% 28800 override-expire reload-into-ims
refresh_pattern .au 2880 80% 28800 override-expire reload-into-ims
refresh_pattern .mid 2880 150% 28800 override-expire reload-into-ims
refresh_pattern .mp3 2880 80% 28800 override-expire reload-into-ims
- Arquivos comprimidos
refresh_pattern .zip 2880 80% 28800 override-expire reload-into-ims
refresh_pattern .gz 2880 80% 28800 override-expire reload-into-ims
refresh_pattern .arj 2880 80% 28800 override-expire reload-into-ims
refresh_pattern .lha 2880 80% 28800 override-expire reload-into-ims
refresh_pattern .lzh 2880 80% 28800 override-expire reload-into-ims
refresh_pattern .rar 2880 80% 28800 override-expire reload-into-ims
refresh_pattern .tgz 2880 80% 28800 override-expire reload-into-ims
refresh_pattern .tar\.gz 2880 80% 28800 override-expire reload-into-ims
refresh_pattern .tar 2880 80% 28800 override-expire reload-into-ims
refresh_pattern .Z 2880 80% 28800 override-expire reload-into-ims
-Documentos
refresh_pattern .pdf 2880 60% 28800
refresh_pattern .rtf 2880 60% 28800
refresh_pattern .doc 2880 60% 28800
refresh_pattern .wp 2880 60% 28800
refresh_pattern .wp5 2880 60% 28800
refresh_pattern .ps 2880 60% 28800
refresh_pattern .prn 2880 60% 28800
refresh_pattern .asp 2880 60% 28800
refresh_pattern .aspx 2880 60% 28800
refresh_pattern .php 2880 60% 28800
refresh_pattern .php3 2880 60% 28800
refresh_pattern .srf 2880 60% 28800
-Executaveis
refresh_pattern .exe 2880 150% 28800 override-expire reload-into-ims
-Diversos
refresh_pattern .xml 2880 60% 28800 reload-into-ims
refresh_pattern .html 60 90% 10080 reload-into-ims
refresh_pattern .js 60 150% 10080 reload-into-ims
refresh_pattern .ashx 60 90% 10080 reload-into-ims
refresh_pattern .dll 60 90% 10080 reload-into-ims
-Padrão
refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern . 0 20% 4320
-ACLs
acl all src 0/0
acl manager proto cache_object
acl localhost src 127.0.0.1/255.255.255.255
acl SSL_ports port 443 563
acl Safe_ports port 80 21 280 443 488 563 591 777 1025-65535
acl purge method PURGE
acl CONNECT method CONNECT
acl rede src 192.168.30.0/255.255.255.0
acl negados url_regex "/etc/squid/negados/negados"
http_access allow manager localhost
http_access deny manager
http_access allow purge localhost
http_access deny purge
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access allow localhost
http_access allow rede !negados
http_access deny all
Mail Sever Postfix
-"Script de criação/exclusão (mail_user_add e mail_user_del respectivamente) de usuário de email no diretorio
/etc/postfix" -Os seguintes pacotes foram instalados para o funcionamento dos serviços de recebimento, entrega, e autentificação
dos usuários no servidor # postfix # postfix-doc # postfix-tls # sasl2 # libdb3-util # procmail # sasl2-modules # libsasl2-bin # courier-imap # corier-imap-ssl # courier-pop # courier-pop-ssl # courier-authdaemon
-Main.cf (arquivo principal de configuração do postfix).
Os parametros aqui descritos foram alterado, no mais é o padrão do postfix.
-TLS parameters (Transport Layer Security).
-Foi gerado um chave de autentficação valida por um ano, caso o usuario use o email
acessando externamente. Foi criado um script para a criação da mesma que se encontra
no /etc/postfix/ssl/tls_key_generator, o padrão é gerar uma chave por 2 anos
smtp_use_tls = yes
-Adicione o postfix ao grupo sasl
useradd postfix sasl
smtp_tls_note_starttls_offer = yes
smtpd_tls_CAfile = /etc/postfix/ssl/cacert.pem
smtpd_tls_loglevel = 1
smtpd_tls_received_header = yes
smtpd_tls_session_cache_timeout = 3600s
smtpd_tls_cert_file = /etc/postfix/ssl/smtpd.crt
smtpd_tls_key_file = /etc/postfix/ssl/smtpd.key
smtpd_tls_session_cache_database = btree:${queue_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${queue_directory}/smtp_scache
tls_random_source = dev:/dev/urandom
-Configurações gerais
myhostname = action.sj.cefetsc.edu.br
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
mydestination = action.sj.cefetsc.edu.br, localhost
mailbox_command =
home_mailbox = Maildir/
relayhost =
inet_protocols = all
mynetworks = 127.0.0.0/8
"#Codigo de erro retornado quando eh recebida um e-mail com destinatario desconhecido.
"#450 = tente novamente mais tarde.
"#550 = rejeitado.
unknown_local_recipient_reject_code = 550
mail_spool_directory = /home/postfix #
mailbox_size_limit = 10485760
message_size_limit = 2097152 #Tamanho Maximo de um email (bytes)
recipient_delimiter = +
inet_interfaces = all
"#Tamanho maximo em bytes para as caixas de entrada.(bytes)
"#Deve ser maior que o message_size_limit.
mailbox_size_limit = 10485760 #10MB
"#Maximo numero de destinatarios no msm email;
smtpd_recipient_limit = 15
-SMTP parameters (SASL Authentication)
smtpd_sasl_local_domain =
smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
broken_sasl_auth_clients = yes
smtpd_recipient_restrictions = permit_mynetworks,permit_sasl_authenticated,reject_unauth_destination
smtpd_tls_auth_only = no
-Obs. No parametro smtpd_recipient_restrictions não necessidade de autenticar usuario da rede local pois
são usuarios confiaveis, portanto "permit_mynetworks" vem antes do "permit_sasl_authenticated" qué o modulo
que requer autenticação dos usuarios pra envio usando o smtp do servidor, empedindo que o servidor se torne
um spmmer, não fazendo um open relay.
-Controle de Fila e Falha de entrega
"#Tempo maximo q uma msg fika na fila de adiadas, antes de voltar ao sender
maximal_queue_lifetime = 2d
"#Tempo maximo de email na fila
bounce_queue_lifetime = 2d
"#Tempo entre cada tentativa de entrega das msgs da fila
fast_flush_refresh_time = 1h
"#Tempo maximo entre tentativas de entregar uma msg adiada
maximal_backoff_time = 30m
"#Tempo minimo entre tentativas de entregar uma msg adiada
minimal_backoff_time = 15m
"#Tempo para deletar a msg da fila { MUITA ATENCAO}
fast_flush_purge_time = 5d
-Observações
-O Diretorio de recebimento de cada usuario ficou como descrito no script de criação de usuario.
-Checar as configurações do sasl no diretorio /etc/default/saslauthd
para o nosso caso ficou assim:
START=YES #Daemon
MECHANISM="PAM" #Login serão autenticados no PAM(linux)
THREADS=5 #Quantos processos serão iniciados pelo sasl
OPTIONS="-c -r" #O "-r" é para autenticação sem precisar do dominio ex:usuario
-Checar o arquivo /etc/postfix/sasl/smptd.conf, nele contem o método de autentificação
do smtp e metodo de envio de senha
pwcheck_method: saslauthd
mech_list: plain login
-Adicione o postfix ao grupo sasl
useradd postfix sasl
DNS Server
-Pacote instalado bind9
-geração de uma key rndc, rndc-keygen
-resolv.conf
search action.sj.cefetsc.edu.br
nameserver 200.135.37.65
nameserver 192.168.30.2
-named.conf
zone "action.sj.cefetsc.edu.br" {
type master;
notify yes;
file "/etc/bind/action.zone";
};
-action.zone
$TTL 60480
@ IN SOA ns-action.sj.cefetsc.edu.br. eduardo.action.sj.cefetsc.edu.br. (
2008121100
60480
86400
2419200
604800 )
@ IN MX 5 ns-action.sj.cefetsc.edu.br.
@ IN NS ns-action.sj.cefetsc.edu.br.
@ IN A 200.135.37.103
ns-action IN A 200.135.37.103
mail IN A 200.135.37.103
www IN A 200.135.37.103
ftp IN A 200.135.37.103
smtp IN A 200.135.37.103
imap IN A 200.135.37.103
Interface e Rotas estaticas
-IP do servidor 192.168.30.2/24
-IP do AP 192.168.30.3/24
-IP LAN1 (ROUTER) 192.168.30.1/24
-IP LAN0 (ROUTER) 200.135.37.103/26
-Configuração ta interface de rede "eth0"
-Arquivo /etc/networking/interfaces
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet static
address 192.168.30.2
subnet 192.168.30.0
netmask 255.255.255.0
gateway 192.168.30.1
-Rotas
Com o comando route -n voce pode checar as rotas do servidor no nosso caso como há apenas uma rede local 192.168.30/0 o gateway é a LAN1(ROUTER) que por sua vez através das regras de DNAT e MASQUERADE emcaminha os pacotes para internet.
FIREWALL
-POLICY ACCEPT/BLOCK
-Script /root/scripts/firewall, script no rc.local, veja a descrição de alguns itens no script
echo 1 > /proc/sys/net/ipv4/tcp_syncookies
iptables -A INPUT -p tcp --syn -m limit --limit 1/s -j ACCEPT
iptables -A INPUT -p tcp --tcp-flags SYN,ACK,FIN,RST RST -m limit --limit 1/s -j ACCEPT
iptables -A INPUT -p icmp --icmp-type echo-request -m limit --limit 1/s -j ACCEPT
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -p tcp -i eth0 --syn --dport 139 -j DROP #samba
iptables -A INPUT -p tcp -i eth0 --syn --dport 138 -j DROP #samba
iptables -A INPUT -p tcp -i eth0 --syn --dport 137 -j DROP #samba
echo 1 > /proc/sys/net/ipv4/conf/all/accept_redirects
echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts
echo 0 > /proc/sys/net/ipv4/conf/all/accept_source_route
echo 1 > /proc/sys/net/ipv4/conf/default/rp_filter
iptables -A INPUT -m state --state INVALID -j DROP
iptables -t nat -A PREROUTING -p tcp -i eth0 -s 192.168.30.0/24 --dport 80 -j REDIRECT --to-port 8080
echo 1 >/proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -o eth0 -s 192.168.30.0/24 -j MASQUERADE
APACHE2
-Pacote instalado apache2, apache2-modules
-Site instalado no /var/www/action com um alias no arquivo /etc/apach2/sites-avaiable/default.
Foi alterado o parametro "RedirectMatch ^/$ /action/"