https://wiki.sj.ifsc.edu.br/api.php?action=feedcontributions&user=Vagner.c&feedformat=atomMediaWiki do Campus São José - Contribuições do(a) usuário(a) [pt-br]2024-03-28T09:13:45ZContribuições do(a) usuário(a)MediaWiki 1.35.9https://wiki.sj.ifsc.edu.br/index.php?title=Projeto_Integrador_-_2011.1_-_Teletec&diff=34959Projeto Integrador - 2011.1 - Teletec2011-07-12T18:27:35Z<p>Vagner.c: </p>
<hr />
<div>== * '''Equipe 2 : TELETEC''' ==<br />
<br />
----<br />
<br />
== INTEGRANTES TELETEC ==<br />
<br />
* '''Daniel Estefano'''; estefano.daniel@gmail.com <br />
* '''Denis Teixeira'''; denisteixeira3@gmail.com <br />
* '''Leonardo Oliveira P.'''; leonardo-op@live.com <br />
* '''Odair de Moraes'''; odairdmoraes@hotmail.com<br />
* '''Robson de Carvalho'''; rob_carvalho12@hotmail.com<br />
* '''Vagner Cordeiro.''' cordeirotelecom@gmail.com<br />
<br />
----<br />
<br />
== '''SOBRE A EMPRESA TELETEC - PROVEDORA DE ACESSO Á INTERNET:''' == <br />
<br />
Empresa especializada no ramo das Telecomunicações Oferece os seguintes serviços: <br />
<br />
# Conta de Usuário para cada cliente;<br />
# Conta de E-mail para cada cliente;<br />
# Uma página Web Padrão;<br />
# Instalação do Modem ADSL e do Cabeamento Estrurado;<br />
# Acesso Wirelles;<br />
# Suporte 24Horas. <br />
<br />
Contamos com 6 Técnicos em Telecomunicações especialistas no setor de redes para todo o suporte necessário.<br />
Contate um de nossos especialistas através do e-mail teletecifsc.googlegroups.com e faça já seu orçamento.<br />
<br />
== Etapas Iniciais de Configurações da Rede ==<br />
<br />
<br />
# Instalação do Sistema Operacional:Ubuntu-Server;<br />
# Definido Sistema de Arquivo, Dividido em 3 Partições: ''1 Partição Primátia, 1 Partição Secundária e uma Partição para Swap;'' <br />
# Definido nome do Domínio: teletec.sj.ifsc.edu.br;<br />
# Criado um Usuário: Tecnico;<br />
# Acesso via SSH ao Servidor Teletec.<br />
<br />
----<br />
<br />
== Gerencia de Redes: Apache, Postfix e DNS ==<br />
<br />
'''Configurações do servidor DNS:''' <br />
<br />
- Edição do Arquivo para IP Estático: '''/etc/network/interfaces''' <br />
<br />
# This file describes the network interfaces available on your system<br />
# and how to activate them. For more information, see interfaces(5).<br />
# The loopback network interface<br />
auto lo<br />
iface lo inet loopback<br />
# The primary network interface<br />
auto eth0<br />
iface eth0 inet static<br />
address 200.135.37.100<br />
netmask 255.255.255.192<br />
gateway 200.135.37.126 <br />
<br />
- Edição do Arquivo do servidor DNS '''/etc/bind/named.conf''' <br />
<br />
Indica todos os arquivos que irão fazer a configuração do DNS, incluindo os 3 principais defaults: ''named.conf.options, named.conf.local e o named.conf.default-zones''.<br />
<br />
// This is the primary configuration file for the BIND DNS server named.<br />
//<br />
// Please read /usr/share/doc/bind9/README.Debian.gz for information on the <br />
// structure of BIND configuration files in Debian, *BEFORE* you customize <br />
// this configuration file.<br />
//<br />
// If you are just adding zones, please do that in /etc/bind/named.conf.local<br />
include "/etc/bind/named.conf.options";<br />
include "/etc/bind/named.conf.local";<br />
include "/etc/bind/named.conf.default-zones";<br />
include "/etc/bind/robson.conf";<br />
<br />
- Edição do Arquivo de servidor DNS: named.conf.local '''/etc/bind/named.conf.local'''<br />
<br />
É um arquivo padrão do BIND onde foi configurado o o nosso dominino TELETEC.<br />
<br />
//<br />
// Do any local configuration here<br />
//<br />
<br />
// Consider adding the 1918 zones here, if they are not used in your<br />
// organization<br />
//include "/etc/bind/zones.rfc1918"8;<br />
zone "teletec.sj.ifsc.edu.br." IN {<br />
type master;<br />
file "/etc/bind/teletec.zone";<br />
allow-update { none; };<br />
};<br />
<br />
- Edição do Arquivo de DNS Reverso: '''/etc/bind/37.135.200.in-addr.arpa'''<br />
<br />
O DNS Reverso resolve um endereço IP para um nome de servidor – por exemplo, ele poderia resolver 200.176.3.142 para exemplo.hipotetico.com.br.<br />
<br />
$TTL 86400<br />
@ IN SOA www.teletec.sj.ifsc.edu.br. root (<br />
2011061500 ;<br />
1d ;<br />
1h ;<br />
1w ; <br />
1d ;<br />
)<br />
IN NS www.teletec.sj.ifsc.edu.br.<br />
100 IN PTR www.teletec.sj.ifsc.edu.br.<br />
<br />
- Edição do Arquivo para criar um subdomínio:'''/etc/bind/teletec.zone'''<br />
<br />
Arquivo que traz todas as configurações de cada subdomínio. <br />
<br />
$TTL 86400<br />
@ IN SOA teletec.teletec.sj.ifsc.edu.br root (<br />
2011062901;<br />
3H;<br />
15M;<br />
1W;<br />
1D );<br />
IN NS teletec.teletec.sj.ifsc.edu.br.<br />
IN MX 0 mail.teletec.sj.ifsc.edu.br.<br />
localhost IN A 127.0.0.1<br />
$ORIGIN teletec.sj.ifsc.edu.br.<br />
teletec A 200.135.37.100<br />
www A 200.135.37.100<br />
mail A 200.135.37.100<br />
<br />
- '''Configuração do servidor Apache'''<br />
<br />
No servidor Apache foi feito a instalação com o comando:<br />
<br />
apt-get install apache2<br />
<br />
- Configuração do arquivo '''/etc/apache2/sites-enabled/teletec-default'''<br />
<br />
<VirtualHost *:80><br />
ServerAdmin webmaster@localhost<br />
ServerName www.teletec.sj.ifsc.edu.br<br />
DocumentRoot /var/www/teletec<br />
<Directory /><br />
Options FollowSymLinks<br />
AllowOverride None<br />
</Directory><br />
<Directory /var/www/teletec><br />
Options Indexes FollowSymLinks MultiViews<br />
AllowOverride None<br />
Order allow,deny<br />
allow from all<br />
</Directory><br />
<br />
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/<br />
<Directory "/usr/lib/cgi-bin"><br />
AllowOverride None<br />
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch<br />
Order allow,deny<br />
Allow from all<br />
</Directory><br />
<br />
ErrorLog ${APACHE_LOG_DIR}/error.log<br />
<br />
# Possible values include: debug, info, notice, warn, error, crit,<br />
# alert, emerg.<br />
LogLevel warn<br />
<br />
CustomLog ${APACHE_LOG_DIR}/access.log combined<br />
<br />
Alias /doc/ "/usr/share/doc/"<br />
<Directory "/usr/share/doc/"><br />
Options Indexes MultiViews FollowSymLinks<br />
AllowOverride None<br />
Order deny,allow<br />
Deny from all<br />
Allow from 127.0.0.0/255.0.0.0 ::1/128<br />
</Directory><br />
<br />
</VirtualHost><br />
<br />
Na criação de um novo cliente vai ser criado um novo arquivo semelhante a esse com duas alterações nas linhas: '''ServerName www.teletec.sj.ifsc.edu.br''' onde vai ser acrescentado na frente do domínio o subdomínio do cliente exemplo: '''ServerName www.subdominio.teletec.sj.ifsc.edu.br''' e na linha '''DocumentRoot /var/www/teletec''' onde vai ser substituido '''teletec''' pelo nome do domínio do cliente por exemplo: '''DocumentRoot /var/www/cliente''' <br />
<br />
<br />
- '''Configuração do servidor POSTFIX'''<br />
<br />
- Primeiro foi feito a instalação com o comando:<br />
<br />
apt-get install postfix<br />
<br />
Em seguida o programa de instalação vai fazer algumas perguntas sobre a localização dos arquivos e alguns parâmetros<br />
<br />
- Configuração do arquivo '''/etc/postfix/main.cf''':<br />
<br />
<br />
# See /usr/share/postfix/main.cf.dist for a commented, more complete version<br />
<br />
<br />
# Debian specific: Specifying a file name will cause the first<br />
# line of that file to be used as the name. The Debian default<br />
# is /etc/mailname.<br />
#myorigin = /etc/mailname<br />
<br />
smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu)<br />
biff = no<br />
<br />
# appending .domain is the MUA's job.<br />
append_dot_mydomain = no<br />
<br />
# Uncomment the next line to generate "delayed mail" warnings<br />
#delay_warning_time = 4h<br />
<br />
readme_directory = no<br />
<br />
# TLS parameters<br />
smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem<br />
smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key<br />
smtpd_use_tls=yes<br />
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache<br />
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache<br />
<br />
# See /usr/share/doc/postfix/TLS_README.gz in the postfix-doc package for<br />
# information on enabling SSL in the smtp client.<br />
<br />
myhostname = mail.teletec.sj.ifsc.edu.br<br />
virtual_alias_maps = hash:/etc/postfix/virtual<br />
alias_database = hash:/etc/aliases<br />
myorigin = $myhostname<br />
mydestination = $myhostname, /etc/postfix/mydomains<br />
relayhost = <br />
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128<br />
mailbox_size_limit = 0<br />
recipient_delimiter = +<br />
inet_interfaces = all<br />
mydomain = teletec.sj.ifsc.edu.br<br />
mynetworks_style = subnet<br />
virtual_alias_domains = hash:/etc/postfix/mydomains<br />
<br />
<br />
<br />
- Foi criado o arquivo '''/etc/postfix/virtual'''<br />
<br />
Toda vez que for criado uma nova conta de e-mail vai ser acresentado duas linhas novas nesse arquivo como as que estão em negrito no arquivo abaixo so que onde tem a palavra padrao vai ser substituida pele nome do cliente<br />
<br />
teletec.sj.ifsc.edu.br Principal<br />
tecnico@teletec.sj.ifsc.edu.br tecnico<br />
<br />
robson.teletec.sj.ifsc.edu.br Subdominio1<br />
robson@robson.teletec.sj.ifsc.edu.br robson<br />
<br />
'''padrao.teletec.sj.ifsc.edu.br padrao'''<br />
'''user@padrao.teletec.sj.ifsc.edu.br user'''<br />
<br />
<br />
- Editar o arquivo mydomains '''/etc/postfix/mydomains'''<br />
<br />
Nesse arquivo tem como primeira linha o dominio e na seguinte o subdominio e toda vez que for criado uma conta nova vai ser acresentado uma linha nova com o nome do subdominio do cliente.<br />
<br />
teletec.sj.ifsc.edu.br OK<br />
robson.teletec.sj.ifsc.edu.br OK<br />
<br />
- Executar os comandos para releitura e reinicialização do Postfix:<br />
<br />
postmap /etc/postfix/virtual<br />
postmap /etc/postfix/mydomains<br />
service postfix restart<br />
<br />
== Instalação de Equipamento de Redes (Modem, Switch e Roteadores) ==<br />
<br />
'''Configurações:'''<br />
<br />
Instalação:<br />
<br />
minicom -s<br />
<br />
Configuração do Roteador Cisco 1700: <br />
<br />
* Configuração dos Dois Roteadores Utilizando a ferramenta "Minicon" (Se fosse Windows seria Hyperterminal)<br />
* Configuração dos dispositivos: Serial e Ethernet<br />
* Configuração como Protocolo PPP<br />
<br />
- ''"Configuração da porta serial":''<br />
<br />
┌─────────────[configuração]──────────────┐<br />
│ Nomes de arquivos e rotas<br />
│ Protocolos de transferência de arquivos<br />
│ Configuração da porta serial<br />
│ Modem e discagem<br />
│ Tela e teclado<br />
│ Salvar configuração como dfl<br />
│ Salvar configuração como<br />
│ Sair<br />
│ Sair do Minicom<br />
└────────────────────────────────────────┘<br />
<br />
- ''"Alteração da Porta Serial"''<br />
┌──────────────────────────────────────────────────────────┐<br />
│ A – Dispositivo Serial : /dev/ttSy0 <br />
│ B – Localização do Arquivo de Travamento : /var/lock<br />
│ C – Programa de Entrada :<br />
│ D – Programa de Saída :<br />
│ E – Bps/Paridade/Bits : 9600 8N1 <br />
│ F – Controle de Fluxo por Hardware : Não<br />
│ G – Controle de Fluxo por Software : Não<br />
│<br />
│ Alterar qual configuração?<br />
└──────────────────────────────────────────────────────────┘<br />
<br />
- ''"Salvar configuração com dfl"''<br />
<br />
- ''Configurando a Interface Serial do Roteador:''<br />
<br />
enable;<br />
configure terminal;<br />
<br />
#Para configurar a interface serial:<br />
interface serial 0;<br />
ip address 10.0.0.1/30;<br />
encapsulation ppp;<br />
exit;<br />
<br />
#Para configurar a interface ethernet:<br />
interface fastethernet 0;<br />
ip address 172.18.0.1/24;<br />
exit;<br />
exit;<br />
<br />
#Para salvar as configurações:<br />
wr;<br />
<br />
'''Radius'''<br />
<br />
Para ter acesso a rede aDSL ou pela rede sem fio será usado Radius para que os usuários sejam autenticados. O RADIUS é um sistema utilizado para prover uma autenticação centralizada em redes dial-up, VPN's (Virtual Private Network) e redes sem fio. Ele tem um modelo cliente-servidor, onde o cliente é o Network Access Server (NAS). Esse servidor é responsável por obter a informação sobre o cliente e repassá-la para o servidor RADIUS, além de interpretar a resposta, dando ou não acesso ao cliente. O servidor RADIUS é responsável por receber pedidos de conexão, autenticar o usuário e repassar ao NAS as informações necessárias para esse dar acesso ao usuário na rede. <br />
<br />
'''Arquivos configurados:''' <br />
<br />
Configurar login e senha para o cliente Radius ( /etc/freeradius<br />
/users ):<br />
<br />
“Usúario” Cleartext-Password := "senha"<br />
“Usúario” User-Password := "senha"<br />
<br />
Teste antes se seu servidor Radius está autenticando usuáriosfaça o seguinte comando no AC PPPoE (que fica em Ac-server): <br />
<br />
radtest seu_usuario sua_senha IP_do_seu_servidor_Radius 1 segredo_do_seu_servidor_Radius<br />
<br />
Configurando o Servidor PPPoe (/etc/ppp/pppoe-servers-options): <br />
<br />
require-chap<br />
auth<br />
lcp-echo-interval 10<br />
lcp-echo-failure 2<br />
ms-dns IP do seu servidor DNS<br />
netmask 255.255.255.0<br />
noipdefault<br />
debug<br />
kdebug 4<br />
plugin radius.so<br />
plugin radattr.so<br />
radius-config-file /etc/radiusclient/teletec.conf<br />
mru 1492<br />
mtu 1492<br />
<br />
Configuração do Cliente Radius ( etc/radiusclient/teletec.conf ):<br />
<br />
auth_order radius<br />
login_tries 4<br />
login_timeout 60<br />
nologin /etc/nologin<br />
issue /etc/radiusclient/issue<br />
authserver 200.135.37.100<br />
acctserver 200.135.37.100<br />
servers /etc/radiusclient/servers<br />
dictionary /etc/radiusclient/dictionary<br />
login_radius /usr/sbin/login.radius<br />
seqfile /var/run/radius.seq<br />
mapfile /etc/radiusclient/port-id-map<br />
default_realm<br />
radius_timeout 10<br />
radius_retries 3<br />
login_local /bin/login<br />
<br />
Configurando o IP do Servidor Radius ( /etc/radiusclient/servers ):<br />
<br />
200.135.37.100 testing123<br />
<br />
Integrando Radius ao Banco de Dados<br />
<br />
Primeiro procedimento, instale o pacote. <br />
<br />
apt-get install freeradius-mysql<br />
Edite o arquivo de configuração do freeradius, e descomente a seguinte linha <br />
( /etc/freeradius/radiusd.conf ): <br />
<br />
$INCLUDE sql.conf<br />
<br />
Para entrar no MySQL execute o comando: <br />
<br />
mysql -u root -p <br />
<br />
Crie uma base de dados somente para o Radius e dê ao usuário Radius a devida permissão para acesso a esta base. No shell do MySQL, execute os comandos: <br />
<br />
CREATE DATABASE radius;<br />
GRANT ALL ON radius.* TO freerad@localhost IDENTIFIED BY "senha_do_usuário_freeradius";<br />
exit;<br />
<br />
Inserindo informações na base de dados: <br />
<br />
mysql -u “usuário” -p “senha do usuário radius” “database” < /etc/freeradius/sql/mysql/schema.sql<br />
mysql -u “usuário” -p “senha do usuário radius” “database” < /etc/freeradius/sql/mysql/nas.sql<br />
<br />
Editar o arquivo /etc/freeradius/sql.conf, colocando a senha do usuário Radius: <br />
<br />
passwrod = "senha do usuário radius"<br />
<br />
E descomente a linha do mesmo arquivo ( /etc/freeradius/sql.conf ) : <br />
<br />
readclients = yes<br />
<br />
Reinicie o FreeRadius: <br />
<br />
service freeradius restart<br />
<br />
[[Arquivo:diagrama-teletec.jpg|850px]]<br />
<br />
== Cabeamento Estruturado ==<br />
<br />
Atividades Concluídas:<br />
<br />
- o A central telefônica ao DSLAM<br />
- o O DSLAM ao armário de telecom da equipe, através de uma linha telefone + DSL<br />
- o armário da equipe a uma área de trabalho. <br />
- O cabeamento permitiu a conexão do modem DSL no armário de telecom.<br />
- As tomadas da área de trabalho para conexão com Telefone e o Modem ADSL.<br />
<br />
== Programação para Redes de Computadores ==<br />
'''# Programação PHP e HTML'''<br />
'''Os Arquivos PHP (pagina Web) Encontram-se dentro da pasta: ''/var/www/teletec'''''<br />
<br />
[[Imagem:Paginas-php-teletec.jpg|850px]]<br />
<br />
- Edição do Arquivo '''Verificação.php''':<br />
<br />
Esta pagina PHP verifica se o login e a senha do administrador esta correto.<br />
Se estiver correto vai para a pagina "principal.php" se não volta para "login.php".<br />
<br />
<?<br />
session_start();<br />
$login = $_POST['login'];<br />
$senha = $_POST['senha'];<br />
if ( ( $login == "LOGIN-DO-ADMIN" ) && ( $senha == "SENHA-DO-ADMIN" ) ){<br />
$_SESSION['autorizado'] = $login;<br />
Header ("Location: principal.php");<br />
}else{<br />
Header ("Location: login.php");<br />
}<br />
?><br />
<br />
- Edição do Arquivo '''sair.php''':<br />
<br />
Esta pagina PHP faz o administrador "deslogar" ("logoff") e depois volta para pagina "login.php"<br />
<br />
<?<br />
session_start();<br />
session_destroy();<br />
Header ("Location: login.php");<br />
?><br />
<br />
- Edição do arquivo '''principal.php''': <br />
<br />
Esta é a principal pagina PHP do site, nela verificamos os clientes criados e armazenados no banco de dados, redirecionamos para pagina que modifica os dominios (alterar.php), redirecionamos para pagina que remover os dominios (excluir.php)e tambem redirecionamos para a pagina que adiciona os dominios (adicionar.php).<br />
Quando é redirecionado para pagina de modificação e remoção tambem é enviado uma variavel com o dominio do cliente para saber qual usuario deve ser modificado ou alterado.<br />
<.?<br />
.session_start();<br />
.if (!isset($_SESSION['autorizado'])){<br />
.header ("Location: login.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Administrcao de Dominios</title><br />
<./head><br />
<.body><br />
<.p><a href="sair.php">Sair</a></p><br />
<.p></p><br />
<.p style="text-align:center;margin-left:auto;margin-right:auto;">Cliente Dominio Acao </p><br />
<br />
<.?<br />
$conexao = mysql_connect("localhost","www-data","SENHA-DO-ADMIN");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$consulta = "SELECT * from clientes";<br />
$resultado = mysql_query($consulta,$conexao);<br />
while($linha = mysql_fetch_array($resultado)){<br />
$cliente = $linha['cliente'];<br />
$dominio = $linha['dominio'];<br />
.?><br />
<.form><br />
<.p style="text-align:center;margin-left:auto;margin-right:auto;"><br />
<.a name="cliente" id="cliente" href="alterar.php?id=<? echo $linha['dominio'];?>"> <?echo $.linha['cliente'];?></a> <br />
<.? echo $linha['dominio'];?> <a href="excluir.php?id=<? echo $linha['dominio'];?>"> Excluir</a></p><br />
<./form><br />
<.?<br />
.}<br />
.mysql_free_result($resultado);<br />
.mysql_close($conexao);<br />
.}<br />
.?><br />
<.p style="text-align:right;margin-left:auto;margin-right:0;"><br />
<.a href="adicionar.php"><span style="color:#ff0000">Adicionar novo dominio</span></a></p><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''mod-dominio.php''':<br />
<br />
Esta pagina PHP recebe três variaveis com o dominio antigo do clinete, o novo dominio e o novo nome do cliente, estas variaveis são repassadas para o script "mod-dominio.sh" e este é executado modificando o dominio e o nome do cliente, depois de executar o script as informações do banco de dados tambem são modificadas e o serviço APACHE2 é reiniciado.<br />
Após todo este processamento a pagina é redirecionada para 'principal.php".<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$cliente = $_POST['cliente'];<br />
$dominio = $_POST['dominio'];<br />
$antigo = $_POST['antigo'];;<br />
if (empty($dominio)) {<br />
$dominio = "invalido";<br />
} <br />
<br />
if (preg_match('/^[a-z0-9]+/', $dominio)){<br />
}else{<br />
$dominio = "invalido";<br />
} <br />
<br />
$arquivo = '/etc/bind/named.conf';<br />
$linhas = array();<br />
exec("cat $arquivo",$linhas);<br />
for ($i = 0 ; $i < sizeof($linhas); $i++){<br />
if ($linhas[$i] == "include \"/etc/bind/$dominio.conf\";"){<br />
$dominio = "invalido";<br />
}<br />
}<br />
if ($dominio == "invalido"){<br />
header ("Location: alterar.php");<br />
}else{ <br />
<br />
$script = "sudo /etc/teletec/mod-dominio.sh $antigo '$cliente' $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
<br />
$conexao = mysql_connect("localhost","www-data","SENHA-DO-ADMIN");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$deletar = "DELETE FROM clientes WHERE dominio='$antigo.teletec.sj.ifsc.edu.br'";<br />
mysql_query($deletar,$conexao);<br />
mysql_close($conexao); <br />
<br />
$conexao = mysql_connect("localhost","www-data","SENHA-DO-ADMIN");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$inserir = "INSERT INTO clientes (cliente,dominio) VALUES ('$cliente','$dominio.teletec.sj.ifsc.edu.br')";<br />
mysql_query($inserir,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php"); <br />
<br />
}<br />
.}<br />
?.><br />
<br />
- Edição do Arquivo '''login.php''': <br />
<br />
Esta pagina PHP recolhe o login e a senha fornecidas pelo administrador atraves de um formulario e manda para a pagina PHP de processamento que verifica se esta correto.<br />
.<?<br />
.session_start();<br />
.if (isset($_SESSION['autorizado'])){<br />
.Header ("Location: principal.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Hospedagem Web</title><br />
<./head><br />
<br />
<.body><br />
<.p></p><br />
<.p>Sistemas de Hospedagem de Sitios Web</p><br />
<.p></p><br />
<.form name="formTeste" action="verificacao.php" method="post"><br />
<.p>Usu&#xe1;rio:<br><br />
<.input type="text" name="login"> <br />
<.p>Senha:<br> <br />
<.input type="password" name="senha"> <br />
<.input type="submit" name="b_enviar" value="Entrar"><br />
<./form><br />
<.p></p><br />
<.?<br />
}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''Index.php''':<br />
<br />
Esta pagina apenas redireciona para "login.php"<br />
<.?<br />
Header ("Location: login.php");<br />
.?><br />
<br />
- Edição do Arquivo '''excluir.php''':<br />
<br />
Esta pagina PHP faz uma verificação, se o administrador realmente querer excluir o dominio é mandado o dominio do clinete em uma variavel para a pagina PHP de processamento "del-dominio.php" e a pagina é redirecionada para la, mais se o usuario não quiser escluir é mandado novamente para p pagina "principal.php".<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){ <br />
header ("Location: login.php");<br />
}else{<br />
$id=$_GET['id'];<br />
$parte1 = explode(".", $id);<br />
$antigo = $parte1[0];<br />
?.><br />
<.html><br />
<head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Excluir o cliente</title><br />
<./head><br />
<.body><br />
<.p>Voce realmente deseja excluir o cliente?</p><br />
<br />
<.p><a href="del-dominio.php?id=<?echo $antigo;?>">Sim</a> <a<br />
.href="principal.php">Nao</a></p><br />
<.p></p><br />
<?<br />
}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''del-dominio.php''':<br />
<br />
Esta pagina PHP é uma pagina de processamento que recebe em uma variavel o nome do dominio que sera removido e transfere esta variavel para o script em bash "del-dominio.sh" ja executa o script, depois este dominio é removido do banco de dados e o serviço APACHE2 é reiniciado.<br />
Após todo o processamento a pagina é redirecionada para "principal.php".<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$dominio = $_GET['id'];<br />
$script = "/etc/teletec/del-dominio.sh $dominio";<br />
exec("$script");<br />
exec("sudo /etc/init.d/apache2 restart");<br />
$conexao = mysql_connect("localhost","www-data","SENHA-DO-ADMIN");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$deletar = "DELETE FROM clientes WHERE dominio='$dominio.teletec.sj.ifsc.edu.br'";<br />
mysql_query($deletar,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php");<br />
}<br />
?.><br />
<br />
- Edição do '''Arquivo alterar.php''': <br />
<br />
Nesta pagina PHP o administrador informa o novo nome do cliente e o novo dominio, estas informações são gravadas em uma variavel que será mandada para a pagina PHP que vai fazer todo o trabalho de processamento (mod-dominio.php).<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){ <br />
header ("Location: login.php");<br />
}else{<br />
$id=$_GET['id'];<br />
$parte1 = explode(".", $id);<br />
$antigo = $parte1[0];<br />
?.><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Alterar Dominio</title><br />
</.head><br />
<.body><br />
<.p><.a href="principal.php">Voltar </a></p><br />
<.form name="formTeste" action="mod-dominio.php" method="post"><br />
<.p>Novo nome do cliente: <br><br />
<.input type="text" name="cliente"><br />
<.p>Novo dominio: <br><br />
<.input type="text" name="dominio"><br />
<.input type="hidden" name="antigo" value="<?echo $antigo;?>"> <br />
<.input type="submit" name="b_enviar" value="Alterar"><br />
<./form><br />
<.?<br />
}<br />
?.><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''adicionar.php''':<br />
<br />
Esta pagina PHP recolhe duas variaveis atraves do formulrios, em uma esta o nome do clinete e na outra o dominio escolhido, estas variaveis são repassadas para a pagina de processamento que vai adicionar este novo subdominio (add-dominio.php).Depois ela é redirecionada para a pagina de processamento "add-dominio.php".<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Adicionar Cliente</title><br />
<./head><br />
<.body><br />
<.p><.a href="principal.php">Voltar </a></p><br />
<.form name="formTeste" action="add-dominio.php" method="post"><br />
<.p>Nome do cliente: <br><br />
<.input type="text" name="cliente"><br />
<.p>Dominio: <br><br />
<.input type="text" name="dominio"><br />
<.input type="submit" name="b_enviar" value="Criar"><br />
<./form><br />
<.?<br />
.}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''add-dominio.php''':<br />
<br />
Esta pagina PHP é uma pagina de processamento que recebe duas variaveis, na primeira esta o nome do dominio que sera removido e na segunda está o dominio do cliente, estas variaveis são transferidas para o script em bash "add-dominio.sh" que é executado, depois este dominio é adicionado no banco de dados e o serviço APACHE2 é reiniciado.<br />
Após todo o processamento a pagina é redirecionada para "principal.php".<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$cliente = $_POST['cliente'];<br />
$dominio = $_POST['dominio']; <br />
<br />
if (empty($dominio)) {<br />
$dominio = "invalido";<br />
} <br />
<br />
if (preg_match('/^[a-z0-9]+/', $dominio)){<br />
}else{<br />
$dominio = "invalido";<br />
} <br />
<br />
$arquivo = '/etc/bind/named.conf';<br />
$linhas = array();<br />
exec("cat $arquivo",$linhas);<br />
for ($i = 0 ; $i < sizeof($linhas); $i++){<br />
if ($linhas[$i] == "include \"/etc/bind/$dominio.conf\";"){<br />
$dominio = "invalido";<br />
}<br />
}<br />
if ($dominio == "invalido"){<br />
header ("Location: adicionar.php");<br />
}else{<br />
$script = "sudo /etc/teletec/add-dominio.sh '$cliente' $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
$conexao = mysql_connect("localhost","www-data","SENHA-DO-ADMIN");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$inserir = "INSERT INTO clientes (cliente,dominio) VALUES ('$cliente','$dominio.teletec.sj.ifsc.edu.br')";<br />
mysql_query($inserir,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php");<br />
}<br />
}<br />
?.><br />
<br />
'''# Programação BASH'''<br />
'''Os Arquivos .sh (scripts que adicionam, removem ou alteram os usuários no servidor) Encontram-se dentro da pasta: ''/etc/teletec''''' <br />
<br />
- Edição do Arquivo '''mod-dominio.sh''':<br />
Script em bash que altera o dominio do cliente (Subdominio, E-mail e Pagina WEB):<br />
<br />
O script de modificação na verdade exclui o dominio criado e cria um novo, os scripts de remover e adicionar estão juntos neste script.<br />
<br />
#!/bin/bash<br />
#Leonardo<br />
#echo -n "Dominio: "<br />
#read antigo<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$antigo'.conf";' ];then<br />
# valido=sim<br />
# break<br />
# else<br />
# valido=nao<br />
# fi<br />
#done<br />
#if [ $valido = nao ];then<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio não existe ou esta em branco.\n"<br />
# exit<br />
#fi<br />
#echo -n "Novo nome para o cliente: "<br />
#read nome<br />
#echo -n "Novo dominio: "<br />
#read dominio<br />
#echo=${dominio:=nulo}<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$dominio'.conf";' ];then<br />
# dominio=existe<br />
# break<br />
# fi<br />
#done<br />
#if [ $dominio != nulo ] && [ $dominio != existe ];then<br />
antigo=$1<br />
nome=$2<br />
dominio=$3<br />
sudo sed -i '/\/etc\/bind\/'$antigo'\.conf/Id' /etc/bind/named.conf<br />
sudo rm /etc/bind/$antigo.conf<br />
sudo rm /etc/bind/$antigo.zone<br />
sudo rm /etc/apache2/sites-enabled/$antigo-default<br />
sudo rm -r /var/www/$antigo<br />
sudo sed -i '/'$antigo'\.teletec\.sj\.ifsc\.edu\.br Subdominio-'$antigo'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$antigo'@teletec\.sj\.ifsc\.edu\.br '$antigo'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$antigo'\.teletec\.sj\.ifsc\.edu\.br OK/Id' /etc/postfix/mydomains <br />
sudo userdel -r $antigo <br />
<br />
sudo echo 'include "/etc/bind/'$dominio'.conf";' >> /etc/bind/named.conf<br />
numero=`date | cut -d ":" -f 3 | cut -d " " -f 1`<br />
novoserial=$((1000000000+$numero))<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.conf > /etc/bind/$dominio.conf<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.zone | sed s/2011061504/$novoserial/g > /etc/bind/$dominio.zone<br />
sudo /etc/init.d/bind9 restart<br />
sudo sed s/padrao/$dominio/g /etc/apache2/sites-available/padrao-default > /etc/apache2/sites-enabled/$dominio-default<br />
mkdir /var/www/$dominio<br />
sed s/dominio/$dominio/g /var/www/padrao/index.html | sed s/nome/"$nome"/g > /var/www/$dominio/index.html<br />
sudo echo ' ' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br Subdominio-'$dominio'' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'@teletec.sj.ifsc.edu.br '$dominio'' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br OK' >> /etc/postfix/mydomains<br />
sudo postmap /etc/postfix/virtual<br />
sudo postmap /etc/postfix/mydomains<br />
sudo /etc/init.d/postfix restart<br />
# echo -e " * Dominio modificado com sucesso!\t\t\t\t[ OK ]\n"<br />
# else<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio ja existe ou esta em branco.\n"<br />
#fi<br />
<br />
- Edição do Arquivo '''del-dominio.sh''':<br />
Script em bash que remove o cliente (Subdominio, E-mail e Pagina WEB):<br />
<br />
Exclui todos os arquivos de configuração criados para este cliente e retira as linhas de configuração adicionadas em arquivos como o "named.conf", "virtual" e "mydomains", por ultimo os serviçoes DNS e POSTFIX são reiniciados ( o APACHE2 é reiniciado na pagina PHP).Também é removido o usuario criado no servidor.<br />
<br />
#!/bin/bash<br />
#Leonardo<br />
#echo -n "Dominio: "<br />
#read dominio<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$dominio'.conf";' ];then<br />
dominio=$1<br />
sudo sed -i '/\/etc\/bind\/'$dominio'\.conf/Id' /etc/bind/named.conf<br />
sudo rm /etc/bind/$dominio.conf<br />
sudo rm /etc/bind/$dominio.zone<br />
sudo /etc/init.d/bind9 restart<br />
sudo rm /etc/apache2/sites-enabled/$dominio-default<br />
sudo rm -r /var/www/$dominio<br />
sudo userdel -r $dominio<br />
sudo sed -i '/'$dominio'\.teletec\.sj\.ifsc\.edu\.br Subdominio-'$dominio'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$dominio'@teletec\.sj\.ifsc\.edu\.br '$dominio'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$dominio'\.teletec\.sj\.ifsc\.edu\.br OK/Id' /etc/postfix/mydomains<br />
sudo postmap /etc/postfix/virtual<br />
sudo postmap /etc/postfix/mydomains<br />
sudo /etc/init.d/postfix restart<br />
# echo -e " * Dominio removido com sucesso!\t\t\t\t[ OK ]\n"<br />
# exit<br />
# fi<br />
#done<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio não existe ou esta em branco.\n"<br />
<br />
- Edição do Arquivo '''add-dominio.sh''': <br />
Script em bash que adiciona o cliente (Subdominio, E-mail e Pagina WEB):<br />
<br />
Sub-dominio: O script pega como base arquivos padrões ja criados e configurados ( padrao.conf e padrao.zone ), altera todas as palavras "padrao" destes arvivos pelo dominio escolhido pelo usuario e salva como "dominio-escolhido".zone e "dominio-escolhido".conf. Alem disso ele tambem inclui o caminho do arquivo de configuração ".conf" no "named.conf".<br />
<br />
Pagina-Web: Assim como no sub-dominio, o script troca as palavras "padrao" que estão em um arquivo padrao de configuração ( padrao-default) pelo dominio escolhido pelo cliente, criando um novo arquivo de configuração com nome "dominio-escolhido"-default. Tambem cria uma pagina web html padrao.<br />
<br />
E-mail: O script adiciona as linhas de configuração do e-mail do cliente nos arquivos "virtual" e "mydomains". Também é criado um usuario no servidor com login e senha igual ao dominio escolhido.<br />
<br />
Após fazer as confgurações o script reinicia o DNS e o POSTFIX. (o APACHE2 é reiniciado na pagina PHP).<br />
<br />
#!/bin/bash<br />
# Leonardo<br />
#echo -n "Nome do cliente: "<br />
#read nome<br />
#echo -n "Dominio: " <br />
#read dominio<br />
#echo=${dominio:=nulo}<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$dominio'.conf";' ];then<br />
# dominio=existe<br />
# break<br />
# fi <br />
#done<br />
#<br />
#if [ $dominio != nulo ] && [ $dominio != existe ];then<br />
nome=$1<br />
dominio=$2<br />
sudo echo 'include "/etc/bind/'$dominio'.conf";' >> /etc/bind/named.conf<br />
numero=`date | cut -d ":" -f 3 | cut -d " " -f 1`<br />
novoserial=$((1000000000+$numero))<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.conf > /etc/bind/$dominio.conf<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.zone | sed s/2011061504/$novoserial/g > /etc/bind/$dominio.zone<br />
sudo /etc/init.d/bind9 restart<br />
sudo sed s/padrao/$dominio/g /etc/apache2/sites-available/padrao-default > /etc/apache2/sites-enabled/$dominio-default<br />
sudo mkdir /var/www/$dominio<br />
sudo sed s/dominio/$dominio/g /var/www/padrao/index.html | sed s/nome/"$nome"/g > /var/www/$dominio/index.html<br />
sudo useradd -md /home/$dominio $dominio<br />
sudo usermod -p $(openssl passwd -1 $dominio) $dominio<br />
sudo echo ' ' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br Subdominio-'$dominio'' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'@teletec.sj.ifsc.edu.br '$dominio'' >> /etc/postfix/virtual <br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br OK' >> /etc/postfix/mydomains<br />
sudo postmap /etc/postfix/virtual<br />
sudo postmap /etc/postfix/mydomains<br />
sudo /etc/init.d/postfix restart<br />
# echo -e " * Dominio criado com sucesso!\t\t\t\t[ OK ]\n"<br />
# else<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio ja existe ou esta em branco.\n"<br />
#fi<br />
<br />
'''# Banco de dados'''<br />
<br />
Para o administrador conseguir os dados de "nome" e de "dominio" do cliente foi criado uma tabela no banco de dados, estas informações ficam visíveis na pagina "principal.php" e são usadas para remover ou modificar um cliente.<br />
<br />
[[Arquivo:tabela-teletec.jpg]]<br />
<br />
root@teletec: mysql -u root -p<br />
mysql> create database teletec;<br />
mysql> GRANT ALL PRIVILEGES on teletec.* to 'www-data'@'%' identified by 'SENHA-DO-ADMIN';<br />
mysql> quit<br />
root@teletec: mysql teletec -u www-data -p<br />
mysql> CREATE TABLE clientes (cliente VARCHAR(40), dominio VARCHAR(50));<br />
mysql> quit<br />
<br />
'''# Permissionamento'''<br />
<br />
Um usuário como o "www-data" não tem permissão para usar comandos como "service bind9 restart" ou para criar um arquivo de um diretorio de serviços como o "/etc/bind". Para os scripts em BASH e PHP funcionarem corretamente foi preciso dar permissão para o usuario "www-data" usar alguns comandos como "root", isto foi feito com a edição do arquivo "/etc/sudoers"<br />
<br />
- Edição do Arquivo '''/etc/sudoers''': Arquivo onde são especificados os usuários que poderão usar o sudo:<br />
<br />
#<br />
# This file MUST be edited with the 'visudo' command as root.<br />
#<br />
# Please consider adding local content in /etc/sudoers.d/ instead of<br />
# directly modifying this file.<br />
#<br />
# See the man page for details on how to write a sudoers file.<br />
#<br />
Defaults env_reset<br />
<br />
# Host alias specification<br />
<br />
# User alias specification<br />
<br />
# Cmnd alias specification<br />
<br />
# User privilege specification<br />
root ALL=(ALL:ALL) ALL<br />
<br />
# Members of the admin group may gain root privileges<br />
%admin ALL=(ALL) ALL<br />
<br />
# Allow members of group sudo to execute any command<br />
%sudo ALL=(ALL:ALL) ALL<br />
<br />
#includedir /etc/sudoers.d<br />
www-data ALL=NOPASSWD:/usr/sbin/service, /sbin/restart, /usr/sbin/apache2, /usr/sbin/postfix, <br />
/etc/init.d/bind9, /bin/sed, /bin/echo, /bin/mkdir, /usr/sbin/postmap, /usr/bin/touch, /etc/teletec<br />
/add-dominio.sh, /etc/init.d/apache2, /etc/init.d/postfix, /bin/rm, /etc/teletec/mod-dominio.sh, <br />
/etc/teletec/del-dominio.sh, /usr/sbin/useradd, /usr/sbin/usermod, /usr/sbin/userdel</div>Vagner.chttps://wiki.sj.ifsc.edu.br/index.php?title=Projeto_Integrador_-_2011.1_-_Teletec&diff=34958Projeto Integrador - 2011.1 - Teletec2011-07-12T18:26:20Z<p>Vagner.c: </p>
<hr />
<div>== * '''Equipe 2 : TELETEC''' ==<br />
<br />
----<br />
<br />
== INTEGRANTES TELETEC ==<br />
<br />
* '''Daniel Estefano'''; estefano.daniel@gmail.com <br />
* '''Denis Teixeira'''; denisteixeira3@gmail.com <br />
* '''Leonardo Oliveira P.'''; leonardo-op@live.com <br />
* '''Odair de Moraes'''; odairdmoraes@hotmail.com<br />
* '''Robson de Carvalho'''; rob_carvalho12@hotmail.com<br />
* '''Vagner Cordeiro.''' cordeirotelecom@gmail.com<br />
<br />
----<br />
<br />
== '''SOBRE A EMPRESA TELETEC - PROVEDORA DE ACESSO Á INTERNET:''' == <br />
<br />
Empresa especializada no ramo das Telecomunicações Oferece os seguintes serviços: <br />
<br />
# Conta de Usuário para cada cliente;<br />
# Conta de E-mail para cada cliente;<br />
# Uma página Web Padrão;<br />
# Instalação do Modem ADSL e do Cabeamento Estrurado;<br />
# Acesso Wirelles;<br />
# Suporte 24Horas. <br />
<br />
Contamos com 6 Técnicos em Telecomunicações especialistas no setor de redes para todo o suporte necessário.<br />
Contate um de nossos especialistas através do e-mail teletecifsc.googlegroups.com e faça já seu orçamento.<br />
<br />
== Etapas Iniciais de Configurações da Rede ==<br />
<br />
<br />
# Instalação do Sistema Operacional:Ubuntu-Server;<br />
# Definido Sistema de Arquivo, Dividido em 3 Partições: ''1 Partição Primátia, 1 Partição Secundária e uma Partição para Swap;'' <br />
# Definido nome do Domínio: teletec.sj.ifsc.edu.br;<br />
# Criado um Usuário: Tecnico;<br />
# Acesso via SSH ao Servidor Teletec.<br />
<br />
----<br />
<br />
== Gerencia de Redes: Apache, Postfix e DNS ==<br />
<br />
'''Configurações do servidor DNS:''' <br />
<br />
- Edição do Arquivo para IP Estático: '''/etc/network/interfaces''' <br />
<br />
# This file describes the network interfaces available on your system<br />
# and how to activate them. For more information, see interfaces(5).<br />
# The loopback network interface<br />
auto lo<br />
iface lo inet loopback<br />
# The primary network interface<br />
auto eth0<br />
iface eth0 inet static<br />
address 200.135.37.100<br />
netmask 255.255.255.192<br />
gateway 200.135.37.126 <br />
<br />
- Edição do Arquivo do servidor DNS '''/etc/bind/named.conf''' <br />
<br />
Indica todos os arquivos que irão fazer a configuração do DNS, incluindo os 3 principais defaults: ''named.conf.options, named.conf.local e o named.conf.default-zones''.<br />
<br />
// This is the primary configuration file for the BIND DNS server named.<br />
//<br />
// Please read /usr/share/doc/bind9/README.Debian.gz for information on the <br />
// structure of BIND configuration files in Debian, *BEFORE* you customize <br />
// this configuration file.<br />
//<br />
// If you are just adding zones, please do that in /etc/bind/named.conf.local<br />
include "/etc/bind/named.conf.options";<br />
include "/etc/bind/named.conf.local";<br />
include "/etc/bind/named.conf.default-zones";<br />
include "/etc/bind/robson.conf";<br />
<br />
- Edição do Arquivo de servidor DNS: named.conf.local '''/etc/bind/named.conf.local'''<br />
<br />
É um arquivo padrão do BIND onde foi configurado o o nosso dominino TELETEC.<br />
<br />
//<br />
// Do any local configuration here<br />
//<br />
<br />
// Consider adding the 1918 zones here, if they are not used in your<br />
// organization<br />
//include "/etc/bind/zones.rfc1918"8;<br />
zone "teletec.sj.ifsc.edu.br." IN {<br />
type master;<br />
file "/etc/bind/teletec.zone";<br />
allow-update { none; };<br />
};<br />
<br />
- Edição do Arquivo de DNS Reverso: '''/etc/bind/37.135.200.in-addr.arpa'''<br />
<br />
O DNS Reverso resolve um endereço IP para um nome de servidor – por exemplo, ele poderia resolver 200.176.3.142 para exemplo.hipotetico.com.br.<br />
<br />
$TTL 86400<br />
@ IN SOA www.teletec.sj.ifsc.edu.br. root (<br />
2011061500 ;<br />
1d ;<br />
1h ;<br />
1w ; <br />
1d ;<br />
)<br />
IN NS www.teletec.sj.ifsc.edu.br.<br />
100 IN PTR www.teletec.sj.ifsc.edu.br.<br />
<br />
- Edição do Arquivo para criar um subdomínio:'''/etc/bind/teletec.zone'''<br />
<br />
Arquivo que traz todas as configurações de cada subdomínio. <br />
<br />
$TTL 86400<br />
@ IN SOA teletec.teletec.sj.ifsc.edu.br root (<br />
2011062901;<br />
3H;<br />
15M;<br />
1W;<br />
1D );<br />
IN NS teletec.teletec.sj.ifsc.edu.br.<br />
IN MX 0 mail.teletec.sj.ifsc.edu.br.<br />
localhost IN A 127.0.0.1<br />
$ORIGIN teletec.sj.ifsc.edu.br.<br />
teletec A 200.135.37.100<br />
www A 200.135.37.100<br />
mail A 200.135.37.100<br />
<br />
- '''Configuração do servidor Apache'''<br />
<br />
No servidor Apache foi feito a instalação com o comando:<br />
<br />
apt-get install apache2<br />
<br />
- Configuração do arquivo '''/etc/apache2/sites-enabled/teletec-default'''<br />
<br />
<VirtualHost *:80><br />
ServerAdmin webmaster@localhost<br />
ServerName www.teletec.sj.ifsc.edu.br<br />
DocumentRoot /var/www/teletec<br />
<Directory /><br />
Options FollowSymLinks<br />
AllowOverride None<br />
</Directory><br />
<Directory /var/www/teletec><br />
Options Indexes FollowSymLinks MultiViews<br />
AllowOverride None<br />
Order allow,deny<br />
allow from all<br />
</Directory><br />
<br />
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/<br />
<Directory "/usr/lib/cgi-bin"><br />
AllowOverride None<br />
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch<br />
Order allow,deny<br />
Allow from all<br />
</Directory><br />
<br />
ErrorLog ${APACHE_LOG_DIR}/error.log<br />
<br />
# Possible values include: debug, info, notice, warn, error, crit,<br />
# alert, emerg.<br />
LogLevel warn<br />
<br />
CustomLog ${APACHE_LOG_DIR}/access.log combined<br />
<br />
Alias /doc/ "/usr/share/doc/"<br />
<Directory "/usr/share/doc/"><br />
Options Indexes MultiViews FollowSymLinks<br />
AllowOverride None<br />
Order deny,allow<br />
Deny from all<br />
Allow from 127.0.0.0/255.0.0.0 ::1/128<br />
</Directory><br />
<br />
</VirtualHost><br />
<br />
Na criação de um novo cliente vai ser criado um novo arquivo semelhante a esse com duas alterações nas linhas: '''ServerName www.teletec.sj.ifsc.edu.br''' onde vai ser acrescentado na frente do domínio o subdomínio do cliente exemplo: '''ServerName www.subdominio.teletec.sj.ifsc.edu.br''' e na linha '''DocumentRoot /var/www/teletec''' onde vai ser substituido '''teletec''' pelo nome do domínio do cliente por exemplo: '''DocumentRoot /var/www/cliente''' <br />
<br />
<br />
- '''Configuração do servidor POSTFIX'''<br />
<br />
- Primeiro foi feito a instalação com o comando:<br />
<br />
apt-get install postfix<br />
<br />
Em seguida o programa de instalação vai fazer algumas perguntas sobre a localização dos arquivos e alguns parâmetros<br />
<br />
- Configuração do arquivo '''/etc/postfix/main.cf''':<br />
<br />
<br />
# See /usr/share/postfix/main.cf.dist for a commented, more complete version<br />
<br />
<br />
# Debian specific: Specifying a file name will cause the first<br />
# line of that file to be used as the name. The Debian default<br />
# is /etc/mailname.<br />
#myorigin = /etc/mailname<br />
<br />
smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu)<br />
biff = no<br />
<br />
# appending .domain is the MUA's job.<br />
append_dot_mydomain = no<br />
<br />
# Uncomment the next line to generate "delayed mail" warnings<br />
#delay_warning_time = 4h<br />
<br />
readme_directory = no<br />
<br />
# TLS parameters<br />
smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem<br />
smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key<br />
smtpd_use_tls=yes<br />
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache<br />
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache<br />
<br />
# See /usr/share/doc/postfix/TLS_README.gz in the postfix-doc package for<br />
# information on enabling SSL in the smtp client.<br />
<br />
myhostname = mail.teletec.sj.ifsc.edu.br<br />
virtual_alias_maps = hash:/etc/postfix/virtual<br />
alias_database = hash:/etc/aliases<br />
myorigin = $myhostname<br />
mydestination = $myhostname, /etc/postfix/mydomains<br />
relayhost = <br />
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128<br />
mailbox_size_limit = 0<br />
recipient_delimiter = +<br />
inet_interfaces = all<br />
mydomain = teletec.sj.ifsc.edu.br<br />
mynetworks_style = subnet<br />
virtual_alias_domains = hash:/etc/postfix/mydomains<br />
<br />
<br />
<br />
- Foi criado o arquivo '''/etc/postfix/virtual'''<br />
<br />
Toda vez que for criado uma nova conta de e-mail vai ser acresentado duas linhas novas nesse arquivo como as que estão em negrito no arquivo abaixo so que onde tem a palavra padrao vai ser substituida pele nome do cliente<br />
<br />
teletec.sj.ifsc.edu.br Principal<br />
tecnico@teletec.sj.ifsc.edu.br tecnico<br />
<br />
robson.teletec.sj.ifsc.edu.br Subdominio1<br />
robson@robson.teletec.sj.ifsc.edu.br robson<br />
<br />
'''padrao.teletec.sj.ifsc.edu.br padrao'''<br />
'''user@padrao.teletec.sj.ifsc.edu.br user'''<br />
<br />
<br />
- Editar o arquivo mydomains '''/etc/postfix/mydomains'''<br />
<br />
Nesse arquivo tem como primeira linha o dominio e na seguinte o subdominio e toda vez que for criado uma conta nova vai ser acresentado uma linha nova com o nome do subdominio do cliente.<br />
<br />
teletec.sj.ifsc.edu.br OK<br />
robson.teletec.sj.ifsc.edu.br OK<br />
<br />
- Executar os comandos para releitura e reinicialização do Postfix:<br />
<br />
postmap /etc/postfix/virtual<br />
postmap /etc/postfix/mydomains<br />
service postfix restart<br />
<br />
== Instalação de Equipamento de Redes (Modem, Switch e Roteadores) ==<br />
<br />
'''Configurações:'''<br />
<br />
Instalação:<br />
<br />
minicom -s<br />
<br />
Configuração do Roteador Cisco 1700: <br />
<br />
* Configuração dos Dois Roteadores Utilizando a ferramenta "Minicon" (Se fosse Windows seria Hyperterminal)<br />
* Configuração dos dispositivos: Serial e Ethernet<br />
* Configuração como Protocolo PPP<br />
<br />
- ''"Configuração da porta serial":''<br />
<br />
┌─────────────[configuração]──────────────┐<br />
│ Nomes de arquivos e rotas<br />
│ Protocolos de transferência de arquivos<br />
│ Configuração da porta serial<br />
│ Modem e discagem<br />
│ Tela e teclado<br />
│ Salvar configuração como dfl<br />
│ Salvar configuração como<br />
│ Sair<br />
│ Sair do Minicom<br />
└────────────────────────────────────────┘<br />
<br />
- ''"Alteração da Porta Serial"''<br />
┌──────────────────────────────────────────────────────────┐<br />
│ A – Dispositivo Serial : /dev/ttSy0 <br />
│ B – Localização do Arquivo de Travamento : /var/lock<br />
│ C – Programa de Entrada :<br />
│ D – Programa de Saída :<br />
│ E – Bps/Paridade/Bits : 9600 8N1 <br />
│ F – Controle de Fluxo por Hardware : Não<br />
│ G – Controle de Fluxo por Software : Não<br />
│<br />
│ Alterar qual configuração?<br />
└──────────────────────────────────────────────────────────┘<br />
<br />
- ''"Salvar configuração com dfl"''<br />
<br />
- ''Configurando a Interface Serial do Roteador:''<br />
<br />
enable;<br />
configure terminal;<br />
<br />
#Para configurar a interface serial:<br />
interface serial 0;<br />
ip address 10.0.0.1/30;<br />
encapsulation ppp;<br />
exit;<br />
<br />
#Para configurar a interface ethernet:<br />
interface fastethernet 0;<br />
ip address 172.18.0.1/24;<br />
exit;<br />
exit;<br />
<br />
#Para salvar as configurações:<br />
wr;<br />
<br />
'''Radius'''<br />
<br />
Para ter acesso a rede aDSL ou pela rede sem fio será usado Radius para que os usuários sejam autenticados. O RADIUS é um sistema utilizado para prover uma autenticação centralizada em redes dial-up, VPN's (Virtual Private Network) e redes sem fio. Ele tem um modelo cliente-servidor, onde o cliente é o Network Access Server (NAS). Esse servidor é responsável por obter a informação sobre o cliente e repassá-la para o servidor RADIUS, além de interpretar a resposta, dando ou não acesso ao cliente. O servidor RADIUS é responsável por receber pedidos de conexão, autenticar o usuário e repassar ao NAS as informações necessárias para esse dar acesso ao usuário na rede. <br />
<br />
'''Arquivos configurados:''' <br />
<br />
Configurar login e senha para o cliente Radius ( /etc/freeradius<br />
/users ):<br />
<br />
“Usúario” Cleartext-Password := "senha"<br />
“Usúario” User-Password := "senha"<br />
<br />
Teste antes se seu servidor Radius está autenticando usuáriosfaça o seguinte comando no AC PPPoE (que fica em Ac-server): <br />
<br />
radtest seu_usuario sua_senha IP_do_seu_servidor_Radius 1 segredo_do_seu_servidor_Radius<br />
<br />
Configurando o Servidor PPPoe (/etc/ppp/pppoe-servers-options): <br />
<br />
require-chap<br />
auth<br />
lcp-echo-interval 10<br />
lcp-echo-failure 2<br />
ms-dns IP do seu servidor DNS<br />
netmask 255.255.255.0<br />
noipdefault<br />
debug<br />
kdebug 4<br />
plugin radius.so<br />
plugin radattr.so<br />
radius-config-file /etc/radiusclient/teletec.conf<br />
mru 1492<br />
mtu 1492<br />
<br />
Configuração do Cliente Radius ( etc/radiusclient/teletec.conf ):<br />
<br />
auth_order radius<br />
login_tries 4<br />
login_timeout 60<br />
nologin /etc/nologin<br />
issue /etc/radiusclient/issue<br />
authserver 200.135.37.100<br />
acctserver 200.135.37.100<br />
servers /etc/radiusclient/servers<br />
dictionary /etc/radiusclient/dictionary<br />
login_radius /usr/sbin/login.radius<br />
seqfile /var/run/radius.seq<br />
mapfile /etc/radiusclient/port-id-map<br />
default_realm<br />
radius_timeout 10<br />
radius_retries 3<br />
login_local /bin/login<br />
<br />
Configurando o IP do Servidor Radius ( /etc/radiusclient/servers ):<br />
<br />
200.135.37.100 testing123<br />
<br />
Integrando Radius ao Banco de Dados<br />
<br />
Primeiro procedimento, instale o pacote. <br />
<br />
apt-get install freeradius-mysql<br />
Edite o arquivo de configuração do freeradius, e descomente a seguinte linha <br />
( /etc/freeradius/radiusd.conf ): <br />
<br />
$INCLUDE sql.conf<br />
<br />
Para entrar no MySQL execute o comando: <br />
<br />
mysql -u root -p <br />
<br />
Crie uma base de dados somente para o Radius e dê ao usuário Radius a devida permissão para acesso a esta base. No shell do MySQL, execute os comandos: <br />
<br />
CREATE DATABASE radius;<br />
GRANT ALL ON radius.* TO freerad@localhost IDENTIFIED BY "senha_do_usuário_freeradius";<br />
exit;<br />
<br />
Inserindo informações na base de dados: <br />
<br />
mysql -u “usuário” -p “senha do usuário radius” “database” < /etc/freeradius/sql/mysql/schema.sql<br />
mysql -u “usuário” -p “senha do usuário radius” “database” < /etc/freeradius/sql/mysql/nas.sql<br />
<br />
Editar o arquivo /etc/freeradius/sql.conf, colocando a senha do usuário Radius: <br />
<br />
passwrod = "senha do usuário radius"<br />
<br />
E descomente a linha do mesmo arquivo ( /etc/freeradius/sql.conf ) : <br />
<br />
readclients = yes<br />
<br />
Reinicie o FreeRadius: <br />
<br />
service freeradius restart<br />
<br />
[[Arquivo:diagrama-teletec.jpg]]<br />
<br />
== Cabeamento Estruturado ==<br />
<br />
Atividades Concluídas:<br />
<br />
- o A central telefônica ao DSLAM<br />
- o O DSLAM ao armário de telecom da equipe, através de uma linha telefone + DSL<br />
- o armário da equipe a uma área de trabalho. <br />
- O cabeamento permitiu a conexão do modem DSL no armário de telecom.<br />
- As tomadas da área de trabalho para conexão com Telefone e o Modem ADSL.<br />
<br />
== Programação para Redes de Computadores ==<br />
'''# Programação PHP e HTML'''<br />
'''Os Arquivos PHP (pagina Web) Encontram-se dentro da pasta: ''/var/www/teletec'''''<br />
<br />
[[Imagem:Paginas-php-teletec.jpg|850px]]<br />
<br />
- Edição do Arquivo '''Verificação.php''':<br />
<br />
Esta pagina PHP verifica se o login e a senha do administrador esta correto.<br />
Se estiver correto vai para a pagina "principal.php" se não volta para "login.php".<br />
<br />
<?<br />
session_start();<br />
$login = $_POST['login'];<br />
$senha = $_POST['senha'];<br />
if ( ( $login == "LOGIN-DO-ADMIN" ) && ( $senha == "SENHA-DO-ADMIN" ) ){<br />
$_SESSION['autorizado'] = $login;<br />
Header ("Location: principal.php");<br />
}else{<br />
Header ("Location: login.php");<br />
}<br />
?><br />
<br />
- Edição do Arquivo '''sair.php''':<br />
<br />
Esta pagina PHP faz o administrador "deslogar" ("logoff") e depois volta para pagina "login.php"<br />
<br />
<?<br />
session_start();<br />
session_destroy();<br />
Header ("Location: login.php");<br />
?><br />
<br />
- Edição do arquivo '''principal.php''': <br />
<br />
Esta é a principal pagina PHP do site, nela verificamos os clientes criados e armazenados no banco de dados, redirecionamos para pagina que modifica os dominios (alterar.php), redirecionamos para pagina que remover os dominios (excluir.php)e tambem redirecionamos para a pagina que adiciona os dominios (adicionar.php).<br />
Quando é redirecionado para pagina de modificação e remoção tambem é enviado uma variavel com o dominio do cliente para saber qual usuario deve ser modificado ou alterado.<br />
<.?<br />
.session_start();<br />
.if (!isset($_SESSION['autorizado'])){<br />
.header ("Location: login.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Administrcao de Dominios</title><br />
<./head><br />
<.body><br />
<.p><a href="sair.php">Sair</a></p><br />
<.p></p><br />
<.p style="text-align:center;margin-left:auto;margin-right:auto;">Cliente Dominio Acao </p><br />
<br />
<.?<br />
$conexao = mysql_connect("localhost","www-data","SENHA-DO-ADMIN");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$consulta = "SELECT * from clientes";<br />
$resultado = mysql_query($consulta,$conexao);<br />
while($linha = mysql_fetch_array($resultado)){<br />
$cliente = $linha['cliente'];<br />
$dominio = $linha['dominio'];<br />
.?><br />
<.form><br />
<.p style="text-align:center;margin-left:auto;margin-right:auto;"><br />
<.a name="cliente" id="cliente" href="alterar.php?id=<? echo $linha['dominio'];?>"> <?echo $.linha['cliente'];?></a> <br />
<.? echo $linha['dominio'];?> <a href="excluir.php?id=<? echo $linha['dominio'];?>"> Excluir</a></p><br />
<./form><br />
<.?<br />
.}<br />
.mysql_free_result($resultado);<br />
.mysql_close($conexao);<br />
.}<br />
.?><br />
<.p style="text-align:right;margin-left:auto;margin-right:0;"><br />
<.a href="adicionar.php"><span style="color:#ff0000">Adicionar novo dominio</span></a></p><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''mod-dominio.php''':<br />
<br />
Esta pagina PHP recebe três variaveis com o dominio antigo do clinete, o novo dominio e o novo nome do cliente, estas variaveis são repassadas para o script "mod-dominio.sh" e este é executado modificando o dominio e o nome do cliente, depois de executar o script as informações do banco de dados tambem são modificadas e o serviço APACHE2 é reiniciado.<br />
Após todo este processamento a pagina é redirecionada para 'principal.php".<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$cliente = $_POST['cliente'];<br />
$dominio = $_POST['dominio'];<br />
$antigo = $_POST['antigo'];;<br />
if (empty($dominio)) {<br />
$dominio = "invalido";<br />
} <br />
<br />
if (preg_match('/^[a-z0-9]+/', $dominio)){<br />
}else{<br />
$dominio = "invalido";<br />
} <br />
<br />
$arquivo = '/etc/bind/named.conf';<br />
$linhas = array();<br />
exec("cat $arquivo",$linhas);<br />
for ($i = 0 ; $i < sizeof($linhas); $i++){<br />
if ($linhas[$i] == "include \"/etc/bind/$dominio.conf\";"){<br />
$dominio = "invalido";<br />
}<br />
}<br />
if ($dominio == "invalido"){<br />
header ("Location: alterar.php");<br />
}else{ <br />
<br />
$script = "sudo /etc/teletec/mod-dominio.sh $antigo '$cliente' $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
<br />
$conexao = mysql_connect("localhost","www-data","SENHA-DO-ADMIN");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$deletar = "DELETE FROM clientes WHERE dominio='$antigo.teletec.sj.ifsc.edu.br'";<br />
mysql_query($deletar,$conexao);<br />
mysql_close($conexao); <br />
<br />
$conexao = mysql_connect("localhost","www-data","SENHA-DO-ADMIN");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$inserir = "INSERT INTO clientes (cliente,dominio) VALUES ('$cliente','$dominio.teletec.sj.ifsc.edu.br')";<br />
mysql_query($inserir,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php"); <br />
<br />
}<br />
.}<br />
?.><br />
<br />
- Edição do Arquivo '''login.php''': <br />
<br />
Esta pagina PHP recolhe o login e a senha fornecidas pelo administrador atraves de um formulario e manda para a pagina PHP de processamento que verifica se esta correto.<br />
.<?<br />
.session_start();<br />
.if (isset($_SESSION['autorizado'])){<br />
.Header ("Location: principal.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Hospedagem Web</title><br />
<./head><br />
<br />
<.body><br />
<.p></p><br />
<.p>Sistemas de Hospedagem de Sitios Web</p><br />
<.p></p><br />
<.form name="formTeste" action="verificacao.php" method="post"><br />
<.p>Usu&#xe1;rio:<br><br />
<.input type="text" name="login"> <br />
<.p>Senha:<br> <br />
<.input type="password" name="senha"> <br />
<.input type="submit" name="b_enviar" value="Entrar"><br />
<./form><br />
<.p></p><br />
<.?<br />
}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''Index.php''':<br />
<br />
Esta pagina apenas redireciona para "login.php"<br />
<.?<br />
Header ("Location: login.php");<br />
.?><br />
<br />
- Edição do Arquivo '''excluir.php''':<br />
<br />
Esta pagina PHP faz uma verificação, se o administrador realmente querer excluir o dominio é mandado o dominio do clinete em uma variavel para a pagina PHP de processamento "del-dominio.php" e a pagina é redirecionada para la, mais se o usuario não quiser escluir é mandado novamente para p pagina "principal.php".<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){ <br />
header ("Location: login.php");<br />
}else{<br />
$id=$_GET['id'];<br />
$parte1 = explode(".", $id);<br />
$antigo = $parte1[0];<br />
?.><br />
<.html><br />
<head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Excluir o cliente</title><br />
<./head><br />
<.body><br />
<.p>Voce realmente deseja excluir o cliente?</p><br />
<br />
<.p><a href="del-dominio.php?id=<?echo $antigo;?>">Sim</a> <a<br />
.href="principal.php">Nao</a></p><br />
<.p></p><br />
<?<br />
}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''del-dominio.php''':<br />
<br />
Esta pagina PHP é uma pagina de processamento que recebe em uma variavel o nome do dominio que sera removido e transfere esta variavel para o script em bash "del-dominio.sh" ja executa o script, depois este dominio é removido do banco de dados e o serviço APACHE2 é reiniciado.<br />
Após todo o processamento a pagina é redirecionada para "principal.php".<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$dominio = $_GET['id'];<br />
$script = "/etc/teletec/del-dominio.sh $dominio";<br />
exec("$script");<br />
exec("sudo /etc/init.d/apache2 restart");<br />
$conexao = mysql_connect("localhost","www-data","SENHA-DO-ADMIN");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$deletar = "DELETE FROM clientes WHERE dominio='$dominio.teletec.sj.ifsc.edu.br'";<br />
mysql_query($deletar,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php");<br />
}<br />
?.><br />
<br />
- Edição do '''Arquivo alterar.php''': <br />
<br />
Nesta pagina PHP o administrador informa o novo nome do cliente e o novo dominio, estas informações são gravadas em uma variavel que será mandada para a pagina PHP que vai fazer todo o trabalho de processamento (mod-dominio.php).<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){ <br />
header ("Location: login.php");<br />
}else{<br />
$id=$_GET['id'];<br />
$parte1 = explode(".", $id);<br />
$antigo = $parte1[0];<br />
?.><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Alterar Dominio</title><br />
</.head><br />
<.body><br />
<.p><.a href="principal.php">Voltar </a></p><br />
<.form name="formTeste" action="mod-dominio.php" method="post"><br />
<.p>Novo nome do cliente: <br><br />
<.input type="text" name="cliente"><br />
<.p>Novo dominio: <br><br />
<.input type="text" name="dominio"><br />
<.input type="hidden" name="antigo" value="<?echo $antigo;?>"> <br />
<.input type="submit" name="b_enviar" value="Alterar"><br />
<./form><br />
<.?<br />
}<br />
?.><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''adicionar.php''':<br />
<br />
Esta pagina PHP recolhe duas variaveis atraves do formulrios, em uma esta o nome do clinete e na outra o dominio escolhido, estas variaveis são repassadas para a pagina de processamento que vai adicionar este novo subdominio (add-dominio.php).Depois ela é redirecionada para a pagina de processamento "add-dominio.php".<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Adicionar Cliente</title><br />
<./head><br />
<.body><br />
<.p><.a href="principal.php">Voltar </a></p><br />
<.form name="formTeste" action="add-dominio.php" method="post"><br />
<.p>Nome do cliente: <br><br />
<.input type="text" name="cliente"><br />
<.p>Dominio: <br><br />
<.input type="text" name="dominio"><br />
<.input type="submit" name="b_enviar" value="Criar"><br />
<./form><br />
<.?<br />
.}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''add-dominio.php''':<br />
<br />
Esta pagina PHP é uma pagina de processamento que recebe duas variaveis, na primeira esta o nome do dominio que sera removido e na segunda está o dominio do cliente, estas variaveis são transferidas para o script em bash "add-dominio.sh" que é executado, depois este dominio é adicionado no banco de dados e o serviço APACHE2 é reiniciado.<br />
Após todo o processamento a pagina é redirecionada para "principal.php".<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$cliente = $_POST['cliente'];<br />
$dominio = $_POST['dominio']; <br />
<br />
if (empty($dominio)) {<br />
$dominio = "invalido";<br />
} <br />
<br />
if (preg_match('/^[a-z0-9]+/', $dominio)){<br />
}else{<br />
$dominio = "invalido";<br />
} <br />
<br />
$arquivo = '/etc/bind/named.conf';<br />
$linhas = array();<br />
exec("cat $arquivo",$linhas);<br />
for ($i = 0 ; $i < sizeof($linhas); $i++){<br />
if ($linhas[$i] == "include \"/etc/bind/$dominio.conf\";"){<br />
$dominio = "invalido";<br />
}<br />
}<br />
if ($dominio == "invalido"){<br />
header ("Location: adicionar.php");<br />
}else{<br />
$script = "sudo /etc/teletec/add-dominio.sh '$cliente' $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
$conexao = mysql_connect("localhost","www-data","SENHA-DO-ADMIN");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$inserir = "INSERT INTO clientes (cliente,dominio) VALUES ('$cliente','$dominio.teletec.sj.ifsc.edu.br')";<br />
mysql_query($inserir,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php");<br />
}<br />
}<br />
?.><br />
<br />
'''# Programação BASH'''<br />
'''Os Arquivos .sh (scripts que adicionam, removem ou alteram os usuários no servidor) Encontram-se dentro da pasta: ''/etc/teletec''''' <br />
<br />
- Edição do Arquivo '''mod-dominio.sh''':<br />
Script em bash que altera o dominio do cliente (Subdominio, E-mail e Pagina WEB):<br />
<br />
O script de modificação na verdade exclui o dominio criado e cria um novo, os scripts de remover e adicionar estão juntos neste script.<br />
<br />
#!/bin/bash<br />
#Leonardo<br />
#echo -n "Dominio: "<br />
#read antigo<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$antigo'.conf";' ];then<br />
# valido=sim<br />
# break<br />
# else<br />
# valido=nao<br />
# fi<br />
#done<br />
#if [ $valido = nao ];then<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio não existe ou esta em branco.\n"<br />
# exit<br />
#fi<br />
#echo -n "Novo nome para o cliente: "<br />
#read nome<br />
#echo -n "Novo dominio: "<br />
#read dominio<br />
#echo=${dominio:=nulo}<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$dominio'.conf";' ];then<br />
# dominio=existe<br />
# break<br />
# fi<br />
#done<br />
#if [ $dominio != nulo ] && [ $dominio != existe ];then<br />
antigo=$1<br />
nome=$2<br />
dominio=$3<br />
sudo sed -i '/\/etc\/bind\/'$antigo'\.conf/Id' /etc/bind/named.conf<br />
sudo rm /etc/bind/$antigo.conf<br />
sudo rm /etc/bind/$antigo.zone<br />
sudo rm /etc/apache2/sites-enabled/$antigo-default<br />
sudo rm -r /var/www/$antigo<br />
sudo sed -i '/'$antigo'\.teletec\.sj\.ifsc\.edu\.br Subdominio-'$antigo'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$antigo'@teletec\.sj\.ifsc\.edu\.br '$antigo'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$antigo'\.teletec\.sj\.ifsc\.edu\.br OK/Id' /etc/postfix/mydomains <br />
sudo userdel -r $antigo <br />
<br />
sudo echo 'include "/etc/bind/'$dominio'.conf";' >> /etc/bind/named.conf<br />
numero=`date | cut -d ":" -f 3 | cut -d " " -f 1`<br />
novoserial=$((1000000000+$numero))<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.conf > /etc/bind/$dominio.conf<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.zone | sed s/2011061504/$novoserial/g > /etc/bind/$dominio.zone<br />
sudo /etc/init.d/bind9 restart<br />
sudo sed s/padrao/$dominio/g /etc/apache2/sites-available/padrao-default > /etc/apache2/sites-enabled/$dominio-default<br />
mkdir /var/www/$dominio<br />
sed s/dominio/$dominio/g /var/www/padrao/index.html | sed s/nome/"$nome"/g > /var/www/$dominio/index.html<br />
sudo echo ' ' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br Subdominio-'$dominio'' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'@teletec.sj.ifsc.edu.br '$dominio'' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br OK' >> /etc/postfix/mydomains<br />
sudo postmap /etc/postfix/virtual<br />
sudo postmap /etc/postfix/mydomains<br />
sudo /etc/init.d/postfix restart<br />
# echo -e " * Dominio modificado com sucesso!\t\t\t\t[ OK ]\n"<br />
# else<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio ja existe ou esta em branco.\n"<br />
#fi<br />
<br />
- Edição do Arquivo '''del-dominio.sh''':<br />
Script em bash que remove o cliente (Subdominio, E-mail e Pagina WEB):<br />
<br />
Exclui todos os arquivos de configuração criados para este cliente e retira as linhas de configuração adicionadas em arquivos como o "named.conf", "virtual" e "mydomains", por ultimo os serviçoes DNS e POSTFIX são reiniciados ( o APACHE2 é reiniciado na pagina PHP).Também é removido o usuario criado no servidor.<br />
<br />
#!/bin/bash<br />
#Leonardo<br />
#echo -n "Dominio: "<br />
#read dominio<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$dominio'.conf";' ];then<br />
dominio=$1<br />
sudo sed -i '/\/etc\/bind\/'$dominio'\.conf/Id' /etc/bind/named.conf<br />
sudo rm /etc/bind/$dominio.conf<br />
sudo rm /etc/bind/$dominio.zone<br />
sudo /etc/init.d/bind9 restart<br />
sudo rm /etc/apache2/sites-enabled/$dominio-default<br />
sudo rm -r /var/www/$dominio<br />
sudo userdel -r $dominio<br />
sudo sed -i '/'$dominio'\.teletec\.sj\.ifsc\.edu\.br Subdominio-'$dominio'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$dominio'@teletec\.sj\.ifsc\.edu\.br '$dominio'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$dominio'\.teletec\.sj\.ifsc\.edu\.br OK/Id' /etc/postfix/mydomains<br />
sudo postmap /etc/postfix/virtual<br />
sudo postmap /etc/postfix/mydomains<br />
sudo /etc/init.d/postfix restart<br />
# echo -e " * Dominio removido com sucesso!\t\t\t\t[ OK ]\n"<br />
# exit<br />
# fi<br />
#done<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio não existe ou esta em branco.\n"<br />
<br />
- Edição do Arquivo '''add-dominio.sh''': <br />
Script em bash que adiciona o cliente (Subdominio, E-mail e Pagina WEB):<br />
<br />
Sub-dominio: O script pega como base arquivos padrões ja criados e configurados ( padrao.conf e padrao.zone ), altera todas as palavras "padrao" destes arvivos pelo dominio escolhido pelo usuario e salva como "dominio-escolhido".zone e "dominio-escolhido".conf. Alem disso ele tambem inclui o caminho do arquivo de configuração ".conf" no "named.conf".<br />
<br />
Pagina-Web: Assim como no sub-dominio, o script troca as palavras "padrao" que estão em um arquivo padrao de configuração ( padrao-default) pelo dominio escolhido pelo cliente, criando um novo arquivo de configuração com nome "dominio-escolhido"-default. Tambem cria uma pagina web html padrao.<br />
<br />
E-mail: O script adiciona as linhas de configuração do e-mail do cliente nos arquivos "virtual" e "mydomains". Também é criado um usuario no servidor com login e senha igual ao dominio escolhido.<br />
<br />
Após fazer as confgurações o script reinicia o DNS e o POSTFIX. (o APACHE2 é reiniciado na pagina PHP).<br />
<br />
#!/bin/bash<br />
# Leonardo<br />
#echo -n "Nome do cliente: "<br />
#read nome<br />
#echo -n "Dominio: " <br />
#read dominio<br />
#echo=${dominio:=nulo}<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$dominio'.conf";' ];then<br />
# dominio=existe<br />
# break<br />
# fi <br />
#done<br />
#<br />
#if [ $dominio != nulo ] && [ $dominio != existe ];then<br />
nome=$1<br />
dominio=$2<br />
sudo echo 'include "/etc/bind/'$dominio'.conf";' >> /etc/bind/named.conf<br />
numero=`date | cut -d ":" -f 3 | cut -d " " -f 1`<br />
novoserial=$((1000000000+$numero))<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.conf > /etc/bind/$dominio.conf<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.zone | sed s/2011061504/$novoserial/g > /etc/bind/$dominio.zone<br />
sudo /etc/init.d/bind9 restart<br />
sudo sed s/padrao/$dominio/g /etc/apache2/sites-available/padrao-default > /etc/apache2/sites-enabled/$dominio-default<br />
sudo mkdir /var/www/$dominio<br />
sudo sed s/dominio/$dominio/g /var/www/padrao/index.html | sed s/nome/"$nome"/g > /var/www/$dominio/index.html<br />
sudo useradd -md /home/$dominio $dominio<br />
sudo usermod -p $(openssl passwd -1 $dominio) $dominio<br />
sudo echo ' ' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br Subdominio-'$dominio'' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'@teletec.sj.ifsc.edu.br '$dominio'' >> /etc/postfix/virtual <br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br OK' >> /etc/postfix/mydomains<br />
sudo postmap /etc/postfix/virtual<br />
sudo postmap /etc/postfix/mydomains<br />
sudo /etc/init.d/postfix restart<br />
# echo -e " * Dominio criado com sucesso!\t\t\t\t[ OK ]\n"<br />
# else<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio ja existe ou esta em branco.\n"<br />
#fi<br />
<br />
'''# Banco de dados'''<br />
<br />
Para o administrador conseguir os dados de "nome" e de "dominio" do cliente foi criado uma tabela no banco de dados, estas informações ficam visíveis na pagina "principal.php" e são usadas para remover ou modificar um cliente.<br />
<br />
[[Arquivo:tabela-teletec.jpg]]<br />
<br />
root@teletec: mysql -u root -p<br />
mysql> create database teletec;<br />
mysql> GRANT ALL PRIVILEGES on teletec.* to 'www-data'@'%' identified by 'SENHA-DO-ADMIN';<br />
mysql> quit<br />
root@teletec: mysql teletec -u www-data -p<br />
mysql> CREATE TABLE clientes (cliente VARCHAR(40), dominio VARCHAR(50));<br />
mysql> quit<br />
<br />
'''# Permissionamento'''<br />
<br />
Um usuário como o "www-data" não tem permissão para usar comandos como "service bind9 restart" ou para criar um arquivo de um diretorio de serviços como o "/etc/bind". Para os scripts em BASH e PHP funcionarem corretamente foi preciso dar permissão para o usuario "www-data" usar alguns comandos como "root", isto foi feito com a edição do arquivo "/etc/sudoers"<br />
<br />
- Edição do Arquivo '''/etc/sudoers''': Arquivo onde são especificados os usuários que poderão usar o sudo:<br />
<br />
#<br />
# This file MUST be edited with the 'visudo' command as root.<br />
#<br />
# Please consider adding local content in /etc/sudoers.d/ instead of<br />
# directly modifying this file.<br />
#<br />
# See the man page for details on how to write a sudoers file.<br />
#<br />
Defaults env_reset<br />
<br />
# Host alias specification<br />
<br />
# User alias specification<br />
<br />
# Cmnd alias specification<br />
<br />
# User privilege specification<br />
root ALL=(ALL:ALL) ALL<br />
<br />
# Members of the admin group may gain root privileges<br />
%admin ALL=(ALL) ALL<br />
<br />
# Allow members of group sudo to execute any command<br />
%sudo ALL=(ALL:ALL) ALL<br />
<br />
#includedir /etc/sudoers.d<br />
www-data ALL=NOPASSWD:/usr/sbin/service, /sbin/restart, /usr/sbin/apache2, /usr/sbin/postfix, <br />
/etc/init.d/bind9, /bin/sed, /bin/echo, /bin/mkdir, /usr/sbin/postmap, /usr/bin/touch, /etc/teletec<br />
/add-dominio.sh, /etc/init.d/apache2, /etc/init.d/postfix, /bin/rm, /etc/teletec/mod-dominio.sh, <br />
/etc/teletec/del-dominio.sh, /usr/sbin/useradd, /usr/sbin/usermod, /usr/sbin/userdel</div>Vagner.chttps://wiki.sj.ifsc.edu.br/index.php?title=Arquivo:Diagrama-teletec.jpg&diff=34957Arquivo:Diagrama-teletec.jpg2011-07-12T18:25:47Z<p>Vagner.c: </p>
<hr />
<div></div>Vagner.chttps://wiki.sj.ifsc.edu.br/index.php?title=Projeto_Integrador_-_2011.1_-_Teletec&diff=34854Projeto Integrador - 2011.1 - Teletec2011-07-11T04:45:53Z<p>Vagner.c: /* Gerencia de Redes: Apache, Postfix e DNS */</p>
<hr />
<div>== * '''Equipe 2 : TELETEC''' ==<br />
<br />
----<br />
<br />
== INTEGRANTES TELETEC ==<br />
<br />
* '''Daniel Estefano'''; estefano.daniel@gmail.com <br />
* '''Denis Teixeira'''; denisteixeira3@gmail.com <br />
* '''Leonardo Oliveira P.'''; leonardo-op@live.com <br />
* '''Odair de Moraes'''; odairdmoraes@hotmail.com<br />
* '''Robson de Carvalho'''; rob_carvalho12@hotmail.com<br />
* '''Vagner Cordeiro.''' cordeirotelecom@gmail.com<br />
<br />
----<br />
<br />
== '''SOBRE A EMPRESA TELETEC - PROVEDORA DE ACESSO Á INTERNET:''' == <br />
<br />
Empresa especializada no ramo das Telecomunicações Oferece os seguintes serviços: <br />
<br />
# Conta de Usuário para cada cliente;<br />
# Conta de E-mail para cada cliente;<br />
# Uma página Web Padrão;<br />
# Instalação do Modem ADSL e do Cabeamento Estrurado;<br />
# Acesso Wirelles;<br />
# Suporte 24Horas. <br />
<br />
Contamos com 6 Técnicos em Telecomunicações especialistas no setor de redes para todo o suporte necessário.<br />
Contate um de nossos especialistas através do e-mail teletecifsc.googlegroups.com e faça já seu orçamento.<br />
<br />
== Etapas Iniciais de Configurações da Rede ==<br />
<br />
<br />
# Instalação do Sistema Operacional:Ubuntu-Server;<br />
# Definido Sistema de Arquivo, Dividido em 3 Partições: ''1 Partição Primátia, 1 Partição Secundária e uma Partição para Swap;'' <br />
# Definido nome do Domínio: teletec.sj.ifsc.edu.br;<br />
# Criado um Usuário: Tecnico;<br />
# Acesso via SSH ao Servidor Teletec.<br />
<br />
----<br />
<br />
== Gerencia de Redes: Apache, Postfix e DNS ==<br />
<br />
'''Configurações do servidor DNS:''' <br />
<br />
- Edição do Arquivo para IP Estático: '''/etc/network/interfaces''' <br />
<br />
# This file describes the network interfaces available on your system<br />
# and how to activate them. For more information, see interfaces(5).<br />
# The loopback network interface<br />
auto lo<br />
iface lo inet loopback<br />
# The primary network interface<br />
auto eth0<br />
iface eth0 inet static<br />
address 200.135.37.100<br />
netmask 255.255.255.192<br />
gateway 200.135.37.126 <br />
<br />
- Edição do Arquivo do servidor DNS '''/etc/bind/named.conf''' <br />
<br />
Indica todos os arquivos que irão fazer a configuração do DNS, incluindo os 3 principais defaults: ''named.conf.options, named.conf.local e o named.conf.default-zones''.<br />
<br />
// This is the primary configuration file for the BIND DNS server named.<br />
//<br />
// Please read /usr/share/doc/bind9/README.Debian.gz for information on the <br />
// structure of BIND configuration files in Debian, *BEFORE* you customize <br />
// this configuration file.<br />
//<br />
// If you are just adding zones, please do that in /etc/bind/named.conf.local<br />
include "/etc/bind/named.conf.options";<br />
include "/etc/bind/named.conf.local";<br />
include "/etc/bind/named.conf.default-zones";<br />
include "/etc/bind/robson.conf";<br />
<br />
- Edição do Arquivo de servidor DNS: named.conf.local '''/etc/bind/named.conf.local'''<br />
<br />
É um arquivo padrão do BIND onde foi configurado o o nosso dominino TELETEC.<br />
<br />
//<br />
// Do any local configuration here<br />
//<br />
<br />
// Consider adding the 1918 zones here, if they are not used in your<br />
// organization<br />
//include "/etc/bind/zones.rfc1918"8;<br />
zone "teletec.sj.ifsc.edu.br." IN {<br />
type master;<br />
file "/etc/bind/teletec.zone";<br />
allow-update { none; };<br />
};<br />
<br />
- Edição do Arquivo de DNS Reverso: '''/etc/bind/37.135.200.in-addr.arpa'''<br />
<br />
O DNS Reverso resolve um endereço IP para um nome de servidor – por exemplo, ele poderia resolver 200.176.3.142 para exemplo.hipotetico.com.br.<br />
<br />
$TTL 86400<br />
@ IN SOA www.teletec.sj.ifsc.edu.br. root (<br />
2011061500 ;<br />
1d ;<br />
1h ;<br />
1w ; <br />
1d ;<br />
)<br />
IN NS www.teletec.sj.ifsc.edu.br.<br />
100 IN PTR www.teletec.sj.ifsc.edu.br.<br />
<br />
- Edição do Arquivo para criar um subdomínio:'''/etc/bind/teletec.zone'''<br />
<br />
Arquivo que traz todas as configurações de cada subdomínio. <br />
<br />
$TTL 86400<br />
@ IN SOA teletec.teletec.sj.ifsc.edu.br root (<br />
2011062901;<br />
3H;<br />
15M;<br />
1W;<br />
1D );<br />
IN NS teletec.teletec.sj.ifsc.edu.br.<br />
IN MX 0 mail.teletec.sj.ifsc.edu.br.<br />
localhost IN A 127.0.0.1<br />
$ORIGIN teletec.sj.ifsc.edu.br.<br />
teletec A 200.135.37.100<br />
www A 200.135.37.100<br />
mail A 200.135.37.100<br />
<br />
- '''Configuração do servidor Apache'''<br />
<br />
No servidor Apache foi feito a instalação com o comando:<br />
<br />
apt-get install apache2<br />
<br />
- Configuração do arquivo '''/etc/apache2/sites-enabled/teletec-default'''<br />
<br />
<VirtualHost *:80><br />
ServerAdmin webmaster@localhost<br />
ServerName www.teletec.sj.ifsc.edu.br<br />
DocumentRoot /var/www/teletec<br />
<Directory /><br />
Options FollowSymLinks<br />
AllowOverride None<br />
</Directory><br />
<Directory /var/www/teletec><br />
Options Indexes FollowSymLinks MultiViews<br />
AllowOverride None<br />
Order allow,deny<br />
allow from all<br />
</Directory><br />
<br />
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/<br />
<Directory "/usr/lib/cgi-bin"><br />
AllowOverride None<br />
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch<br />
Order allow,deny<br />
Allow from all<br />
</Directory><br />
<br />
ErrorLog ${APACHE_LOG_DIR}/error.log<br />
<br />
# Possible values include: debug, info, notice, warn, error, crit,<br />
# alert, emerg.<br />
LogLevel warn<br />
<br />
CustomLog ${APACHE_LOG_DIR}/access.log combined<br />
<br />
Alias /doc/ "/usr/share/doc/"<br />
<Directory "/usr/share/doc/"><br />
Options Indexes MultiViews FollowSymLinks<br />
AllowOverride None<br />
Order deny,allow<br />
Deny from all<br />
Allow from 127.0.0.0/255.0.0.0 ::1/128<br />
</Directory><br />
<br />
</VirtualHost><br />
<br />
Na criação de um novo cliente vai ser criado um novo arquivo semelhante a esse com duas alterações nas linhas: '''ServerName www.teletec.sj.ifsc.edu.br''' onde vai ser acrescentado na frente do domínio o subdomínio do cliente exemplo: '''ServerName www.subdominio.teletec.sj.ifsc.edu.br''' e na linha '''DocumentRoot /var/www/teletec''' onde vai ser substituido '''teletec''' pelo nome do domínio do cliente por exemplo: '''DocumentRoot /var/www/cliente''' <br />
<br />
<br />
- '''Configuração do servidor POSTFIX'''<br />
<br />
- Primeiro foi feito a instalação com o comando:<br />
<br />
apt-get install postfix<br />
<br />
Em seguida o programa de instalação vai fazer algumas perguntas sobre a localização dos arquivos e alguns parâmetros<br />
<br />
- Configuração do arquivo '''/etc/postfix/main.cf''':<br />
<br />
<br />
# See /usr/share/postfix/main.cf.dist for a commented, more complete version<br />
<br />
<br />
# Debian specific: Specifying a file name will cause the first<br />
# line of that file to be used as the name. The Debian default<br />
# is /etc/mailname.<br />
#myorigin = /etc/mailname<br />
<br />
smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu)<br />
biff = no<br />
<br />
# appending .domain is the MUA's job.<br />
append_dot_mydomain = no<br />
<br />
# Uncomment the next line to generate "delayed mail" warnings<br />
#delay_warning_time = 4h<br />
<br />
readme_directory = no<br />
<br />
# TLS parameters<br />
smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem<br />
smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key<br />
smtpd_use_tls=yes<br />
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache<br />
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache<br />
<br />
# See /usr/share/doc/postfix/TLS_README.gz in the postfix-doc package for<br />
# information on enabling SSL in the smtp client.<br />
<br />
myhostname = mail.teletec.sj.ifsc.edu.br<br />
virtual_alias_maps = hash:/etc/postfix/virtual<br />
alias_database = hash:/etc/aliases<br />
myorigin = $myhostname<br />
mydestination = $myhostname, /etc/postfix/mydomains<br />
relayhost = <br />
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128<br />
mailbox_size_limit = 0<br />
recipient_delimiter = +<br />
inet_interfaces = all<br />
mydomain = teletec.sj.ifsc.edu.br<br />
mynetworks_style = subnet<br />
virtual_alias_domains = hash:/etc/postfix/mydomains<br />
<br />
<br />
<br />
- Foi criado o arquivo '''/etc/postfix/virtual'''<br />
<br />
Toda vez que for criado uma nova conta de e-mail vai ser acresentado duas linhas novas nesse arquivo como as que estão em negrito no arquivo abaixo so que onde tem a palavra padrao vai ser substituida pele nome do cliente<br />
<br />
teletec.sj.ifsc.edu.br Principal<br />
tecnico@teletec.sj.ifsc.edu.br tecnico<br />
<br />
robson.teletec.sj.ifsc.edu.br Subdominio1<br />
robson@robson.teletec.sj.ifsc.edu.br robson<br />
<br />
'''padrao.teletec.sj.ifsc.edu.br padrao'''<br />
'''user@padrao.teletec.sj.ifsc.edu.br user'''<br />
<br />
<br />
- Editar o arquivo mydomains '''/etc/postfix/mydomains'''<br />
<br />
Nesse arquivo tem como primeira linha o dominio e na seguinte o subdominio e toda vez que for criado uma conta nova vai ser acresentado uma linha nova com o nome do subdominio do cliente.<br />
<br />
teletec.sj.ifsc.edu.br OK<br />
robson.teletec.sj.ifsc.edu.br OK<br />
<br />
- Executar os comandos para releitura e reinicialização do Postfix:<br />
<br />
postmap /etc/postfix/virtual<br />
postmap /etc/postfix/mydomains<br />
service postfix restart<br />
<br />
== Instalação de Equipamento de Redes (Modem, Switch e Roteadores) ==<br />
<br />
'''Configurações:'''<br />
<br />
Instalação:<br />
<br />
minicom -s<br />
<br />
Configuração do Roteador Cisco 1700: <br />
<br />
* Configuração dos Dois Roteadores Utilizando a ferramenta "Minicon" (Se fosse Windows seria Hyperterminal)<br />
* Configuração dos dispositivos: Serial e Ethernet<br />
* Configuração como Protocolo PPP<br />
<br />
- ''"Configuração da porta serial":''<br />
<br />
┌─────────────[configuração]──────────────┐<br />
│ Nomes de arquivos e rotas<br />
│ Protocolos de transferência de arquivos<br />
│ Configuração da porta serial<br />
│ Modem e discagem<br />
│ Tela e teclado<br />
│ Salvar configuração como dfl<br />
│ Salvar configuração como<br />
│ Sair<br />
│ Sair do Minicom<br />
└────────────────────────────────────────┘<br />
<br />
- ''"Alteração da Porta Serial"''<br />
┌──────────────────────────────────────────────────────────┐<br />
│ A – Dispositivo Serial : /dev/ttSy0 <br />
│ B – Localização do Arquivo de Travamento : /var/lock<br />
│ C – Programa de Entrada :<br />
│ D – Programa de Saída :<br />
│ E – Bps/Paridade/Bits : 9600 8N1 <br />
│ F – Controle de Fluxo por Hardware : Não<br />
│ G – Controle de Fluxo por Software : Não<br />
│<br />
│ Alterar qual configuração?<br />
└──────────────────────────────────────────────────────────┘<br />
<br />
- ''"Salvar configuração com dfl"''<br />
<br />
- ''Configurando a Interface Serial do Roteador:''<br />
<br />
enable;<br />
configure terminal;<br />
<br />
#Para configurar a interface serial:<br />
interface serial 0;<br />
ip address 10.0.0.1/30;<br />
encapsulation ppp;<br />
exit;<br />
<br />
#Para configurar a interface ethernet:<br />
interface fastethernet 0;<br />
ip address 172.18.0.1/24;<br />
exit;<br />
exit;<br />
<br />
#Para salvar as configurações:<br />
wr;<br />
<br />
'''Radius'''<br />
<br />
Para ter acesso a rede aDSL ou pela rede sem fio será usado Radius para que os usuários sejam autenticados. O RADIUS é um sistema utilizado para prover uma autenticação centralizada em redes dial-up, VPN's (Virtual Private Network) e redes sem fio. Ele tem um modelo cliente-servidor, onde o cliente é o Network Access Server (NAS). Esse servidor é responsável por obter a informação sobre o cliente e repassá-la para o servidor RADIUS, além de interpretar a resposta, dando ou não acesso ao cliente. O servidor RADIUS é responsável por receber pedidos de conexão, autenticar o usuário e repassar ao NAS as informações necessárias para esse dar acesso ao usuário na rede. <br />
<br />
'''Arquivos configurados:''' <br />
<br />
Configurar login e senha para o cliente Radius ( /etc/freeradius<br />
/users ):<br />
<br />
“Usúario” Cleartext-Password := "senha"<br />
“Usúario” User-Password := "senha"<br />
<br />
Teste antes se seu servidor Radius está autenticando usuáriosfaça o seguinte comando no AC PPPoE (que fica em Ac-server): <br />
<br />
radtest seu_usuario sua_senha IP_do_seu_servidor_Radius 1 segredo_do_seu_servidor_Radius<br />
<br />
Configurando o Servidor PPPoe (/etc/ppp/pppoe-servers-options): <br />
<br />
require-chap<br />
auth<br />
lcp-echo-interval 10<br />
lcp-echo-failure 2<br />
ms-dns IP do seu servidor DNS<br />
netmask 255.255.255.0<br />
noipdefault<br />
debug<br />
kdebug 4<br />
plugin radius.so<br />
plugin radattr.so<br />
radius-config-file /etc/radiusclient/teletec.conf<br />
mru 1492<br />
mtu 1492<br />
<br />
Configuração do Cliente Radius ( etc/radiusclient/teletec.conf ):<br />
<br />
auth_order radius<br />
login_tries 4<br />
login_timeout 60<br />
nologin /etc/nologin<br />
issue /etc/radiusclient/issue<br />
authserver 200.135.37.100<br />
acctserver 200.135.37.100<br />
servers /etc/radiusclient/servers<br />
dictionary /etc/radiusclient/dictionary<br />
login_radius /usr/sbin/login.radius<br />
seqfile /var/run/radius.seq<br />
mapfile /etc/radiusclient/port-id-map<br />
default_realm<br />
radius_timeout 10<br />
radius_retries 3<br />
login_local /bin/login<br />
<br />
Configurando o IP do Servidor Radius ( /etc/radiusclient/servers ):<br />
<br />
200.135.37.100 testing123<br />
<br />
Integrando Radius ao Banco de Dados<br />
<br />
Primeiro procedimento, instale o pacote. <br />
<br />
apt-get install freeradius-mysql<br />
Edite o arquivo de configuração do freeradius, e descomente a seguinte linha <br />
( /etc/freeradius/radiusd.conf ): <br />
<br />
$INCLUDE sql.conf<br />
<br />
Para entrar no MySQL execute o comando: <br />
<br />
mysql -u root -p <br />
<br />
Crie uma base de dados somente para o Radius e dê ao usuário Radius a devida permissão para acesso a esta base. No shell do MySQL, execute os comandos: <br />
<br />
CREATE DATABASE radius;<br />
GRANT ALL ON radius.* TO freerad@localhost IDENTIFIED BY "senha_do_usuário_freeradius";<br />
exit;<br />
<br />
Inserindo informações na base de dados: <br />
<br />
mysql -u “usuário” -p “senha do usuário radius” “database” < /etc/freeradius/sql/mysql/schema.sql<br />
mysql -u “usuário” -p “senha do usuário radius” “database” < /etc/freeradius/sql/mysql/nas.sql<br />
<br />
Editar o arquivo /etc/freeradius/sql.conf, colocando a senha do usuário Radius: <br />
<br />
passwrod = "senha do usuário radius"<br />
<br />
E descomente a linha do mesmo arquivo ( /etc/freeradius/sql.conf ) : <br />
<br />
readclients = yes<br />
<br />
Reinicie o FreeRadius: <br />
<br />
service freeradius restart<br />
<br />
== Cabeamento Estruturado ==<br />
<br />
Atividades Concluídas:<br />
<br />
- o A central telefônica ao DSLAM<br />
- o O DSLAM ao armário de telecom da equipe, através de uma linha telefone + DSL<br />
- o armário da equipe a uma área de trabalho. <br />
- O cabeamento permitiu a conexão do modem DSL no armário de telecom.<br />
- As tomadas da área de trabalho para conexão com Telefone e o Modem ADSL.<br />
<br />
== Programação para Redes de Computadores ==<br />
'''# Programação PHP e HTML'''<br />
'''Os Arquivos PHP (pagina Web) Encontram-se dentro da pasta: ''/var/www/teletec'''''<br />
<br />
- Edição do Arquivo '''Verificação.php''':<br />
<br />
Esta pagina PHP verifica se o login e a senha do administrador esta correto.<br />
Se estiver correto vai para a pagina "principal.php" se não volta para "login.php".<br />
<br />
<?<br />
session_start();<br />
$login = $_POST['login'];<br />
$senha = $_POST['senha'];<br />
if ( ( $login == "LOGIN-DO-ADMIN" ) && ( $senha == "SENHA-DO-ADMIN" ) ){<br />
$_SESSION['autorizado'] = $login;<br />
Header ("Location: principal.php");<br />
}else{<br />
Header ("Location: login.php");<br />
}<br />
?><br />
<br />
- Edição do Arquivo '''sair.php''':<br />
<br />
Esta pagina PHP faz o administrador "deslogar" ("logoff") e depois volta para pagina "login.php"<br />
<br />
<?<br />
session_start();<br />
session_destroy();<br />
Header ("Location: login.php");<br />
?><br />
<br />
- Edição do arquivo '''principal.php''': <br />
<br />
Esta é a principal pagina PHP do site, nela verificamos os clientes criados e armazenados no banco de dados, redirecionamos para pagina que modifica os dominios (alterar.php), redirecionamos para pagina que remover os dominios (excluir.php)e tambem redirecionamos para a pagina que adiciona os dominios (adicionar.php).<br />
Quando é redirecionado para pagina de modificação e remoção tambem é enviado uma variavel com o dominio do cliente para saber qual usuario deve ser modificado ou alterado.<br />
<.?<br />
.session_start();<br />
.if (!isset($_SESSION['autorizado'])){<br />
.header ("Location: login.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Administrcao de Dominios</title><br />
<./head><br />
<.body><br />
<.p><a href="sair.php">Sair</a></p><br />
<.p></p><br />
<.p style="text-align:center;margin-left:auto;margin-right:auto;">Cliente Dominio Acao </p><br />
<br />
<.?<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$consulta = "SELECT * from clientes";<br />
$resultado = mysql_query($consulta,$conexao);<br />
while($linha = mysql_fetch_array($resultado)){<br />
$cliente = $linha['cliente'];<br />
$dominio = $linha['dominio'];<br />
.?><br />
<.form><br />
<.p style="text-align:center;margin-left:auto;margin-right:auto;"><br />
<.a name="cliente" id="cliente" href="alterar.php?id=<? echo $linha['dominio'];?>"> <?echo $.linha['cliente'];?></a> <br />
<.? echo $linha['dominio'];?> <a href="excluir.php?id=<? echo $linha['dominio'];?>"> Excluir</a></p><br />
<./form><br />
<.?<br />
.}<br />
.mysql_free_result($resultado);<br />
.mysql_close($conexao);<br />
.}<br />
.?><br />
<.p style="text-align:right;margin-left:auto;margin-right:0;"><br />
<.a href="adicionar.php"><span style="color:#ff0000">Adicionar novo dominio</span></a></p><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''mod-dominio.php''':<br />
<br />
Esta pagina PHP recebe três variaveis com o dominio antigo do clinete, o novo dominio e o novo nome do cliente, estas variaveis são repassadas para o script "mod-dominio.sh" e este é executado modificando o dominio e o nome do cliente, depois de executar o script as informações do banco de dados tambem são modificadas e o serviço APACHE2 é reiniciado.<br />
Após todo este processamento a pagina é redirecionada para 'principal.php".<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$cliente = $_POST['cliente'];<br />
$dominio = $_POST['dominio'];<br />
$antigo = $_POST['antigo'];;<br />
if (empty($dominio)) {<br />
$dominio = "invalido";<br />
} <br />
<br />
if (preg_match('/^[a-z0-9]+/', $dominio)){<br />
}else{<br />
$dominio = "invalido";<br />
} <br />
<br />
$arquivo = '/etc/bind/named.conf';<br />
$linhas = array();<br />
exec("cat $arquivo",$linhas);<br />
for ($i = 0 ; $i < sizeof($linhas); $i++){<br />
if ($linhas[$i] == "include \"/etc/bind/$dominio.conf\";"){<br />
$dominio = "invalido";<br />
}<br />
}<br />
if ($dominio == "invalido"){<br />
header ("Location: alterar.php");<br />
}else{ <br />
<br />
$script = "sudo /etc/teletec/mod-dominio.sh $antigo '$cliente' $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$deletar = "DELETE FROM clientes WHERE dominio='$antigo.teletec.sj.ifsc.edu.br'";<br />
mysql_query($deletar,$conexao);<br />
mysql_close($conexao); <br />
<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$inserir = "INSERT INTO clientes (cliente,dominio) VALUES ('$cliente','$dominio.teletec.sj.ifsc.edu.br')";<br />
mysql_query($inserir,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php"); <br />
<br />
}<br />
.}<br />
?.><br />
<br />
- Edição do Arquivo '''login.php''': <br />
<br />
Esta pagina PHP recolhe o login e a senha fornecidas pelo administrador atraves de um formulario e manda para a pagina PHP de processamento que verifica se esta correto.<br />
.<?<br />
.session_start();<br />
.if (isset($_SESSION['autorizado'])){<br />
.Header ("Location: principal.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Hospedagem Web</title><br />
<./head><br />
<br />
<.body><br />
<.p></p><br />
<.p>Sistemas de Hospedagem de Sitios Web</p><br />
<.p></p><br />
<.form name="formTeste" action="verificacao.php" method="post"><br />
<.p>Usu&#xe1;rio:<br><br />
<.input type="text" name="login"> <br />
<.p>Senha:<br> <br />
<.input type="password" name="senha"> <br />
<.input type="submit" name="b_enviar" value="Entrar"><br />
<./form><br />
<.p></p><br />
<.?<br />
}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''Index.php''':<br />
<br />
Esta pagina apenas redireciona para "login.php"<br />
<.?<br />
Header ("Location: login.php");<br />
.?><br />
<br />
- Edição do Arquivo '''excluir.php''':<br />
<br />
Esta pagina PHP faz uma verificação, se o administrador realmente querer excluir o dominio é mandado o dominio do clinete em uma variavel para a pagina PHP de processamento "del-dominio.php" e a pagina é redirecionada para la, mais se o usuario não quiser escluir é mandado novamente para p pagina "principal.php".<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){ <br />
header ("Location: login.php");<br />
}else{<br />
$id=$_GET['id'];<br />
$parte1 = explode(".", $id);<br />
$antigo = $parte1[0];<br />
?.><br />
<.html><br />
<head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Excluir o cliente</title><br />
<./head><br />
<.body><br />
<.p>Voce realmente deseja excluir o cliente?</p><br />
<br />
<.p><a href="del-dominio.php?id=<?echo $antigo;?>">Sim</a> <a<br />
.href="principal.php">Nao</a></p><br />
<.p></p><br />
<?<br />
}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''del-dominio.php''':<br />
<br />
Esta pagina PHP é uma pagina de processamento que recebe em uma variavel o nome do dominio que sera removido e transfere esta variavel para o script em bash "del-dominio.sh" ja executa o script, depois este dominio é removido do banco de dados e o serviço APACHE2 é reiniciado.<br />
Após todo o processamento a pagina é redirecionada para "principal.php".<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$dominio = $_GET['id'];<br />
$script = "/etc/teletec/del-dominio.sh $dominio";<br />
exec("$script");<br />
exec("sudo /etc/init.d/apache2 restart");<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$deletar = "DELETE FROM clientes WHERE dominio='$dominio.teletec.sj.ifsc.edu.br'";<br />
mysql_query($deletar,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php");<br />
}<br />
?.><br />
<br />
- Edição do '''Arquivo alterar.php''': <br />
<br />
Nesta pagina PHP o administrador informa o novo nome do cliente e o novo dominio, estas informações são gravadas em uma variavel que será mandada para a pagina PHP que vai fazer todo o trabalho de processamento (mod-dominio.php).<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){ <br />
header ("Location: login.php");<br />
}else{<br />
$id=$_GET['id'];<br />
$parte1 = explode(".", $id);<br />
$antigo = $parte1[0];<br />
?.><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Alterar Dominio</title><br />
</.head><br />
<.body><br />
<.p><.a href="principal.php">Voltar </a></p><br />
<.form name="formTeste" action="mod-dominio.php" method="post"><br />
<.p>Novo nome do cliente: <br><br />
<.input type="text" name="cliente"><br />
<.p>Novo dominio: <br><br />
<.input type="text" name="dominio"><br />
<.input type="hidden" name="antigo" value="<?echo $antigo;?>"> <br />
<.input type="submit" name="b_enviar" value="Alterar"><br />
<./form><br />
<.?<br />
}<br />
?.><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''adicionar.php''':<br />
<br />
Esta pagina PHP recolhe duas variaveis atraves do formulrios, em uma esta o nome do clinete e na outra o dominio escolhido, estas variaveis são repassadas para a pagina de processamento que vai adicionar este novo subdominio (add-dominio.php).Depois ela é redirecionada para a pagina de processamento "add-dominio.php".<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Adicionar Cliente</title><br />
<./head><br />
<.body><br />
<.p><.a href="principal.php">Voltar </a></p><br />
<.form name="formTeste" action="add-dominio.php" method="post"><br />
<.p>Nome do cliente: <br><br />
<.input type="text" name="cliente"><br />
<.p>Dominio: <br><br />
<.input type="text" name="dominio"><br />
<.input type="submit" name="b_enviar" value="Criar"><br />
<./form><br />
<.?<br />
.}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''add-dominio.php''':<br />
<br />
Esta pagina PHP é uma pagina de processamento que recebe duas variaveis, na primeira esta o nome do dominio que sera removido e na segunda está o dominio do cliente, estas variaveis são transferidas para o script em bash "add-dominio.sh" que é executado, depois este dominio é adicionado no banco de dados e o serviço APACHE2 é reiniciado.<br />
Após todo o processamento a pagina é redirecionada para "principal.php".<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$cliente = $_POST['cliente'];<br />
$dominio = $_POST['dominio']; <br />
<br />
if (empty($dominio)) {<br />
$dominio = "invalido";<br />
} <br />
<br />
if (preg_match('/^[a-z0-9]+/', $dominio)){<br />
}else{<br />
$dominio = "invalido";<br />
} <br />
<br />
$arquivo = '/etc/bind/named.conf';<br />
$linhas = array();<br />
exec("cat $arquivo",$linhas);<br />
for ($i = 0 ; $i < sizeof($linhas); $i++){<br />
if ($linhas[$i] == "include \"/etc/bind/$dominio.conf\";"){<br />
$dominio = "invalido";<br />
}<br />
}<br />
if ($dominio == "invalido"){<br />
header ("Location: adicionar.php");<br />
}else{<br />
$script = "sudo /etc/teletec/add-dominio.sh '$cliente' $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$inserir = "INSERT INTO clientes (cliente,dominio) VALUES ('$cliente','$dominio.teletec.sj.ifsc.edu.br')";<br />
mysql_query($inserir,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php");<br />
}<br />
}<br />
?.><br />
<br />
'''# Programação BASH'''<br />
'''Os Arquivos .sh (scripts que adicionam, removem ou alteram os usuários no servidor) Encontram-se dentro da pasta: ''/etc/teletec''''' <br />
<br />
- Edição do Arquivo '''mod-dominio.sh''':<br />
Script em bash que altera o dominio do cliente (Subdominio, E-mail e Pagina WEB):<br />
<br />
O script de modificação na verdade exclui o dominio criado e cria um novo, os scripts de remover e adicionar estão juntos neste script.<br />
<br />
#!/bin/bash<br />
#Leonardo<br />
#echo -n "Dominio: "<br />
#read antigo<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$antigo'.conf";' ];then<br />
# valido=sim<br />
# break<br />
# else<br />
# valido=nao<br />
# fi<br />
#done<br />
#if [ $valido = nao ];then<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio não existe ou esta em branco.\n"<br />
# exit<br />
#fi<br />
#echo -n "Novo nome para o cliente: "<br />
#read nome<br />
#echo -n "Novo dominio: "<br />
#read dominio<br />
#echo=${dominio:=nulo}<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$dominio'.conf";' ];then<br />
# dominio=existe<br />
# break<br />
# fi<br />
#done<br />
#if [ $dominio != nulo ] && [ $dominio != existe ];then<br />
antigo=$1<br />
nome=$2<br />
dominio=$3<br />
sudo sed -i '/\/etc\/bind\/'$antigo'\.conf/Id' /etc/bind/named.conf<br />
sudo rm /etc/bind/$antigo.conf<br />
sudo rm /etc/bind/$antigo.zone<br />
sudo rm /etc/apache2/sites-enabled/$antigo-default<br />
sudo rm -r /var/www/$antigo<br />
sudo sed -i '/'$antigo'\.teletec\.sj\.ifsc\.edu\.br Subdominio-'$antigo'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$antigo'@teletec\.sj\.ifsc\.edu\.br '$antigo'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$antigo'\.teletec\.sj\.ifsc\.edu\.br OK/Id' /etc/postfix/mydomains <br />
sudo userdel -r $antigo <br />
<br />
sudo echo 'include "/etc/bind/'$dominio'.conf";' >> /etc/bind/named.conf<br />
numero=`date | cut -d ":" -f 3 | cut -d " " -f 1`<br />
novoserial=$((1000000000+$numero))<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.conf > /etc/bind/$dominio.conf<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.zone | sed s/2011061504/$novoserial/g > /etc/bind/$dominio.zone<br />
sudo /etc/init.d/bind9 restart<br />
sudo sed s/padrao/$dominio/g /etc/apache2/sites-available/padrao-default > /etc/apache2/sites-enabled/$dominio-default<br />
mkdir /var/www/$dominio<br />
sed s/dominio/$dominio/g /var/www/padrao/index.html | sed s/nome/"$nome"/g > /var/www/$dominio/index.html<br />
sudo echo ' ' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br Subdominio-'$dominio'' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'@teletec.sj.ifsc.edu.br '$dominio'' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br OK' >> /etc/postfix/mydomains<br />
sudo postmap /etc/postfix/virtual<br />
sudo postmap /etc/postfix/mydomains<br />
sudo /etc/init.d/postfix restart<br />
# echo -e " * Dominio modificado com sucesso!\t\t\t\t[ OK ]\n"<br />
# else<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio ja existe ou esta em branco.\n"<br />
#fi<br />
<br />
- Edição do Arquivo '''del-dominio.sh''':<br />
Script em bash que remove o cliente (Subdominio, E-mail e Pagina WEB):<br />
<br />
Exclui todos os arquivos de configuração criados para este cliente e retira as linhas de configuração adicionadas em arquivos como o "named.conf", "virtual" e "mydomains", por ultimo os serviçoes DNS e POSTFIX são reiniciados ( o APACHE2 é reiniciado na pagina PHP).Também é removido o usuario criado no servidor.<br />
<br />
#!/bin/bash<br />
#Leonardo<br />
#echo -n "Dominio: "<br />
#read dominio<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$dominio'.conf";' ];then<br />
dominio=$1<br />
sudo sed -i '/\/etc\/bind\/'$dominio'\.conf/Id' /etc/bind/named.conf<br />
sudo rm /etc/bind/$dominio.conf<br />
sudo rm /etc/bind/$dominio.zone<br />
sudo /etc/init.d/bind9 restart<br />
sudo rm /etc/apache2/sites-enabled/$dominio-default<br />
sudo rm -r /var/www/$dominio<br />
sudo userdel -r $dominio<br />
sudo sed -i '/'$dominio'\.teletec\.sj\.ifsc\.edu\.br Subdominio-'$dominio'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$dominio'@teletec\.sj\.ifsc\.edu\.br '$dominio'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$dominio'\.teletec\.sj\.ifsc\.edu\.br OK/Id' /etc/postfix/mydomains<br />
sudo postmap /etc/postfix/virtual<br />
sudo postmap /etc/postfix/mydomains<br />
sudo /etc/init.d/postfix restart<br />
# echo -e " * Dominio removido com sucesso!\t\t\t\t[ OK ]\n"<br />
# exit<br />
# fi<br />
#done<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio não existe ou esta em branco.\n"<br />
<br />
- Edição do Arquivo '''add-dominio.sh''': <br />
Script em bash que adiciona o cliente (Subdominio, E-mail e Pagina WEB):<br />
<br />
Sub-dominio: O script pega como base arquivos padrões ja criados e configurados ( padrao.conf e padrao.zone ), altera todas as palavras "padrao" destes arvivos pelo dominio escolhido pelo usuario e salva como "dominio-escolhido".zone e "dominio-escolhido".conf. Alem disso ele tambem inclui o caminho do arquivo de configuração ".conf" no "named.conf".<br />
<br />
Pagina-Web: Assim como no sub-dominio, o script troca as palavras "padrao" que estão em um arquivo padrao de configuração ( padrao-default) pelo dominio escolhido pelo cliente, criando um novo arquivo de configuração com nome "dominio-escolhido"-default. Tambem cria uma pagina web html padrao.<br />
<br />
E-mail: O script adiciona as linhas de configuração do e-mail do cliente nos arquivos "virtual" e "mydomains". Também é criado um usuario no servidor com login e senha igual ao dominio escolhido.<br />
<br />
Após fazer as confgurações o script reinicia o DNS e o POSTFIX. (o APACHE2 é reiniciado na pagina PHP).<br />
<br />
#!/bin/bash<br />
# Leonardo<br />
#echo -n "Nome do cliente: "<br />
#read nome<br />
#echo -n "Dominio: " <br />
#read dominio<br />
#echo=${dominio:=nulo}<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$dominio'.conf";' ];then<br />
# dominio=existe<br />
# break<br />
# fi <br />
#done<br />
#<br />
#if [ $dominio != nulo ] && [ $dominio != existe ];then<br />
nome=$1<br />
dominio=$2<br />
sudo echo 'include "/etc/bind/'$dominio'.conf";' >> /etc/bind/named.conf<br />
numero=`date | cut -d ":" -f 3 | cut -d " " -f 1`<br />
novoserial=$((1000000000+$numero))<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.conf > /etc/bind/$dominio.conf<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.zone | sed s/2011061504/$novoserial/g > /etc/bind/$dominio.zone<br />
sudo /etc/init.d/bind9 restart<br />
sudo sed s/padrao/$dominio/g /etc/apache2/sites-available/padrao-default > /etc/apache2/sites-enabled/$dominio-default<br />
sudo mkdir /var/www/$dominio<br />
sudo sed s/dominio/$dominio/g /var/www/padrao/index.html | sed s/nome/"$nome"/g > /var/www/$dominio/index.html<br />
sudo useradd -md /home/$dominio $dominio<br />
sudo usermod -p $(openssl passwd -1 $dominio) $dominio<br />
sudo echo ' ' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br Subdominio-'$dominio'' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'@teletec.sj.ifsc.edu.br '$dominio'' >> /etc/postfix/virtual <br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br OK' >> /etc/postfix/mydomains<br />
sudo postmap /etc/postfix/virtual<br />
sudo postmap /etc/postfix/mydomains<br />
sudo /etc/init.d/postfix restart<br />
# echo -e " * Dominio criado com sucesso!\t\t\t\t[ OK ]\n"<br />
# else<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio ja existe ou esta em branco.\n"<br />
#fi<br />
<br />
'''# Banco de dados'''<br />
<br />
Para o administrador conseguir os dados de "nome" e de "dominio" do cliente foi criado uma tabela no banco de dados, estas informações ficam visíveis na pagina "principal.php" e são usadas para remover ou modificar um cliente.<br />
<br />
root@teletec: mysql -u root -p<br />
mysql> create database teletec;<br />
mysql> GRANT ALL PRIVILEGES on teletec.* to 'www-data'@'%' identified by 'SENHA-DO-ADMIN';<br />
mysql> quit<br />
root@teletec: mysql teletec -u www-data -p<br />
mysql> CREATE TABLE clientes (cliente VARCHAR(40), dominio VARCHAR(50));<br />
mysql> quit<br />
<br />
'''# Permissionamento'''<br />
<br />
Um usuário como o "www-data" não tem permissão para usar comandos como "service bind9 restart" ou para criar um arquivo de um diretorio de serviços como o "/etc/bind". Para os scripts em BASH e PHP funcionarem corretamente foi preciso dar permissão para o usuario "www-data" usar alguns comandos como "root", isto foi feito com a edição do arquivo "/etc/sudoers"<br />
<br />
- Edição do Arquivo '''/etc/sudoers''': Arquivo onde são especificados os usuários que poderão usar o sudo:<br />
<br />
#<br />
# This file MUST be edited with the 'visudo' command as root.<br />
#<br />
# Please consider adding local content in /etc/sudoers.d/ instead of<br />
# directly modifying this file.<br />
#<br />
# See the man page for details on how to write a sudoers file.<br />
#<br />
Defaults env_reset<br />
<br />
# Host alias specification<br />
<br />
# User alias specification<br />
<br />
# Cmnd alias specification<br />
<br />
# User privilege specification<br />
root ALL=(ALL:ALL) ALL<br />
<br />
# Members of the admin group may gain root privileges<br />
%admin ALL=(ALL) ALL<br />
<br />
# Allow members of group sudo to execute any command<br />
%sudo ALL=(ALL:ALL) ALL<br />
<br />
#includedir /etc/sudoers.d<br />
www-data ALL=NOPASSWD:/usr/sbin/service, /sbin/restart, /usr/sbin/apache2, /usr/sbin/postfix, <br />
/etc/init.d/bind9, /bin/sed, /bin/echo, /bin/mkdir, /usr/sbin/postmap, /usr/bin/touch, /etc/teletec<br />
/add-dominio.sh, /etc/init.d/apache2, /etc/init.d/postfix, /bin/rm, /etc/teletec/mod-dominio.sh, <br />
/etc/teletec/del-dominio.sh, /usr/sbin/useradd, /usr/sbin/usermod, /usr/sbin/userdel</div>Vagner.chttps://wiki.sj.ifsc.edu.br/index.php?title=Projeto_Integrador_-_2011.1_-_Teletec&diff=34848Projeto Integrador - 2011.1 - Teletec2011-07-11T01:51:08Z<p>Vagner.c: /* Programação para Redes de Computadores */</p>
<hr />
<div>== * '''Equipe 2 : TELETEC''' ==<br />
<br />
----<br />
<br />
== INTEGRANTES TELETEC ==<br />
<br />
* '''Daniel Estefano'''; estefano.daniel@gmail.com <br />
* '''Denis Teixeira'''; denisteixeira3@gmail.com <br />
* '''Leonardo Oliveira P.'''; leonardo-op@live.com <br />
* '''Odair de Moraes'''; odairdmoraes@hotmail.com<br />
* '''Robson de Carvalho'''; rob_carvalho12@hotmail.com<br />
* '''Vagner Cordeiro.''' cordeirotelecom@gmail.com<br />
<br />
----<br />
<br />
== '''SOBRE A EMPRESA TELETEC - PROVEDORA DE ACESSO Á INTERNET:''' == <br />
<br />
Empresa especializada no ramo das Telecomunicações Oferece os seguintes serviços: <br />
<br />
# Conta de Usuário para cada cliente;<br />
# Conta de E-mail para cada cliente;<br />
# Uma página Web Padrão;<br />
# Instalação do Modem ADSL e do Cabeamento Estrurado;<br />
# Acesso Wirelles;<br />
# Suporte 24Horas. <br />
<br />
Contamos com 6 Técnicos em Telecomunicações especialistas no setor de redes para todo o suporte necessário.<br />
Contate um de nossos especialistas através do e-mail teletecifsc.googlegroups.com e faça já seu orçamento.<br />
<br />
== Etapas Iniciais de Configurações da Rede ==<br />
<br />
<br />
# Instalação do Sistema Operacional:Ubuntu-Server;<br />
# Definido Sistema de Arquivo, Dividido em 3 Partições: ''1 Partição Primátia, 1 Partição Secundária e uma Partição para Swap;'' <br />
# Definido nome do Domínio: teletec.sj.ifsc.edu.br;<br />
# Criado um Usuário: Tecnico;<br />
# Acesso via SSH ao Servidor Teletec.<br />
<br />
----<br />
<br />
== Gerencia de Redes: Apache, Postfix e DNS ==<br />
<br />
'''Configurações do servidor DNS:''' <br />
<br />
- Edição do Arquivo para IP Estático: '''/etc/network/interfaces''' <br />
<br />
# This file describes the network interfaces available on your system<br />
# and how to activate them. For more information, see interfaces(5).<br />
# The loopback network interface<br />
auto lo<br />
iface lo inet loopback<br />
# The primary network interface<br />
auto eth0<br />
iface eth0 inet static<br />
address 200.135.37.100<br />
netmask 255.255.255.192<br />
gateway 200.135.37.126 <br />
<br />
- Edição do Arquivo do servidor DNS '''/etc/bind/named.conf''' <br />
<br />
Indica todos os arquivos que vai fazer a configuração dele<br />
<br />
// This is the primary configuration file for the BIND DNS server named.<br />
//<br />
// Please read /usr/share/doc/bind9/README.Debian.gz for information on the <br />
// structure of BIND configuration files in Debian, *BEFORE* you customize <br />
// this configuration file.<br />
//<br />
// If you are just adding zones, please do that in /etc/bind/named.conf.local<br />
include "/etc/bind/named.conf.options";<br />
include "/etc/bind/named.conf.local";<br />
include "/etc/bind/named.conf.default-zones";<br />
include "/etc/bind/servidor.conf";<br />
include "/etc/bind/tecnico.conf";<br />
include "/etc/bind/daniel.conf";<br />
<br />
- Edição do Arquivo de servidor DNS: named.conf.local '''/etc/bind/named.conf.local'''<br />
É um arquivo padrão do BIND onde foi configurado o o nosso dominino TELETEC.<br />
<br />
//<br />
// Do any local configuration here<br />
//<br />
<br />
// Consider adding the 1918 zones here, if they are not used in your<br />
// organization<br />
//include "/etc/bind/zones.rfc1918"8;<br />
zone "teletec.sj.ifsc.edu.br." IN {<br />
type master;<br />
file "/etc/bind/teletec.zone";<br />
allow-update { none; };<br />
};<br />
<br />
- Edição do Arquivo de DNS Reverso: '''/etc/bind/37.135.200.in-addr.arpa'''<br />
O DNS Reverso resolve um endereço IP para um nome de servidor – por exemplo, ele poderia resolver 200.176.3.142 para exemplo.hipotetico.com.br.<br />
<br />
$TTL 86400<br />
@ IN SOA servidor.teletec.sj.ifsc.edu.br. root (<br />
2011061500 ;<br />
1d ;<br />
1h ;<br />
1w ; <br />
1d ;<br />
)<br />
IN NS servidor.teletec.sj.ifsc.edu.br.<br />
100 IN PTR servidor.teletec.sj.ifsc.edu.br.<br />
<br />
- Edição do Arquivo para criar um subdomínio:'''/etc/bind/teletec.zone'''<br />
Arquivo que traz todas as configurações de cada subdomínio. <br />
<br />
$TTL 86400<br />
@ IN SOA teletec.teletec.sj.ifsc.edu.br root (<br />
2011062901;<br />
3H;<br />
15M;<br />
1W;<br />
1D );<br />
IN NS teletec.teletec.sj.ifsc.edu.br.<br />
IN MX 0 mail.teletec.sj.ifsc.edu.br.<br />
localhost IN A 127.0.0.1<br />
$ORIGIN teletec.sj.ifsc.edu.br.<br />
teletec A 200.135.37.100<br />
www A 200.135.37.100<br />
mail A 200.135.37.100<br />
<br />
- '''Configuração do servidor Apache'''<br />
<br />
No servidor Apache foi feito a instalação com o comando:<br />
<br />
apt-get install apache2<br />
<br />
- Configuração do arquivo '''/etc/apache2/sites-enabled/teletec-default'''<br />
<br />
NameVirtualHost 200.135.37.100:80<br />
<VirtualHost 200.135.37.100:80><br />
ServerAdmin webmaster@localhost<br />
ServerName www.teletec.sj.ifsc.edu.br<br />
DocumentRoot /var/www/teletec<br />
<Directory /><br />
Options FollowSymLinks<br />
AllowOverride None<br />
</Directory><br />
<Directory /var/www/><br />
Options Indexes FollowSymLinks MultiViews<br />
AllowOverride None<br />
Order allow,deny<br />
allow from all<br />
</Directory><br />
<br />
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/<br />
<Directory "/usr/lib/cgi-bin"><br />
AllowOverride None<br />
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch<br />
Order allow,deny<br />
Allow from all<br />
</Directory><br />
<br />
ErrorLog ${APACHE_LOG_DIR}/error.log<br />
<br />
# Possible values include: debug, info, notice, warn, error, crit,<br />
# alert, emerg.<br />
LogLevel warn<br />
<br />
CustomLog ${APACHE_LOG_DIR}/access.log combined<br />
<br />
Alias /doc/ "/usr/share/doc/"<br />
<Directory "/usr/share/doc/"><br />
Options Indexes MultiViews FollowSymLinks<br />
AllowOverride None<br />
Order deny,allow<br />
Deny from all<br />
Allow from 127.0.0.0/255.0.0.0 ::1/128<br />
</Directory><br />
<br />
</VirtualHost><br />
<br />
Na criação de um novo cliente vai ser criado um novo arquivo semelhante a esse com duas alterações nas linhas: '''ServerName www.teletec.sj.ifsc.edu.br''' onde vai ser acrescentado na frente do domínio o subdomínio do cliente exemplo: '''ServerName www.subdominio.teletec.sj.ifsc.edu.br''' e na linha '''DocumentRoot /var/www/teletec''' onde vai ser substituido '''teletec''' pelo nome do domínio do cliente por exemplo: '''DocumentRoot /var/www/cliente''' <br />
<br />
<br />
- '''Configuração do servidor POSTFIX'''<br />
<br />
- Primeiro foi feito a instalação com o comando:<br />
<br />
apt-get install postfix<br />
<br />
Em seguida o programa de instalação vai fazer algumas perguntas sobre a localização dos arquivos e alguns parâmetros<br />
<br />
- Configuração do arquivo '''/etc/postfix/main.cf''':<br />
<br />
<br />
# See /usr/share/postfix/main.cf.dist for a commented, more complete version<br />
<br />
<br />
# Debian specific: Specifying a file name will cause the first<br />
# line of that file to be used as the name. The Debian default<br />
# is /etc/mailname.<br />
#myorigin = /etc/mailname<br />
<br />
smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu)<br />
biff = no<br />
<br />
# appending .domain is the MUA's job.<br />
append_dot_mydomain = no<br />
<br />
# Uncomment the next line to generate "delayed mail" warnings<br />
#delay_warning_time = 4h<br />
<br />
readme_directory = no<br />
<br />
# TLS parameters<br />
smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem<br />
smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key<br />
smtpd_use_tls=yes<br />
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache<br />
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache<br />
<br />
# See /usr/share/doc/postfix/TLS_README.gz in the postfix-doc package for<br />
# information on enabling SSL in the smtp client.<br />
<br />
myhostname = mail.teletec.sj.ifsc.edu.br<br />
virtual_alias_maps = hash:/etc/postfix/virtual<br />
alias_database = hash:/etc/aliases<br />
myorigin = $myhostname<br />
mydestination = $myhostname<br />
relayhost = <br />
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128<br />
mailbox_size_limit = 0<br />
recipient_delimiter = +<br />
inet_interfaces = all<br />
mydomain = teletec.sj.ifsc.edu.br<br />
mynetworks_style = subnet<br />
virtual_alias_domains = hash:/etc/postfix/mydomains<br />
<br />
<br />
<br />
- Foi criado o arquivo '''/etc/postfix/virtual'''<br />
<br />
Toda vez que for criado uma nova conta de e-mail vai ser acresentado duas linhas novas nesse arquivo como as que estão em negrito no arquivo abaixo so que onde tem a palavra padrao vai ser substituida pele nome do cliente<br />
<br />
teletec.sj.ifsc.edu.br Principal<br />
<br />
robson.teletec.sj.ifsc.edu.br Subdominio1<br />
robson@robson.teletec.sj.ifsc.edu.br robson<br />
<br />
'''padrao.teletec.sj.ifsc.edu.br padrao'''<br />
'''user@padrao.teletec.sj.ifsc.edu.br user'''<br />
<br />
<br />
- Editar o arquivo mydomains '''/etc/postfix/mydomains'''<br />
<br />
Nesse arquivo tem como primeira linha o dominio e na seguinte o subdominio e toda vez que for criado uma conta nova vai ser acresentado uma linha nova com o nome do subdominio do cliente.<br />
<br />
teletec.sj.ifsc.edu.br OK<br />
robson.teletec.sj.ifsc.edu.br OK<br />
<br />
- Executar os comandos para releitura e reinicialização do Postfix:<br />
<br />
postmap /etc/postfix/virtual<br />
postmap /etc/postfix/mydomains<br />
service postfix restart<br />
<br />
== Instalação de Equipamento de Redes (Modem, Switch e Roteadores) ==<br />
<br />
'''Configurações:'''<br />
<br />
Instalação:<br />
<br />
minicom -s<br />
<br />
Configuração do Roteador Cisco 1700: <br />
<br />
* Configuração dos Dois Roteadores Utilizando a ferramenta "Minicon" (Se fosse Windows seria Hyperterminal)<br />
* Configuração dos dispositivos: Serial e Ethernet<br />
* Configuração como Protocolo PPP<br />
<br />
- ''"Configuração da porta serial":''<br />
<br />
┌─────────────[configuração]──────────────┐<br />
│ Nomes de arquivos e rotas<br />
│ Protocolos de transferência de arquivos<br />
│ Configuração da porta serial<br />
│ Modem e discagem<br />
│ Tela e teclado<br />
│ Salvar configuração como dfl<br />
│ Salvar configuração como<br />
│ Sair<br />
│ Sair do Minicom<br />
└────────────────────────────────────────┘<br />
<br />
- ''"Alteração da Porta Serial"''<br />
┌──────────────────────────────────────────────────────────┐<br />
│ A – Dispositivo Serial : /dev/ttSy0 <br />
│ B – Localização do Arquivo de Travamento : /var/lock<br />
│ C – Programa de Entrada :<br />
│ D – Programa de Saída :<br />
│ E – Bps/Paridade/Bits : 9600 8N1 <br />
│ F – Controle de Fluxo por Hardware : Não<br />
│ G – Controle de Fluxo por Software : Não<br />
│<br />
│ Alterar qual configuração?<br />
└──────────────────────────────────────────────────────────┘<br />
<br />
- ''"Salvar configuração com dfl"''<br />
<br />
- ''Configurando a Interface Serial do Roteador:''<br />
<br />
enable;<br />
configure terminal;<br />
<br />
#Para configurar a interface serial:<br />
interface serial 0;<br />
ip address 10.0.0.1/30;<br />
encapsulation ppp;<br />
exit;<br />
<br />
#Para configurar a interface ethernet:<br />
interface fastethernet 0;<br />
ip address 172.18.0.1/24;<br />
exit;<br />
exit;<br />
<br />
#Para salvar as configurações:<br />
wr;<br />
<br />
'''Radius'''<br />
<br />
Para ter acesso a rede aDSL ou pela rede sem fio será usado Radius para que os usuários sejam autenticados. O RADIUS é um sistema utilizado para prover uma autenticação centralizada em redes dial-up, VPN's (Virtual Private Network) e redes sem fio. Ele tem um modelo cliente-servidor, onde o cliente é o Network Access Server (NAS). Esse servidor é responsável por obter a informação sobre o cliente e repassá-la para o servidor RADIUS, além de interpretar a resposta, dando ou não acesso ao cliente. O servidor RADIUS é responsável por receber pedidos de conexão, autenticar o usuário e repassar ao NAS as informações necessárias para esse dar acesso ao usuário na rede. <br />
<br />
'''Arquivos configurados:''' <br />
<br />
Configurar login e senha para o cliente Radius ( /etc/freeradius<br />
/users ):<br />
<br />
“Usúario” Cleartext-Password := "senha"<br />
“Usúario” User-Password := "senha"<br />
<br />
Teste antes se seu servidor Radius está autenticando usuáriosfaça o seguinte comando no AC PPPoE (que fica em Ac-server): <br />
<br />
radtest seu_usuario sua_senha IP_do_seu_servidor_Radius 1 segredo_do_seu_servidor_Radius<br />
<br />
Configurando o Servidor PPPoe (/etc/ppp/pppoe-servers-options): <br />
<br />
require-chap<br />
auth<br />
lcp-echo-interval 10<br />
lcp-echo-failure 2<br />
ms-dns IP do seu servidor DNS<br />
netmask 255.255.255.0<br />
noipdefault<br />
debug<br />
kdebug 4<br />
plugin radius.so<br />
plugin radattr.so<br />
radius-config-file /etc/radiusclient/teletec.conf<br />
mru 1492<br />
mtu 1492<br />
<br />
Configuração do Cliente Radius ( etc/radiusclient/teletec.conf ):<br />
<br />
auth_order radius<br />
login_tries 4<br />
login_timeout 60<br />
nologin /etc/nologin<br />
issue /etc/radiusclient/issue<br />
authserver 200.135.37.100<br />
acctserver 200.135.37.100<br />
servers /etc/radiusclient/servers<br />
dictionary /etc/radiusclient/dictionary<br />
login_radius /usr/sbin/login.radius<br />
seqfile /var/run/radius.seq<br />
mapfile /etc/radiusclient/port-id-map<br />
default_realm<br />
radius_timeout 10<br />
radius_retries 3<br />
login_local /bin/login<br />
<br />
Configurando o IP do Servidor Radius ( /etc/radiusclient/servers ):<br />
<br />
200.135.37.100 testing123<br />
<br />
Integrando Radius ao Banco de Dados<br />
<br />
Primeiro procedimento, instale o pacote. <br />
<br />
apt-get install freeradius-mysql<br />
Edite o arquivo de configuração do freeradius, e descomente a seguinte linha <br />
( /etc/freeradius/radiusd.conf ): <br />
<br />
$INCLUDE sql.conf<br />
<br />
Para entrar no MySQL execute o comando: <br />
<br />
mysql -u root -p <br />
<br />
Crie uma base de dados somente para o Radius e dê ao usuário Radius a devida permissão para acesso a esta base. No shell do MySQL, execute os comandos: <br />
<br />
CREATE DATABASE radius;<br />
GRANT ALL ON radius.* TO freerad@localhost IDENTIFIED BY "senha_do_usuário_freeradius";<br />
exit;<br />
<br />
Inserindo informações na base de dados: <br />
<br />
mysql -u “usuário” -p “senha do usuário radius” “database” < /etc/freeradius/sql/mysql/schema.sql<br />
mysql -u “usuário” -p “senha do usuário radius” “database” < /etc/freeradius/sql/mysql/nas.sql<br />
<br />
Editar o arquivo /etc/freeradius/sql.conf, colocando a senha do usuário Radius: <br />
<br />
passwrod = "senha do usuário radius"<br />
<br />
E descomente a linha do mesmo arquivo ( /etc/freeradius/sql.conf ) : <br />
<br />
readclients = yes<br />
<br />
Reinicie o FreeRadius: <br />
<br />
service freeradius restart<br />
<br />
== Cabeamento Estruturado ==<br />
<br />
Atividades Concluídas:<br />
<br />
- o A central telefônica ao DSLAM<br />
- o O DSLAM ao armário de telecom da equipe, através de uma linha telefone + DSL<br />
- o armário da equipe a uma área de trabalho. <br />
- O cabeamento permitiu a conexão do modem DSL no armário de telecom.<br />
- As tomadas da área de trabalho para conexão com Telefone e o Modem ADSL.<br />
<br />
== Programação para Redes de Computadores ==<br />
'''Programação PHP e HTML'''<br />
'''Os Arquivos PHP (pagina Web) Encontram-se dentro da pasta: ''/var/www/teletec'''''<br />
<br />
- Edição do Arquivo '''Verificação.php''':<br />
<br />
Esta pagina PHP verifica se o login e a senha do administrador esta correto.<br />
Se estiver correto vai para a pagina "principal.php" se não volta para "login.php".<br />
<br />
<?<br />
session_start();<br />
$login = $_POST['login'];<br />
$senha = $_POST['senha'];<br />
if ( ( $login == "LOGIN-DO-ADMIN" ) && ( $senha == "SENHA-DO-ADMIN" ) ){<br />
$_SESSION['autorizado'] = $login;<br />
Header ("Location: principal.php");<br />
}else{<br />
Header ("Location: login.php");<br />
}<br />
?><br />
<br />
- Edição do Arquivo '''sair.php''':<br />
<br />
Esta pagina PHP faz o administrador "deslogar" ("logoff") e depois volta para pagina "login.php"<br />
<br />
<?<br />
session_start();<br />
session_destroy();<br />
Header ("Location: login.php");<br />
?><br />
<br />
- Edição do arquivo '''principal.php''': <br />
<br />
Esta é a principal pagina PHP do site, nela verificamos os clientes criados e armazenados no banco de dados, redirecionamos para pagina que modifica os dominios (alterar.php), redirecionamos para pagina que remover os dominios (excluir.php)e tambem redirecionamos para a pagina que adiciona os dominios (adicionar.php).<br />
Quando é redirecionado para pagina de modificação e remoção tambem é enviado uma variavel com o dominio do cliente para saber qual usuario deve ser modificado ou alterado.<br />
<.?<br />
.session_start();<br />
.if (!isset($_SESSION['autorizado'])){<br />
.header ("Location: login.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Administrcao de Dominios</title><br />
<./head><br />
<.body><br />
<.p><a href="sair.php">Sair</a></p><br />
<.p></p><br />
<.p style="text-align:center;margin-left:auto;margin-right:auto;">Cliente Dominio Acao </p><br />
<br />
<.?<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$consulta = "SELECT * from clientes";<br />
$resultado = mysql_query($consulta,$conexao);<br />
while($linha = mysql_fetch_array($resultado)){<br />
$cliente = $linha['cliente'];<br />
$dominio = $linha['dominio'];<br />
.?><br />
<.form><br />
<.p style="text-align:center;margin-left:auto;margin-right:auto;"><br />
<.a name="cliente" id="cliente" href="alterar.php?id=<? echo $linha['dominio'];?>"> <?echo $.linha['cliente'];?></a> <br />
<.? echo $linha['dominio'];?> <a href="excluir.php?id=<? echo $linha['dominio'];?>"> Excluir</a></p><br />
<./form><br />
<.?<br />
.}<br />
.mysql_free_result($resultado);<br />
.mysql_close($conexao);<br />
.}<br />
.?><br />
<.p style="text-align:right;margin-left:auto;margin-right:0;"><br />
<.a href="adicionar.php"><span style="color:#ff0000">Adicionar novo dominio</span></a></p><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''mod-dominio.php''':<br />
<br />
Esta pagina PHP recebe três variaveis com o dominio antigo do clinete, o novo dominio e o novo nome do cliente, estas variaveis são repassadas para o script "mod-dominio.sh" e este é executado modificando o dominio e o nome do cliente, depois de executar o script as informações do banco de dados tambem são modificadas e o serviço APACHE2 é reiniciado.<br />
Após todo este processamento a pagina é redirecionada para 'principal.php".<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$cliente = $_POST['cliente'];<br />
$dominio = $_POST['dominio'];<br />
$antigo = $_POST['antigo'];;<br />
if (empty($dominio)) {<br />
$dominio = "invalido";<br />
} <br />
<br />
if (preg_match('/^[a-z0-9]+/', $dominio)){<br />
}else{<br />
$dominio = "invalido";<br />
} <br />
<br />
$arquivo = '/etc/bind/named.conf';<br />
$linhas = array();<br />
exec("cat $arquivo",$linhas);<br />
for ($i = 0 ; $i < sizeof($linhas); $i++){<br />
if ($linhas[$i] == "include \"/etc/bind/$dominio.conf\";"){<br />
$dominio = "invalido";<br />
}<br />
}<br />
if ($dominio == "invalido"){<br />
header ("Location: alterar.php");<br />
}else{ <br />
<br />
$script = "sudo /etc/teletec/mod-dominio.sh $antigo '$cliente' $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$deletar = "DELETE FROM clientes WHERE dominio='$antigo.teletec.sj.ifsc.edu.br'";<br />
mysql_query($deletar,$conexao);<br />
mysql_close($conexao); <br />
<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$inserir = "INSERT INTO clientes (cliente,dominio) VALUES ('$cliente','$dominio.teletec.sj.ifsc.edu.br')";<br />
mysql_query($inserir,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php"); <br />
<br />
}<br />
.}<br />
?.><br />
<br />
- Edição do Arquivo '''login.php''': <br />
<br />
Esta pagina PHP recolhe o login e a senha fornecidas pelo administrador atraves de um formulario e manda para a pagina PHP de processamento que verifica se esta correto.<br />
.<?<br />
.session_start();<br />
.if (isset($_SESSION['autorizado'])){<br />
.Header ("Location: principal.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Hospedagem Web</title><br />
<./head><br />
<br />
<.body><br />
<.p></p><br />
<.p>Sistemas de Hospedagem de Sitios Web</p><br />
<.p></p><br />
<.form name="formTeste" action="verificacao.php" method="post"><br />
<.p>Usu&#xe1;rio:<br><br />
<.input type="text" name="login"> <br />
<.p>Senha:<br> <br />
<.input type="password" name="senha"> <br />
<.input type="submit" name="b_enviar" value="Entrar"><br />
<./form><br />
<.p></p><br />
<.?<br />
}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''Index.php''':<br />
<br />
Esta pagina apenas redireciona para "login.php"<br />
<.?<br />
Header ("Location: login.php");<br />
.?><br />
<br />
- Edição do Arquivo '''excluir.php''':<br />
<br />
Esta pagina PHP faz uma verificação, se o administrador realmente querer excluir o dominio é mandado o dominio do clinete em uma variavel para a pagina PHP de processamento "del-dominio.php" e a pagina é redirecionada para la, mais se o usuario não quiser escluir é mandado novamente para p pagina "principal.php".<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){ <br />
header ("Location: login.php");<br />
}else{<br />
$id=$_GET['id'];<br />
$parte1 = explode(".", $id);<br />
$antigo = $parte1[0];<br />
?.><br />
<.html><br />
<head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Excluir o cliente</title><br />
<./head><br />
<.body><br />
<.p>Voce realmente deseja excluir o cliente?</p><br />
<br />
<.p><a href="del-dominio.php?id=<?echo $antigo;?>">Sim</a> <a<br />
.href="principal.php">Nao</a></p><br />
<.p></p><br />
<?<br />
}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''del-dominio.php''':<br />
<br />
Esta pagina PHP é uma pagina de processamento que recebe em uma variavel o nome do dominio que sera removido e transfere esta variavel para o script em bash "del-dominio.sh" ja executa o script, depois este dominio é removido do banco de dados e o serviço APACHE2 é reiniciado.<br />
Após todo o processamento a pagina é redirecionada para "principal.php".<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$dominio = $_GET['id'];<br />
$script = "/etc/teletec/del-dominio.sh $dominio";<br />
exec("$script");<br />
exec("sudo /etc/init.d/apache2 restart");<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$deletar = "DELETE FROM clientes WHERE dominio='$dominio.teletec.sj.ifsc.edu.br'";<br />
mysql_query($deletar,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php");<br />
}<br />
?.><br />
<br />
- Edição do '''Arquivo alterar.php''': <br />
<br />
Nesta pagina PHP o administrador informa o novo nome do cliente e o novo dominio, estas informações são gravadas em uma variavel que será mandada para a pagina PHP que vai fazer todo o trabalho de processamento (mod-dominio.php).<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){ <br />
header ("Location: login.php");<br />
}else{<br />
$id=$_GET['id'];<br />
$parte1 = explode(".", $id);<br />
$antigo = $parte1[0];<br />
?.><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Alterar Dominio</title><br />
</.head><br />
<.body><br />
<.p><.a href="principal.php">Voltar </a></p><br />
<.form name="formTeste" action="mod-dominio.php" method="post"><br />
<.p>Novo nome do cliente: <br><br />
<.input type="text" name="cliente"><br />
<.p>Novo dominio: <br><br />
<.input type="text" name="dominio"><br />
<.input type="hidden" name="antigo" value="<?echo $antigo;?>"> <br />
<.input type="submit" name="b_enviar" value="Alterar"><br />
<./form><br />
<.?<br />
}<br />
?.><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''adicionar.php''':<br />
<br />
Esta pagina PHP recolhe duas variaveis atraves do formulrios, em uma esta o nome do clinete e na outra o dominio escolhido, estas variaveis são repassadas para a pagina de processamento que vai adicionar este novo subdominio (add-dominio.php).Depois ela é redirecionada para a pagina de processamento "add-dominio.php".<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Adicionar Cliente</title><br />
<./head><br />
<.body><br />
<.p><.a href="principal.php">Voltar </a></p><br />
<.form name="formTeste" action="add-dominio.php" method="post"><br />
<.p>Nome do cliente: <br><br />
<.input type="text" name="cliente"><br />
<.p>Dominio: <br><br />
<.input type="text" name="dominio"><br />
<.input type="submit" name="b_enviar" value="Criar"><br />
<./form><br />
<.?<br />
.}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''add-dominio.php''':<br />
<br />
Esta pagina PHP é uma pagina de processamento que recebe duas variaveis, na primeira esta o nome do dominio que sera removido e na segunda está o dominio do cliente, estas variaveis são transferidas para o script em bash "add-dominio.sh" que é executado, depois este dominio é adicionado no banco de dados e o serviço APACHE2 é reiniciado.<br />
Após todo o processamento a pagina é redirecionada para "principal.php".<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$cliente = $_POST['cliente'];<br />
$dominio = $_POST['dominio']; <br />
<br />
if (empty($dominio)) {<br />
$dominio = "invalido";<br />
} <br />
<br />
if (preg_match('/^[a-z0-9]+/', $dominio)){<br />
}else{<br />
$dominio = "invalido";<br />
} <br />
<br />
$arquivo = '/etc/bind/named.conf';<br />
$linhas = array();<br />
exec("cat $arquivo",$linhas);<br />
for ($i = 0 ; $i < sizeof($linhas); $i++){<br />
if ($linhas[$i] == "include \"/etc/bind/$dominio.conf\";"){<br />
$dominio = "invalido";<br />
}<br />
}<br />
if ($dominio == "invalido"){<br />
header ("Location: adicionar.php");<br />
}else{<br />
$script = "sudo /etc/teletec/add-dominio.sh '$cliente' $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$inserir = "INSERT INTO clientes (cliente,dominio) VALUES ('$cliente','$dominio.teletec.sj.ifsc.edu.br')";<br />
mysql_query($inserir,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php");<br />
}<br />
}<br />
?.><br />
<br />
'''Programação BASH'''<br />
'''Os Arquivos .sh (scripts que adicionam, removem ou alteram os usuários no servidor) Encontram-se dentro da pasta: ''/etc/teletec''''' <br />
<br />
- Edição do Arquivo '''mod-dominio.sh''':<br />
Script em bash que altera o dominio do cliente (Subdominio, E-mail e Pagina WEB):<br />
<br />
O script de modificação na verdade exclui o dominio criado e cria um novo, os scripts de remover e adicionar estão juntos neste script.<br />
<br />
#!/bin/bash<br />
#Leonardo<br />
#echo -n "Dominio: "<br />
#read antigo<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$antigo'.conf";' ];then<br />
# valido=sim<br />
# break<br />
# else<br />
# valido=nao<br />
# fi<br />
#done<br />
#if [ $valido = nao ];then<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio não existe ou esta em branco.\n"<br />
# exit<br />
#fi<br />
#echo -n "Novo nome para o cliente: "<br />
#read nome<br />
#echo -n "Novo dominio: "<br />
#read dominio<br />
#echo=${dominio:=nulo}<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$dominio'.conf";' ];then<br />
# dominio=existe<br />
# break<br />
# fi<br />
#done<br />
#if [ $dominio != nulo ] && [ $dominio != existe ];then<br />
antigo=$1<br />
nome=$2<br />
dominio=$3<br />
sudo sed -i '/\/etc\/bind\/'$antigo'\.conf/Id' /etc/bind/named.conf<br />
sudo rm /etc/bind/$antigo.conf<br />
sudo rm /etc/bind/$antigo.zone<br />
sudo rm /etc/apache2/sites-enabled/$antigo-default<br />
sudo rm -r /var/www/$antigo<br />
sudo sed -i '/'$antigo'\.teletec\.sj\.ifsc\.edu\.br Subdominio-'$antigo'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$antigo'@teletec\.sj\.ifsc\.edu\.br '$antigo'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$antigo'\.teletec\.sj\.ifsc\.edu\.br OK/Id' /etc/postfix/mydomains <br />
sudo userdel -r $antigo <br />
<br />
sudo echo 'include "/etc/bind/'$dominio'.conf";' >> /etc/bind/named.conf<br />
numero=`date | cut -d ":" -f 3 | cut -d " " -f 1`<br />
novoserial=$((1000000000+$numero))<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.conf > /etc/bind/$dominio.conf<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.zone | sed s/2011061504/$novoserial/g > /etc/bind/$dominio.zone<br />
sudo /etc/init.d/bind9 restart<br />
sudo sed s/padrao/$dominio/g /etc/apache2/sites-available/padrao-default > /etc/apache2/sites-enabled/$dominio-default<br />
mkdir /var/www/$dominio<br />
sed s/dominio/$dominio/g /var/www/padrao/index.html | sed s/nome/"$nome"/g > /var/www/$dominio/index.html<br />
sudo echo ' ' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br Subdominio-'$dominio'' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'@teletec.sj.ifsc.edu.br '$dominio'' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br OK' >> /etc/postfix/mydomains<br />
sudo postmap /etc/postfix/virtual<br />
sudo postmap /etc/postfix/mydomains<br />
sudo /etc/init.d/postfix restart<br />
# echo -e " * Dominio modificado com sucesso!\t\t\t\t[ OK ]\n"<br />
# else<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio ja existe ou esta em branco.\n"<br />
#fi<br />
<br />
- Edição do Arquivo '''del-dominio.sh''':<br />
Script em bash que remove o cliente (Subdominio, E-mail e Pagina WEB):<br />
<br />
Exclui todos os arquivos de configuração criados para este cliente e retira as linhas de configuração adicionadas em arquivos como o "named.conf", "virtual" e "mydomains", por ultimo os serviçoes DNS e POSTFIX são reiniciados ( o APACHE2 é reiniciado na pagina PHP).Também é removido o usuario criado no servidor.<br />
<br />
#!/bin/bash<br />
#Leonardo<br />
#echo -n "Dominio: "<br />
#read dominio<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$dominio'.conf";' ];then<br />
dominio=$1<br />
sudo sed -i '/\/etc\/bind\/'$dominio'\.conf/Id' /etc/bind/named.conf<br />
sudo rm /etc/bind/$dominio.conf<br />
sudo rm /etc/bind/$dominio.zone<br />
sudo /etc/init.d/bind9 restart<br />
sudo rm /etc/apache2/sites-enabled/$dominio-default<br />
sudo rm -r /var/www/$dominio<br />
sudo userdel -r $dominio<br />
sudo sed -i '/'$dominio'\.teletec\.sj\.ifsc\.edu\.br Subdominio-'$dominio'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$dominio'@teletec\.sj\.ifsc\.edu\.br '$dominio'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$dominio'\.teletec\.sj\.ifsc\.edu\.br OK/Id' /etc/postfix/mydomains<br />
sudo postmap /etc/postfix/virtual<br />
sudo postmap /etc/postfix/mydomains<br />
sudo /etc/init.d/postfix restart<br />
# echo -e " * Dominio removido com sucesso!\t\t\t\t[ OK ]\n"<br />
# exit<br />
# fi<br />
#done<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio não existe ou esta em branco.\n"<br />
<br />
- Edição do Arquivo '''add-dominio.sh''': <br />
Script em bash que adiciona o cliente (Subdominio, E-mail e Pagina WEB):<br />
<br />
Sub-dominio: O script pega como base arquivos padrões ja criados e configurados ( padrao.conf e padrao.zone ), altera todas as palavras "padrao" destes arvivos pelo dominio escolhido pelo usuario e salva como "dominio-escolhido".zone e "dominio-escolhido".conf. Alem disso ele tambem inclui o caminho do arquivo de configuração ".conf" no "named.conf".<br />
<br />
Pagina-Web: Assim como no sub-dominio, o script troca as palavras "padrao" que estão em um arquivo padrao de configuração ( padrao-default) pelo dominio escolhido pelo cliente, criando um novo arquivo de configuração com nome "dominio-escolhido"-default. Tambem cria uma pagina web html padrao.<br />
<br />
E-mail: O script adiciona as linhas de configuração do e-mail do cliente nos arquivos "virtual" e "mydomains". Também é criado um usuario no servidor com login e senha igual ao dominio escolhido.<br />
<br />
Após fazer as confgurações o script reinicia o DNS e o POSTFIX. (o APACHE2 é reiniciado na pagina PHP).<br />
<br />
#!/bin/bash<br />
# Leonardo<br />
#echo -n "Nome do cliente: "<br />
#read nome<br />
#echo -n "Dominio: " <br />
#read dominio<br />
#echo=${dominio:=nulo}<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$dominio'.conf";' ];then<br />
# dominio=existe<br />
# break<br />
# fi <br />
#done<br />
#<br />
#if [ $dominio != nulo ] && [ $dominio != existe ];then<br />
nome=$1<br />
dominio=$2<br />
sudo echo 'include "/etc/bind/'$dominio'.conf";' >> /etc/bind/named.conf<br />
numero=`date | cut -d ":" -f 3 | cut -d " " -f 1`<br />
novoserial=$((1000000000+$numero))<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.conf > /etc/bind/$dominio.conf<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.zone | sed s/2011061504/$novoserial/g > /etc/bind/$dominio.zone<br />
sudo /etc/init.d/bind9 restart<br />
sudo sed s/padrao/$dominio/g /etc/apache2/sites-available/padrao-default > /etc/apache2/sites-enabled/$dominio-default<br />
sudo mkdir /var/www/$dominio<br />
sudo sed s/dominio/$dominio/g /var/www/padrao/index.html | sed s/nome/"$nome"/g > /var/www/$dominio/index.html<br />
sudo useradd -md /home/$dominio $dominio<br />
sudo usermod -p $(openssl passwd -1 $dominio) $dominio<br />
sudo echo ' ' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br Subdominio-'$dominio'' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'@teletec.sj.ifsc.edu.br '$dominio'' >> /etc/postfix/virtual <br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br OK' >> /etc/postfix/mydomains<br />
sudo postmap /etc/postfix/virtual<br />
sudo postmap /etc/postfix/mydomains<br />
sudo /etc/init.d/postfix restart<br />
# echo -e " * Dominio criado com sucesso!\t\t\t\t[ OK ]\n"<br />
# else<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio ja existe ou esta em branco.\n"<br />
#fi</div>Vagner.chttps://wiki.sj.ifsc.edu.br/index.php?title=Projeto_Integrador_-_2011.1_-_Teletec&diff=34847Projeto Integrador - 2011.1 - Teletec2011-07-11T01:47:42Z<p>Vagner.c: </p>
<hr />
<div>== * '''Equipe 2 : TELETEC''' ==<br />
<br />
----<br />
<br />
== INTEGRANTES TELETEC ==<br />
<br />
* '''Daniel Estefano'''; estefano.daniel@gmail.com <br />
* '''Denis Teixeira'''; denisteixeira3@gmail.com <br />
* '''Leonardo Oliveira P.'''; leonardo-op@live.com <br />
* '''Odair de Moraes'''; odairdmoraes@hotmail.com<br />
* '''Robson de Carvalho'''; rob_carvalho12@hotmail.com<br />
* '''Vagner Cordeiro.''' cordeirotelecom@gmail.com<br />
<br />
----<br />
<br />
== '''SOBRE A EMPRESA TELETEC - PROVEDORA DE ACESSO Á INTERNET:''' == <br />
<br />
Empresa especializada no ramo das Telecomunicações Oferece os seguintes serviços: <br />
<br />
# Conta de Usuário para cada cliente;<br />
# Conta de E-mail para cada cliente;<br />
# Uma página Web Padrão;<br />
# Instalação do Modem ADSL e do Cabeamento Estrurado;<br />
# Acesso Wirelles;<br />
# Suporte 24Horas. <br />
<br />
Contamos com 6 Técnicos em Telecomunicações especialistas no setor de redes para todo o suporte necessário.<br />
Contate um de nossos especialistas através do e-mail teletecifsc.googlegroups.com e faça já seu orçamento.<br />
<br />
== Etapas Iniciais de Configurações da Rede ==<br />
<br />
<br />
# Instalação do Sistema Operacional:Ubuntu-Server;<br />
# Definido Sistema de Arquivo, Dividido em 3 Partições: ''1 Partição Primátia, 1 Partição Secundária e uma Partição para Swap;'' <br />
# Definido nome do Domínio: teletec.sj.ifsc.edu.br;<br />
# Criado um Usuário: Tecnico;<br />
# Acesso via SSH ao Servidor Teletec.<br />
<br />
----<br />
<br />
== Gerencia de Redes: Apache, Postfix e DNS ==<br />
<br />
'''Configurações do servidor DNS:''' <br />
<br />
- Edição do Arquivo para IP Estático: '''/etc/network/interfaces''' <br />
<br />
# This file describes the network interfaces available on your system<br />
# and how to activate them. For more information, see interfaces(5).<br />
# The loopback network interface<br />
auto lo<br />
iface lo inet loopback<br />
# The primary network interface<br />
auto eth0<br />
iface eth0 inet static<br />
address 200.135.37.100<br />
netmask 255.255.255.192<br />
gateway 200.135.37.126 <br />
<br />
- Edição do Arquivo do servidor DNS '''/etc/bind/named.conf''' <br />
<br />
Indica todos os arquivos que vai fazer a configuração dele<br />
<br />
// This is the primary configuration file for the BIND DNS server named.<br />
//<br />
// Please read /usr/share/doc/bind9/README.Debian.gz for information on the <br />
// structure of BIND configuration files in Debian, *BEFORE* you customize <br />
// this configuration file.<br />
//<br />
// If you are just adding zones, please do that in /etc/bind/named.conf.local<br />
include "/etc/bind/named.conf.options";<br />
include "/etc/bind/named.conf.local";<br />
include "/etc/bind/named.conf.default-zones";<br />
include "/etc/bind/servidor.conf";<br />
include "/etc/bind/tecnico.conf";<br />
include "/etc/bind/daniel.conf";<br />
<br />
- Edição do Arquivo de servidor DNS: named.conf.local '''/etc/bind/named.conf.local'''<br />
É um arquivo padrão do BIND onde foi configurado o o nosso dominino TELETEC.<br />
<br />
//<br />
// Do any local configuration here<br />
//<br />
<br />
// Consider adding the 1918 zones here, if they are not used in your<br />
// organization<br />
//include "/etc/bind/zones.rfc1918"8;<br />
zone "teletec.sj.ifsc.edu.br." IN {<br />
type master;<br />
file "/etc/bind/teletec.zone";<br />
allow-update { none; };<br />
};<br />
<br />
- Edição do Arquivo de DNS Reverso: '''/etc/bind/37.135.200.in-addr.arpa'''<br />
O DNS Reverso resolve um endereço IP para um nome de servidor – por exemplo, ele poderia resolver 200.176.3.142 para exemplo.hipotetico.com.br.<br />
<br />
$TTL 86400<br />
@ IN SOA servidor.teletec.sj.ifsc.edu.br. root (<br />
2011061500 ;<br />
1d ;<br />
1h ;<br />
1w ; <br />
1d ;<br />
)<br />
IN NS servidor.teletec.sj.ifsc.edu.br.<br />
100 IN PTR servidor.teletec.sj.ifsc.edu.br.<br />
<br />
- Edição do Arquivo para criar um subdomínio:'''/etc/bind/teletec.zone'''<br />
Arquivo que traz todas as configurações de cada subdomínio. <br />
<br />
$TTL 86400<br />
@ IN SOA teletec.teletec.sj.ifsc.edu.br root (<br />
2011062901;<br />
3H;<br />
15M;<br />
1W;<br />
1D );<br />
IN NS teletec.teletec.sj.ifsc.edu.br.<br />
IN MX 0 mail.teletec.sj.ifsc.edu.br.<br />
localhost IN A 127.0.0.1<br />
$ORIGIN teletec.sj.ifsc.edu.br.<br />
teletec A 200.135.37.100<br />
www A 200.135.37.100<br />
mail A 200.135.37.100<br />
<br />
- '''Configuração do servidor Apache'''<br />
<br />
No servidor Apache foi feito a instalação com o comando:<br />
<br />
apt-get install apache2<br />
<br />
- Configuração do arquivo '''/etc/apache2/sites-enabled/teletec-default'''<br />
<br />
NameVirtualHost 200.135.37.100:80<br />
<VirtualHost 200.135.37.100:80><br />
ServerAdmin webmaster@localhost<br />
ServerName www.teletec.sj.ifsc.edu.br<br />
DocumentRoot /var/www/teletec<br />
<Directory /><br />
Options FollowSymLinks<br />
AllowOverride None<br />
</Directory><br />
<Directory /var/www/><br />
Options Indexes FollowSymLinks MultiViews<br />
AllowOverride None<br />
Order allow,deny<br />
allow from all<br />
</Directory><br />
<br />
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/<br />
<Directory "/usr/lib/cgi-bin"><br />
AllowOverride None<br />
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch<br />
Order allow,deny<br />
Allow from all<br />
</Directory><br />
<br />
ErrorLog ${APACHE_LOG_DIR}/error.log<br />
<br />
# Possible values include: debug, info, notice, warn, error, crit,<br />
# alert, emerg.<br />
LogLevel warn<br />
<br />
CustomLog ${APACHE_LOG_DIR}/access.log combined<br />
<br />
Alias /doc/ "/usr/share/doc/"<br />
<Directory "/usr/share/doc/"><br />
Options Indexes MultiViews FollowSymLinks<br />
AllowOverride None<br />
Order deny,allow<br />
Deny from all<br />
Allow from 127.0.0.0/255.0.0.0 ::1/128<br />
</Directory><br />
<br />
</VirtualHost><br />
<br />
Na criação de um novo cliente vai ser criado um novo arquivo semelhante a esse com duas alterações nas linhas: '''ServerName www.teletec.sj.ifsc.edu.br''' onde vai ser acrescentado na frente do domínio o subdomínio do cliente exemplo: '''ServerName www.subdominio.teletec.sj.ifsc.edu.br''' e na linha '''DocumentRoot /var/www/teletec''' onde vai ser substituido '''teletec''' pelo nome do domínio do cliente por exemplo: '''DocumentRoot /var/www/cliente''' <br />
<br />
<br />
- '''Configuração do servidor POSTFIX'''<br />
<br />
- Primeiro foi feito a instalação com o comando:<br />
<br />
apt-get install postfix<br />
<br />
Em seguida o programa de instalação vai fazer algumas perguntas sobre a localização dos arquivos e alguns parâmetros<br />
<br />
- Configuração do arquivo '''/etc/postfix/main.cf''':<br />
<br />
<br />
# See /usr/share/postfix/main.cf.dist for a commented, more complete version<br />
<br />
<br />
# Debian specific: Specifying a file name will cause the first<br />
# line of that file to be used as the name. The Debian default<br />
# is /etc/mailname.<br />
#myorigin = /etc/mailname<br />
<br />
smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu)<br />
biff = no<br />
<br />
# appending .domain is the MUA's job.<br />
append_dot_mydomain = no<br />
<br />
# Uncomment the next line to generate "delayed mail" warnings<br />
#delay_warning_time = 4h<br />
<br />
readme_directory = no<br />
<br />
# TLS parameters<br />
smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem<br />
smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key<br />
smtpd_use_tls=yes<br />
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache<br />
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache<br />
<br />
# See /usr/share/doc/postfix/TLS_README.gz in the postfix-doc package for<br />
# information on enabling SSL in the smtp client.<br />
<br />
myhostname = mail.teletec.sj.ifsc.edu.br<br />
virtual_alias_maps = hash:/etc/postfix/virtual<br />
alias_database = hash:/etc/aliases<br />
myorigin = $myhostname<br />
mydestination = $myhostname<br />
relayhost = <br />
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128<br />
mailbox_size_limit = 0<br />
recipient_delimiter = +<br />
inet_interfaces = all<br />
mydomain = teletec.sj.ifsc.edu.br<br />
mynetworks_style = subnet<br />
virtual_alias_domains = hash:/etc/postfix/mydomains<br />
<br />
<br />
<br />
- Foi criado o arquivo '''/etc/postfix/virtual'''<br />
<br />
Toda vez que for criado uma nova conta de e-mail vai ser acresentado duas linhas novas nesse arquivo como as que estão em negrito no arquivo abaixo so que onde tem a palavra padrao vai ser substituida pele nome do cliente<br />
<br />
teletec.sj.ifsc.edu.br Principal<br />
<br />
robson.teletec.sj.ifsc.edu.br Subdominio1<br />
robson@robson.teletec.sj.ifsc.edu.br robson<br />
<br />
'''padrao.teletec.sj.ifsc.edu.br padrao'''<br />
'''user@padrao.teletec.sj.ifsc.edu.br user'''<br />
<br />
<br />
- Editar o arquivo mydomains '''/etc/postfix/mydomains'''<br />
<br />
Nesse arquivo tem como primeira linha o dominio e na seguinte o subdominio e toda vez que for criado uma conta nova vai ser acresentado uma linha nova com o nome do subdominio do cliente.<br />
<br />
teletec.sj.ifsc.edu.br OK<br />
robson.teletec.sj.ifsc.edu.br OK<br />
<br />
- Executar os comandos para releitura e reinicialização do Postfix:<br />
<br />
postmap /etc/postfix/virtual<br />
postmap /etc/postfix/mydomains<br />
service postfix restart<br />
<br />
== Instalação de Equipamento de Redes (Modem, Switch e Roteadores) ==<br />
<br />
'''Configurações:'''<br />
<br />
Instalação:<br />
<br />
minicom -s<br />
<br />
Configuração do Roteador Cisco 1700: <br />
<br />
* Configuração dos Dois Roteadores Utilizando a ferramenta "Minicon" (Se fosse Windows seria Hyperterminal)<br />
* Configuração dos dispositivos: Serial e Ethernet<br />
* Configuração como Protocolo PPP<br />
<br />
- ''"Configuração da porta serial":''<br />
<br />
┌─────────────[configuração]──────────────┐<br />
│ Nomes de arquivos e rotas<br />
│ Protocolos de transferência de arquivos<br />
│ Configuração da porta serial<br />
│ Modem e discagem<br />
│ Tela e teclado<br />
│ Salvar configuração como dfl<br />
│ Salvar configuração como<br />
│ Sair<br />
│ Sair do Minicom<br />
└────────────────────────────────────────┘<br />
<br />
- ''"Alteração da Porta Serial"''<br />
┌──────────────────────────────────────────────────────────┐<br />
│ A – Dispositivo Serial : /dev/ttSy0 <br />
│ B – Localização do Arquivo de Travamento : /var/lock<br />
│ C – Programa de Entrada :<br />
│ D – Programa de Saída :<br />
│ E – Bps/Paridade/Bits : 9600 8N1 <br />
│ F – Controle de Fluxo por Hardware : Não<br />
│ G – Controle de Fluxo por Software : Não<br />
│<br />
│ Alterar qual configuração?<br />
└──────────────────────────────────────────────────────────┘<br />
<br />
- ''"Salvar configuração com dfl"''<br />
<br />
- ''Configurando a Interface Serial do Roteador:''<br />
<br />
enable;<br />
configure terminal;<br />
<br />
#Para configurar a interface serial:<br />
interface serial 0;<br />
ip address 10.0.0.1/30;<br />
encapsulation ppp;<br />
exit;<br />
<br />
#Para configurar a interface ethernet:<br />
interface fastethernet 0;<br />
ip address 172.18.0.1/24;<br />
exit;<br />
exit;<br />
<br />
#Para salvar as configurações:<br />
wr;<br />
<br />
'''Radius'''<br />
<br />
Para ter acesso a rede aDSL ou pela rede sem fio será usado Radius para que os usuários sejam autenticados. O RADIUS é um sistema utilizado para prover uma autenticação centralizada em redes dial-up, VPN's (Virtual Private Network) e redes sem fio. Ele tem um modelo cliente-servidor, onde o cliente é o Network Access Server (NAS). Esse servidor é responsável por obter a informação sobre o cliente e repassá-la para o servidor RADIUS, além de interpretar a resposta, dando ou não acesso ao cliente. O servidor RADIUS é responsável por receber pedidos de conexão, autenticar o usuário e repassar ao NAS as informações necessárias para esse dar acesso ao usuário na rede. <br />
<br />
'''Arquivos configurados:''' <br />
<br />
Configurar login e senha para o cliente Radius ( /etc/freeradius<br />
/users ):<br />
<br />
“Usúario” Cleartext-Password := "senha"<br />
“Usúario” User-Password := "senha"<br />
<br />
Teste antes se seu servidor Radius está autenticando usuáriosfaça o seguinte comando no AC PPPoE (que fica em Ac-server): <br />
<br />
radtest seu_usuario sua_senha IP_do_seu_servidor_Radius 1 segredo_do_seu_servidor_Radius<br />
<br />
Configurando o Servidor PPPoe (/etc/ppp/pppoe-servers-options): <br />
<br />
require-chap<br />
auth<br />
lcp-echo-interval 10<br />
lcp-echo-failure 2<br />
ms-dns IP do seu servidor DNS<br />
netmask 255.255.255.0<br />
noipdefault<br />
debug<br />
kdebug 4<br />
plugin radius.so<br />
plugin radattr.so<br />
radius-config-file /etc/radiusclient/teletec.conf<br />
mru 1492<br />
mtu 1492<br />
<br />
Configuração do Cliente Radius ( etc/radiusclient/teletec.conf ):<br />
<br />
auth_order radius<br />
login_tries 4<br />
login_timeout 60<br />
nologin /etc/nologin<br />
issue /etc/radiusclient/issue<br />
authserver 200.135.37.100<br />
acctserver 200.135.37.100<br />
servers /etc/radiusclient/servers<br />
dictionary /etc/radiusclient/dictionary<br />
login_radius /usr/sbin/login.radius<br />
seqfile /var/run/radius.seq<br />
mapfile /etc/radiusclient/port-id-map<br />
default_realm<br />
radius_timeout 10<br />
radius_retries 3<br />
login_local /bin/login<br />
<br />
Configurando o IP do Servidor Radius ( /etc/radiusclient/servers ):<br />
<br />
200.135.37.100 testing123<br />
<br />
Integrando Radius ao Banco de Dados<br />
<br />
Primeiro procedimento, instale o pacote. <br />
<br />
apt-get install freeradius-mysql<br />
Edite o arquivo de configuração do freeradius, e descomente a seguinte linha <br />
( /etc/freeradius/radiusd.conf ): <br />
<br />
$INCLUDE sql.conf<br />
<br />
Para entrar no MySQL execute o comando: <br />
<br />
mysql -u root -p <br />
<br />
Crie uma base de dados somente para o Radius e dê ao usuário Radius a devida permissão para acesso a esta base. No shell do MySQL, execute os comandos: <br />
<br />
CREATE DATABASE radius;<br />
GRANT ALL ON radius.* TO freerad@localhost IDENTIFIED BY "senha_do_usuário_freeradius";<br />
exit;<br />
<br />
Inserindo informações na base de dados: <br />
<br />
mysql -u “usuário” -p “senha do usuário radius” “database” < /etc/freeradius/sql/mysql/schema.sql<br />
mysql -u “usuário” -p “senha do usuário radius” “database” < /etc/freeradius/sql/mysql/nas.sql<br />
<br />
Editar o arquivo /etc/freeradius/sql.conf, colocando a senha do usuário Radius: <br />
<br />
passwrod = "senha do usuário radius"<br />
<br />
E descomente a linha do mesmo arquivo ( /etc/freeradius/sql.conf ) : <br />
<br />
readclients = yes<br />
<br />
Reinicie o FreeRadius: <br />
<br />
service freeradius restart<br />
<br />
== Cabeamento Estruturado ==<br />
<br />
Atividades Concluídas:<br />
<br />
- o A central telefônica ao DSLAM<br />
- o O DSLAM ao armário de telecom da equipe, através de uma linha telefone + DSL<br />
- o armário da equipe a uma área de trabalho. <br />
- O cabeamento permitiu a conexão do modem DSL no armário de telecom.<br />
- As tomadas da área de trabalho para conexão com Telefone e o Modem ADSL.<br />
<br />
== Programação para Redes de Computadores ==<br />
<br />
'''Os Arquivos PHP (pagina Web) Encontram-se dentro da pasta: ''/var/www/teletec'''''<br />
<br />
- Edição do Arquivo '''Verificação.php''':<br />
<br />
Esta pagina PHP verifica se o login e a senha do administrador esta correto.<br />
Se estiver correto vai para a pagina "principal.php" se não volta para "login.php".<br />
<br />
<?<br />
session_start();<br />
$login = $_POST['login'];<br />
$senha = $_POST['senha'];<br />
if ( ( $login == "LOGIN-DO-ADMIN" ) && ( $senha == "SENHA-DO-ADMIN" ) ){<br />
$_SESSION['autorizado'] = $login;<br />
Header ("Location: principal.php");<br />
}else{<br />
Header ("Location: login.php");<br />
}<br />
?><br />
<br />
- Edição do Arquivo '''sair.php''':<br />
<br />
Esta pagina PHP faz o administrador "deslogar" ("logoff") e depois volta para pagina "login.php"<br />
<br />
<?<br />
session_start();<br />
session_destroy();<br />
Header ("Location: login.php");<br />
?><br />
<br />
- Edição do arquivo '''principal.php''': <br />
<br />
Esta é a principal pagina PHP do site, nela verificamos os clientes criados e armazenados no banco de dados, redirecionamos para pagina que modifica os dominios (alterar.php), redirecionamos para pagina que remover os dominios (excluir.php)e tambem redirecionamos para a pagina que adiciona os dominios (adicionar.php).<br />
Quando é redirecionado para pagina de modificação e remoção tambem é enviado uma variavel com o dominio do cliente para saber qual usuario deve ser modificado ou alterado.<br />
<.?<br />
.session_start();<br />
.if (!isset($_SESSION['autorizado'])){<br />
.header ("Location: login.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Administrcao de Dominios</title><br />
<./head><br />
<.body><br />
<.p><a href="sair.php">Sair</a></p><br />
<.p></p><br />
<.p style="text-align:center;margin-left:auto;margin-right:auto;">Cliente Dominio Acao </p><br />
<br />
<.?<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$consulta = "SELECT * from clientes";<br />
$resultado = mysql_query($consulta,$conexao);<br />
while($linha = mysql_fetch_array($resultado)){<br />
$cliente = $linha['cliente'];<br />
$dominio = $linha['dominio'];<br />
.?><br />
<.form><br />
<.p style="text-align:center;margin-left:auto;margin-right:auto;"><br />
<.a name="cliente" id="cliente" href="alterar.php?id=<? echo $linha['dominio'];?>"> <?echo $.linha['cliente'];?></a> <br />
<.? echo $linha['dominio'];?> <a href="excluir.php?id=<? echo $linha['dominio'];?>"> Excluir</a></p><br />
<./form><br />
<.?<br />
.}<br />
.mysql_free_result($resultado);<br />
.mysql_close($conexao);<br />
.}<br />
.?><br />
<.p style="text-align:right;margin-left:auto;margin-right:0;"><br />
<.a href="adicionar.php"><span style="color:#ff0000">Adicionar novo dominio</span></a></p><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''mod-dominio.php''':<br />
<br />
Esta pagina PHP recebe três variaveis com o dominio antigo do clinete, o novo dominio e o novo nome do cliente, estas variaveis são repassadas para o script "mod-dominio.sh" e este é executado modificando o dominio e o nome do cliente, depois de executar o script as informações do banco de dados tambem são modificadas e o serviço APACHE2 é reiniciado.<br />
Após todo este processamento a pagina é redirecionada para 'principal.php".<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$cliente = $_POST['cliente'];<br />
$dominio = $_POST['dominio'];<br />
$antigo = $_POST['antigo'];;<br />
if (empty($dominio)) {<br />
$dominio = "invalido";<br />
} <br />
<br />
if (preg_match('/^[a-z0-9]+/', $dominio)){<br />
}else{<br />
$dominio = "invalido";<br />
} <br />
<br />
$arquivo = '/etc/bind/named.conf';<br />
$linhas = array();<br />
exec("cat $arquivo",$linhas);<br />
for ($i = 0 ; $i < sizeof($linhas); $i++){<br />
if ($linhas[$i] == "include \"/etc/bind/$dominio.conf\";"){<br />
$dominio = "invalido";<br />
}<br />
}<br />
if ($dominio == "invalido"){<br />
header ("Location: alterar.php");<br />
}else{ <br />
<br />
$script = "sudo /etc/teletec/mod-dominio.sh $antigo '$cliente' $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$deletar = "DELETE FROM clientes WHERE dominio='$antigo.teletec.sj.ifsc.edu.br'";<br />
mysql_query($deletar,$conexao);<br />
mysql_close($conexao); <br />
<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$inserir = "INSERT INTO clientes (cliente,dominio) VALUES ('$cliente','$dominio.teletec.sj.ifsc.edu.br')";<br />
mysql_query($inserir,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php"); <br />
<br />
}<br />
.}<br />
?.><br />
<br />
- Edição do Arquivo '''login.php''': <br />
<br />
Esta pagina PHP recolhe o login e a senha fornecidas pelo administrador atraves de um formulario e manda para a pagina PHP de processamento que verifica se esta correto.<br />
.<?<br />
.session_start();<br />
.if (isset($_SESSION['autorizado'])){<br />
.Header ("Location: principal.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Hospedagem Web</title><br />
<./head><br />
<br />
<.body><br />
<.p></p><br />
<.p>Sistemas de Hospedagem de Sitios Web</p><br />
<.p></p><br />
<.form name="formTeste" action="verificacao.php" method="post"><br />
<.p>Usu&#xe1;rio:<br><br />
<.input type="text" name="login"> <br />
<.p>Senha:<br> <br />
<.input type="password" name="senha"> <br />
<.input type="submit" name="b_enviar" value="Entrar"><br />
<./form><br />
<.p></p><br />
<.?<br />
}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''Index.php''':<br />
<br />
Esta pagina apenas redireciona para "login.php"<br />
<.?<br />
Header ("Location: login.php");<br />
.?><br />
<br />
- Edição do Arquivo '''excluir.php''':<br />
<br />
Esta pagina PHP faz uma verificação, se o administrador realmente querer excluir o dominio é mandado o dominio do clinete em uma variavel para a pagina PHP de processamento "del-dominio.php" e a pagina é redirecionada para la, mais se o usuario não quiser escluir é mandado novamente para p pagina "principal.php".<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){ <br />
header ("Location: login.php");<br />
}else{<br />
$id=$_GET['id'];<br />
$parte1 = explode(".", $id);<br />
$antigo = $parte1[0];<br />
?.><br />
<.html><br />
<head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Excluir o cliente</title><br />
<./head><br />
<.body><br />
<.p>Voce realmente deseja excluir o cliente?</p><br />
<br />
<.p><a href="del-dominio.php?id=<?echo $antigo;?>">Sim</a> <a<br />
.href="principal.php">Nao</a></p><br />
<.p></p><br />
<?<br />
}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''del-dominio.php''':<br />
<br />
Esta pagina PHP é uma pagina de processamento que recebe em uma variavel o nome do dominio que sera removido e transfere esta variavel para o script em bash "del-dominio.sh" ja executa o script, depois este dominio é removido do banco de dados e o serviço APACHE2 é reiniciado.<br />
Após todo o processamento a pagina é redirecionada para "principal.php".<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$dominio = $_GET['id'];<br />
$script = "/etc/teletec/del-dominio.sh $dominio";<br />
exec("$script");<br />
exec("sudo /etc/init.d/apache2 restart");<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$deletar = "DELETE FROM clientes WHERE dominio='$dominio.teletec.sj.ifsc.edu.br'";<br />
mysql_query($deletar,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php");<br />
}<br />
?.><br />
<br />
- Edição do '''Arquivo alterar.php''': <br />
<br />
Nesta pagina PHP o administrador informa o novo nome do cliente e o novo dominio, estas informações são gravadas em uma variavel que será mandada para a pagina PHP que vai fazer todo o trabalho de processamento (mod-dominio.php).<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){ <br />
header ("Location: login.php");<br />
}else{<br />
$id=$_GET['id'];<br />
$parte1 = explode(".", $id);<br />
$antigo = $parte1[0];<br />
?.><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Alterar Dominio</title><br />
</.head><br />
<.body><br />
<.p><.a href="principal.php">Voltar </a></p><br />
<.form name="formTeste" action="mod-dominio.php" method="post"><br />
<.p>Novo nome do cliente: <br><br />
<.input type="text" name="cliente"><br />
<.p>Novo dominio: <br><br />
<.input type="text" name="dominio"><br />
<.input type="hidden" name="antigo" value="<?echo $antigo;?>"> <br />
<.input type="submit" name="b_enviar" value="Alterar"><br />
<./form><br />
<.?<br />
}<br />
?.><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''adicionar.php''':<br />
<br />
Esta pagina PHP recolhe duas variaveis atraves do formulrios, em uma esta o nome do clinete e na outra o dominio escolhido, estas variaveis são repassadas para a pagina de processamento que vai adicionar este novo subdominio (add-dominio.php).Depois ela é redirecionada para a pagina de processamento "add-dominio.php".<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Adicionar Cliente</title><br />
<./head><br />
<.body><br />
<.p><.a href="principal.php">Voltar </a></p><br />
<.form name="formTeste" action="add-dominio.php" method="post"><br />
<.p>Nome do cliente: <br><br />
<.input type="text" name="cliente"><br />
<.p>Dominio: <br><br />
<.input type="text" name="dominio"><br />
<.input type="submit" name="b_enviar" value="Criar"><br />
<./form><br />
<.?<br />
.}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''add-dominio.php''':<br />
<br />
Esta pagina PHP é uma pagina de processamento que recebe duas variaveis, na primeira esta o nome do dominio que sera removido e na segunda está o dominio do cliente, estas variaveis são transferidas para o script em bash "add-dominio.sh" que é executado, depois este dominio é adicionado no banco de dados e o serviço APACHE2 é reiniciado.<br />
Após todo o processamento a pagina é redirecionada para "principal.php".<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$cliente = $_POST['cliente'];<br />
$dominio = $_POST['dominio']; <br />
<br />
if (empty($dominio)) {<br />
$dominio = "invalido";<br />
} <br />
<br />
if (preg_match('/^[a-z0-9]+/', $dominio)){<br />
}else{<br />
$dominio = "invalido";<br />
} <br />
<br />
$arquivo = '/etc/bind/named.conf';<br />
$linhas = array();<br />
exec("cat $arquivo",$linhas);<br />
for ($i = 0 ; $i < sizeof($linhas); $i++){<br />
if ($linhas[$i] == "include \"/etc/bind/$dominio.conf\";"){<br />
$dominio = "invalido";<br />
}<br />
}<br />
if ($dominio == "invalido"){<br />
header ("Location: adicionar.php");<br />
}else{<br />
$script = "sudo /etc/teletec/add-dominio.sh '$cliente' $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$inserir = "INSERT INTO clientes (cliente,dominio) VALUES ('$cliente','$dominio.teletec.sj.ifsc.edu.br')";<br />
mysql_query($inserir,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php");<br />
}<br />
}<br />
?.><br />
<br />
'''Os Arquivos .sh (scripts que adicionam, removem ou alteram os usuários no servidor) Encontram-se dentro da pasta: ''/etc/teletec''''' <br />
<br />
- Edição do Arquivo '''mod-dominio.sh''':<br />
Script em bash que altera o dominio do cliente (Subdominio, E-mail e Pagina WEB):<br />
<br />
O script de modificação na verdade exclui o dominio criado e cria um novo, os scripts de remover e adicionar estão juntos neste script.<br />
<br />
#!/bin/bash<br />
#Leonardo<br />
#echo -n "Dominio: "<br />
#read antigo<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$antigo'.conf";' ];then<br />
# valido=sim<br />
# break<br />
# else<br />
# valido=nao<br />
# fi<br />
#done<br />
#if [ $valido = nao ];then<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio não existe ou esta em branco.\n"<br />
# exit<br />
#fi<br />
#echo -n "Novo nome para o cliente: "<br />
#read nome<br />
#echo -n "Novo dominio: "<br />
#read dominio<br />
#echo=${dominio:=nulo}<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$dominio'.conf";' ];then<br />
# dominio=existe<br />
# break<br />
# fi<br />
#done<br />
#if [ $dominio != nulo ] && [ $dominio != existe ];then<br />
antigo=$1<br />
nome=$2<br />
dominio=$3<br />
sudo sed -i '/\/etc\/bind\/'$antigo'\.conf/Id' /etc/bind/named.conf<br />
sudo rm /etc/bind/$antigo.conf<br />
sudo rm /etc/bind/$antigo.zone<br />
sudo rm /etc/apache2/sites-enabled/$antigo-default<br />
sudo rm -r /var/www/$antigo<br />
sudo sed -i '/'$antigo'\.teletec\.sj\.ifsc\.edu\.br Subdominio-'$antigo'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$antigo'@teletec\.sj\.ifsc\.edu\.br '$antigo'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$antigo'\.teletec\.sj\.ifsc\.edu\.br OK/Id' /etc/postfix/mydomains <br />
sudo userdel -r $antigo <br />
<br />
sudo echo 'include "/etc/bind/'$dominio'.conf";' >> /etc/bind/named.conf<br />
numero=`date | cut -d ":" -f 3 | cut -d " " -f 1`<br />
novoserial=$((1000000000+$numero))<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.conf > /etc/bind/$dominio.conf<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.zone | sed s/2011061504/$novoserial/g > /etc/bind/$dominio.zone<br />
sudo /etc/init.d/bind9 restart<br />
sudo sed s/padrao/$dominio/g /etc/apache2/sites-available/padrao-default > /etc/apache2/sites-enabled/$dominio-default<br />
mkdir /var/www/$dominio<br />
sed s/dominio/$dominio/g /var/www/padrao/index.html | sed s/nome/"$nome"/g > /var/www/$dominio/index.html<br />
sudo echo ' ' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br Subdominio-'$dominio'' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'@teletec.sj.ifsc.edu.br '$dominio'' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br OK' >> /etc/postfix/mydomains<br />
sudo postmap /etc/postfix/virtual<br />
sudo postmap /etc/postfix/mydomains<br />
sudo /etc/init.d/postfix restart<br />
# echo -e " * Dominio modificado com sucesso!\t\t\t\t[ OK ]\n"<br />
# else<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio ja existe ou esta em branco.\n"<br />
#fi<br />
<br />
- Edição do Arquivo '''del-dominio.sh''':<br />
Script em bash que remove o cliente (Subdominio, E-mail e Pagina WEB):<br />
<br />
Exclui todos os arquivos de configuração criados para este cliente e retira as linhas de configuração adicionadas em arquivos como o "named.conf", "virtual" e "mydomains", por ultimo os serviçoes DNS e POSTFIX são reiniciados ( o APACHE2 é reiniciado na pagina PHP).Também é removido o usuario criado no servidor.<br />
<br />
#!/bin/bash<br />
#Leonardo<br />
#echo -n "Dominio: "<br />
#read dominio<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$dominio'.conf";' ];then<br />
dominio=$1<br />
sudo sed -i '/\/etc\/bind\/'$dominio'\.conf/Id' /etc/bind/named.conf<br />
sudo rm /etc/bind/$dominio.conf<br />
sudo rm /etc/bind/$dominio.zone<br />
sudo /etc/init.d/bind9 restart<br />
sudo rm /etc/apache2/sites-enabled/$dominio-default<br />
sudo rm -r /var/www/$dominio<br />
sudo userdel -r $dominio<br />
sudo sed -i '/'$dominio'\.teletec\.sj\.ifsc\.edu\.br Subdominio-'$dominio'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$dominio'@teletec\.sj\.ifsc\.edu\.br '$dominio'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$dominio'\.teletec\.sj\.ifsc\.edu\.br OK/Id' /etc/postfix/mydomains<br />
sudo postmap /etc/postfix/virtual<br />
sudo postmap /etc/postfix/mydomains<br />
sudo /etc/init.d/postfix restart<br />
# echo -e " * Dominio removido com sucesso!\t\t\t\t[ OK ]\n"<br />
# exit<br />
# fi<br />
#done<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio não existe ou esta em branco.\n"<br />
<br />
- Edição do Arquivo '''add-dominio.sh''': <br />
Script em bash que adiciona o cliente (Subdominio, E-mail e Pagina WEB):<br />
<br />
Sub-dominio: O script pega como base arquivos padrões ja criados e configurados ( padrao.conf e padrao.zone ), altera todas as palavras "padrao" destes arvivos pelo dominio escolhido pelo usuario e salva como "dominio-escolhido".zone e "dominio-escolhido".conf. Alem disso ele tambem inclui o caminho do arquivo de configuração ".conf" no "named.conf".<br />
<br />
Pagina-Web: Assim como no sub-dominio, o script troca as palavras "padrao" que estão em um arquivo padrao de configuração ( padrao-default) pelo dominio escolhido pelo cliente, criando um novo arquivo de configuração com nome "dominio-escolhido"-default. Tambem cria uma pagina web html padrao.<br />
<br />
E-mail: O script adiciona as linhas de configuração do e-mail do cliente nos arquivos "virtual" e "mydomains". Também é criado um usuario no servidor com login e senha igual ao dominio escolhido.<br />
<br />
Após fazer as confgurações o script reinicia o DNS e o POSTFIX. (o APACHE2 é reiniciado na pagina PHP).<br />
<br />
#!/bin/bash<br />
# Leonardo<br />
#echo -n "Nome do cliente: "<br />
#read nome<br />
#echo -n "Dominio: " <br />
#read dominio<br />
#echo=${dominio:=nulo}<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$dominio'.conf";' ];then<br />
# dominio=existe<br />
# break<br />
# fi <br />
#done<br />
#<br />
#if [ $dominio != nulo ] && [ $dominio != existe ];then<br />
nome=$1<br />
dominio=$2<br />
sudo echo 'include "/etc/bind/'$dominio'.conf";' >> /etc/bind/named.conf<br />
numero=`date | cut -d ":" -f 3 | cut -d " " -f 1`<br />
novoserial=$((1000000000+$numero))<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.conf > /etc/bind/$dominio.conf<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.zone | sed s/2011061504/$novoserial/g > /etc/bind/$dominio.zone<br />
sudo /etc/init.d/bind9 restart<br />
sudo sed s/padrao/$dominio/g /etc/apache2/sites-available/padrao-default > /etc/apache2/sites-enabled/$dominio-default<br />
sudo mkdir /var/www/$dominio<br />
sudo sed s/dominio/$dominio/g /var/www/padrao/index.html | sed s/nome/"$nome"/g > /var/www/$dominio/index.html<br />
sudo useradd -md /home/$dominio $dominio<br />
sudo usermod -p $(openssl passwd -1 $dominio) $dominio<br />
sudo echo ' ' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br Subdominio-'$dominio'' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'@teletec.sj.ifsc.edu.br '$dominio'' >> /etc/postfix/virtual <br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br OK' >> /etc/postfix/mydomains<br />
sudo postmap /etc/postfix/virtual<br />
sudo postmap /etc/postfix/mydomains<br />
sudo /etc/init.d/postfix restart<br />
# echo -e " * Dominio criado com sucesso!\t\t\t\t[ OK ]\n"<br />
# else<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio ja existe ou esta em branco.\n"<br />
#fi</div>Vagner.chttps://wiki.sj.ifsc.edu.br/index.php?title=Projeto_Integrador_-_2011.1_-_Teletec&diff=34846Projeto Integrador - 2011.1 - Teletec2011-07-11T01:44:56Z<p>Vagner.c: </p>
<hr />
<div>== * '''Equipe 2 : TELETEC''' ==<br />
<br />
----<br />
<br />
== INTEGRANTES TELETEC ==<br />
<br />
* '''Daniel Estefano'''; estefano.daniel@gmail.com <br />
* '''Denis Teixeira'''; denisteixeira3@gmail.com <br />
* '''Leonardo Oliveira P.'''; leonardo-op@live.com <br />
* '''Odair de Moraes'''; odairdmoraes@hotmail.com<br />
* '''Robson de Carvalho'''; rob_carvalho12@hotmail.com<br />
* '''Vagner Cordeiro.''' cordeirotelecom@gmail.com<br />
<br />
----<br />
<br />
== '''SOBRE A EMPRESA TELETEC - PROVEDORA DE ACESSO Á INTERNET:''' == <br />
<br />
Empresa especializada no ramo das Telecomunicações Oferece os seguintes serviços: <br />
<br />
# Conta de Usuário para cada cliente;<br />
# Conta de E-mail para cada cliente;<br />
# Uma página Web Padrão;<br />
# Instalação do Modem ADSL e do Cabeamento Estrurado;<br />
# Acesso Wirelles;<br />
# Suporte 24Horas. <br />
<br />
Contamos com 6 Técnicos em Telecomunicações especialistas no setor de redes para todo o suporte necessário.<br />
Contate um de nossos especialistas através do e-mail teletecifsc.googlegroups.com e faça já seu orçamento.<br />
<br />
== Etapas Iniciais de Configurações da Rede ==<br />
<br />
<br />
# Instalação do Sistema Operacional:Ubuntu-Server;<br />
# Definido Sistema de Arquivo, Dividido em 3 Partições: ''1 Partição Primátia, 1 Partição Secundária e uma Partição para Swap;'' <br />
# Definido nome do Domínio: teletec.sj.ifsc.edu.br;<br />
# Criado um Usuário: Tecnico;<br />
# Acesso via SSH ao Servidor Teletec.<br />
<br />
----<br />
<br />
== Gerencia de Redes: Apache, Postfix e DNS ==<br />
<br />
'''Configurações do servidor DNS:''' <br />
<br />
- Edição do Arquivo para IP Estático: '''/etc/network/interfaces''' <br />
<br />
# This file describes the network interfaces available on your system<br />
# and how to activate them. For more information, see interfaces(5).<br />
# The loopback network interface<br />
auto lo<br />
iface lo inet loopback<br />
# The primary network interface<br />
auto eth0<br />
iface eth0 inet static<br />
address 200.135.37.100<br />
netmask 255.255.255.192<br />
gateway 200.135.37.126 <br />
<br />
- Edição do Arquivo do servidor DNS '''/etc/bind/named.conf''' <br />
<br />
Indica todos os arquivos que vai fazer a configuração dele<br />
<br />
// This is the primary configuration file for the BIND DNS server named.<br />
//<br />
// Please read /usr/share/doc/bind9/README.Debian.gz for information on the <br />
// structure of BIND configuration files in Debian, *BEFORE* you customize <br />
// this configuration file.<br />
//<br />
// If you are just adding zones, please do that in /etc/bind/named.conf.local<br />
include "/etc/bind/named.conf.options";<br />
include "/etc/bind/named.conf.local";<br />
include "/etc/bind/named.conf.default-zones";<br />
include "/etc/bind/servidor.conf";<br />
include "/etc/bind/tecnico.conf";<br />
include "/etc/bind/daniel.conf";<br />
<br />
- Edição do Arquivo de servidor DNS: named.conf.local '''/etc/bind/named.conf.local'''<br />
É um arquivo padrão do BIND onde foi configurado o o nosso dominino TELETEC.<br />
<br />
//<br />
// Do any local configuration here<br />
//<br />
<br />
// Consider adding the 1918 zones here, if they are not used in your<br />
// organization<br />
//include "/etc/bind/zones.rfc1918"8;<br />
zone "teletec.sj.ifsc.edu.br." IN {<br />
type master;<br />
file "/etc/bind/teletec.zone";<br />
allow-update { none; };<br />
};<br />
<br />
- Edição do Arquivo de DNS Reverso: '''/etc/bind/37.135.200.in-addr.arpa'''<br />
O DNS Reverso resolve um endereço IP para um nome de servidor – por exemplo, ele poderia resolver 200.176.3.142 para exemplo.hipotetico.com.br.<br />
<br />
$TTL 86400<br />
@ IN SOA servidor.teletec.sj.ifsc.edu.br. root (<br />
2011061500 ;<br />
1d ;<br />
1h ;<br />
1w ; <br />
1d ;<br />
)<br />
IN NS servidor.teletec.sj.ifsc.edu.br.<br />
100 IN PTR servidor.teletec.sj.ifsc.edu.br.<br />
<br />
- Edição do Arquivo para criar um subdomínio:'''/etc/bind/teletec.zone'''<br />
Arquivo que traz todas as configurações de cada subdomínio. <br />
<br />
$TTL 86400<br />
@ IN SOA teletec.teletec.sj.ifsc.edu.br root (<br />
2011062901;<br />
3H;<br />
15M;<br />
1W;<br />
1D );<br />
IN NS teletec.teletec.sj.ifsc.edu.br.<br />
IN MX 0 mail.teletec.sj.ifsc.edu.br.<br />
localhost IN A 127.0.0.1<br />
$ORIGIN teletec.sj.ifsc.edu.br.<br />
teletec A 200.135.37.100<br />
www A 200.135.37.100<br />
mail A 200.135.37.100<br />
<br />
- '''Configuração do servidor Apache'''<br />
<br />
No servidor Apache foi feito a instalação com o comando:<br />
<br />
apt-get install apache2<br />
<br />
- Configuração do arquivo '''/etc/apache2/sites-enabled/teletec-default'''<br />
<br />
NameVirtualHost 200.135.37.100:80<br />
<VirtualHost 200.135.37.100:80><br />
ServerAdmin webmaster@localhost<br />
ServerName www.teletec.sj.ifsc.edu.br<br />
DocumentRoot /var/www/teletec<br />
<Directory /><br />
Options FollowSymLinks<br />
AllowOverride None<br />
</Directory><br />
<Directory /var/www/><br />
Options Indexes FollowSymLinks MultiViews<br />
AllowOverride None<br />
Order allow,deny<br />
allow from all<br />
</Directory><br />
<br />
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/<br />
<Directory "/usr/lib/cgi-bin"><br />
AllowOverride None<br />
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch<br />
Order allow,deny<br />
Allow from all<br />
</Directory><br />
<br />
ErrorLog ${APACHE_LOG_DIR}/error.log<br />
<br />
# Possible values include: debug, info, notice, warn, error, crit,<br />
# alert, emerg.<br />
LogLevel warn<br />
<br />
CustomLog ${APACHE_LOG_DIR}/access.log combined<br />
<br />
Alias /doc/ "/usr/share/doc/"<br />
<Directory "/usr/share/doc/"><br />
Options Indexes MultiViews FollowSymLinks<br />
AllowOverride None<br />
Order deny,allow<br />
Deny from all<br />
Allow from 127.0.0.0/255.0.0.0 ::1/128<br />
</Directory><br />
<br />
</VirtualHost><br />
<br />
Na criação de um novo cliente vai ser criado um novo arquivo semelhante a esse com duas alterações nas linhas: '''ServerName www.teletec.sj.ifsc.edu.br''' onde vai ser acrescentado na frente do domínio o subdomínio do cliente exemplo: '''ServerName www.subdominio.teletec.sj.ifsc.edu.br''' e na linha '''DocumentRoot /var/www/teletec''' onde vai ser substituido '''teletec''' pelo nome do domínio do cliente por exemplo: '''DocumentRoot /var/www/cliente''' <br />
<br />
<br />
- '''Configuração do servidor POSTFIX'''<br />
<br />
- Primeiro foi feito a instalação com o comando:<br />
<br />
apt-get install postfix<br />
<br />
Em seguida o programa de instalação vai fazer algumas perguntas sobre a localização dos arquivos e alguns parâmetros<br />
<br />
- Configuração do arquivo '''/etc/postfix/main.cf''':<br />
<br />
<br />
# See /usr/share/postfix/main.cf.dist for a commented, more complete version<br />
<br />
<br />
# Debian specific: Specifying a file name will cause the first<br />
# line of that file to be used as the name. The Debian default<br />
# is /etc/mailname.<br />
#myorigin = /etc/mailname<br />
<br />
smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu)<br />
biff = no<br />
<br />
# appending .domain is the MUA's job.<br />
append_dot_mydomain = no<br />
<br />
# Uncomment the next line to generate "delayed mail" warnings<br />
#delay_warning_time = 4h<br />
<br />
readme_directory = no<br />
<br />
# TLS parameters<br />
smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem<br />
smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key<br />
smtpd_use_tls=yes<br />
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache<br />
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache<br />
<br />
# See /usr/share/doc/postfix/TLS_README.gz in the postfix-doc package for<br />
# information on enabling SSL in the smtp client.<br />
<br />
myhostname = mail.teletec.sj.ifsc.edu.br<br />
virtual_alias_maps = hash:/etc/postfix/virtual<br />
alias_database = hash:/etc/aliases<br />
myorigin = $myhostname<br />
mydestination = $myhostname<br />
relayhost = <br />
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128<br />
mailbox_size_limit = 0<br />
recipient_delimiter = +<br />
inet_interfaces = all<br />
mydomain = teletec.sj.ifsc.edu.br<br />
mynetworks_style = subnet<br />
virtual_alias_domains = hash:/etc/postfix/mydomains<br />
<br />
<br />
<br />
- Foi criado o arquivo '''/etc/postfix/virtual'''<br />
<br />
Toda vez que for criado uma nova conta de e-mail vai ser acresentado duas linhas novas nesse arquivo como as que estão em negrito no arquivo abaixo so que onde tem a palavra padrao vai ser substituida pele nome do cliente<br />
<br />
teletec.sj.ifsc.edu.br Principal<br />
<br />
robson.teletec.sj.ifsc.edu.br Subdominio1<br />
robson@robson.teletec.sj.ifsc.edu.br robson<br />
<br />
'''padrao.teletec.sj.ifsc.edu.br padrao'''<br />
'''user@padrao.teletec.sj.ifsc.edu.br user'''<br />
<br />
<br />
- Editar o arquivo mydomains '''/etc/postfix/mydomains'''<br />
<br />
Nesse arquivo tem como primeira linha o dominio e na seguinte o subdominio e toda vez que for criado uma conta nova vai ser acresentado uma linha nova com o nome do subdominio do cliente.<br />
<br />
teletec.sj.ifsc.edu.br OK<br />
robson.teletec.sj.ifsc.edu.br OK<br />
<br />
- Executar os comandos para releitura e reinicialização do Postfix:<br />
<br />
postmap /etc/postfix/virtual<br />
postmap /etc/postfix/mydomains<br />
service postfix restart<br />
<br />
== Instalação de Equipamento de Redes (Modem, Switch e Roteadores) ==<br />
<br />
'''Configurações:'''<br />
<br />
Instalação:<br />
<br />
minicom -s<br />
<br />
Configuração do Roteador Cisco 1700: <br />
<br />
* Configuração dos Dois Roteadores Utilizando a ferramenta "Minicon" (Se fosse Windows seria Hyperterminal)<br />
* Configuração dos dispositivos: Serial e Ethernet<br />
* Configuração como Protocolo PPP<br />
<br />
- ''"Configuração da porta serial":''<br />
<br />
┌─────────────[configuração]──────────────┐<br />
│ Nomes de arquivos e rotas<br />
│ Protocolos de transferência de arquivos<br />
│ Configuração da porta serial<br />
│ Modem e discagem<br />
│ Tela e teclado<br />
│ Salvar configuração como dfl<br />
│ Salvar configuração como<br />
│ Sair<br />
│ Sair do Minicom<br />
└────────────────────────────────────────┘<br />
<br />
- ''"Alteração da Porta Serial"''<br />
┌──────────────────────────────────────────────────────────┐<br />
│ A – Dispositivo Serial : /dev/ttSy0 <br />
│ B – Localização do Arquivo de Travamento : /var/lock<br />
│ C – Programa de Entrada :<br />
│ D – Programa de Saída :<br />
│ E – Bps/Paridade/Bits : 9600 8N1 <br />
│ F – Controle de Fluxo por Hardware : Não<br />
│ G – Controle de Fluxo por Software : Não<br />
│<br />
│ Alterar qual configuração?<br />
└──────────────────────────────────────────────────────────┘<br />
<br />
- ''"Salvar configuração com dfl"''<br />
<br />
- ''Configurando a Interface Serial do Roteador:''<br />
<br />
enable;<br />
configure terminal;<br />
<br />
#Para configurar a interface serial:<br />
interface serial 0;<br />
ip address 10.0.0.1/30;<br />
encapsulation ppp;<br />
exit;<br />
<br />
#Para configurar a interface ethernet:<br />
interface fastethernet 0;<br />
ip address 172.18.0.1/24;<br />
exit;<br />
exit;<br />
<br />
#Para salvar as configurações:<br />
wr;<br />
<br />
'''Radius'''<br />
<br />
Para ter acesso a rede aDSL ou pela rede sem fio será usado Radius para que os usuários sejam autenticados. O RADIUS é um sistema utilizado para prover uma autenticação centralizada em redes dial-up, VPN's (Virtual Private Network) e redes sem fio. Ele tem um modelo cliente-servidor, onde o cliente é o Network Access Server (NAS). Esse servidor é responsável por obter a informação sobre o cliente e repassá-la para o servidor RADIUS, além de interpretar a resposta, dando ou não acesso ao cliente. O servidor RADIUS é responsável por receber pedidos de conexão, autenticar o usuário e repassar ao NAS as informações necessárias para esse dar acesso ao usuário na rede. <br />
<br />
'''Arquivos configurados:''' <br />
<br />
Configurar login e senha para o cliente Radius ( /etc/freeradius<br />
/users ):<br />
<br />
“Usúario” Cleartext-Password := "senha"<br />
“Usúario” User-Password := "senha"<br />
<br />
Teste antes se seu servidor Radius está autenticando usuáriosfaça o seguinte comando no AC PPPoE (que fica em Ac-server): <br />
<br />
radtest seu_usuario sua_senha IP_do_seu_servidor_Radius 1 segredo_do_seu_servidor_Radius<br />
<br />
Configurando o Servidor PPPoe (/etc/ppp/pppoe-servers-options): <br />
<br />
require-chap<br />
auth<br />
lcp-echo-interval 10<br />
lcp-echo-failure 2<br />
ms-dns IP do seu servidor DNS<br />
netmask 255.255.255.0<br />
noipdefault<br />
debug<br />
kdebug 4<br />
plugin radius.so<br />
plugin radattr.so<br />
radius-config-file /etc/radiusclient/teletec.conf<br />
mru 1492<br />
mtu 1492<br />
<br />
Configuração do Cliente Radius ( etc/radiusclient/teletec.conf ):<br />
<br />
auth_order radius<br />
login_tries 4<br />
login_timeout 60<br />
nologin /etc/nologin<br />
issue /etc/radiusclient/issue<br />
authserver 200.135.37.100<br />
acctserver 200.135.37.100<br />
servers /etc/radiusclient/servers<br />
dictionary /etc/radiusclient/dictionary<br />
login_radius /usr/sbin/login.radius<br />
seqfile /var/run/radius.seq<br />
mapfile /etc/radiusclient/port-id-map<br />
default_realm<br />
radius_timeout 10<br />
radius_retries 3<br />
login_local /bin/login<br />
<br />
Configurando o IP do Servidor Radius ( /etc/radiusclient/servers ):<br />
<br />
200.135.37.100 testing123<br />
<br />
Integrando Radius ao Banco de Dados<br />
<br />
Primeiro procedimento, instale o pacote. <br />
<br />
apt-get install freeradius-mysql<br />
Edite o arquivo de configuração do freeradius, e descomente a seguinte linha <br />
( /etc/freeradius/radiusd.conf ): <br />
<br />
$INCLUDE sql.conf<br />
<br />
Para entrar no MySQL execute o comando: <br />
<br />
mysql -u root -p <br />
<br />
Crie uma base de dados somente para o Radius e dê ao usuário Radius a devida permissão para acesso a esta base. No shell do MySQL, execute os comandos: <br />
<br />
CREATE DATABASE radius;<br />
GRANT ALL ON radius.* TO freerad@localhost IDENTIFIED BY "senha_do_usuário_freeradius";<br />
exit;<br />
<br />
Inserindo informações na base de dados: <br />
<br />
mysql -u “usuário” -p “senha do usuário radius” “database” < /etc/freeradius/sql/mysql/schema.sql<br />
mysql -u “usuário” -p “senha do usuário radius” “database” < /etc/freeradius/sql/mysql/nas.sql<br />
<br />
Editar o arquivo /etc/freeradius/sql.conf, colocando a senha do usuário Radius: <br />
<br />
passwrod = "senha do usuário radius"<br />
<br />
E descomente a linha do mesmo arquivo ( /etc/freeradius/sql.conf ) : <br />
<br />
readclients = yes<br />
<br />
Reinicie o FreeRadius: <br />
<br />
service freeradius restart<br />
<br />
== Cabeamento Estruturado ==<br />
<br />
Atividades Concluídas:<br />
<br />
- o A central telefônica ao DSLAM<br />
- o O DSLAM ao armário de telecom da equipe, através de uma linha telefone + DSL<br />
- o armário da equipe a uma área de trabalho. <br />
- O cabeamento permitiu a conexão do modem DSL no armário de telecom.<br />
- As tomadas da área de trabalho para conexão com Telefone e o Modem ADSL.<br />
<br />
== Programação para Redes de Computadores ==<br />
<br />
'''Os Arquivos PHP (pagina Web) Encontram-se dentro da pasta: ''/var/www/teletec'''''<br />
<br />
- Edição do Arquivo '''Verificação.php''':<br />
<br />
Esta pagina PHP verifica se o login e a senha do administrador esta correto.<br />
Se estiver correto vai para a pagina "principal.php" se não volta para "login.php".<br />
<br />
<?<br />
session_start();<br />
$login = $_POST['login'];<br />
$senha = $_POST['senha'];<br />
if ( ( $login == "LOGIN-DO-ADMIN" ) && ( $senha == "SENHA-DO-ADMIN" ) ){<br />
$_SESSION['autorizado'] = $login;<br />
Header ("Location: principal.php");<br />
}else{<br />
Header ("Location: login.php");<br />
}<br />
?><br />
<br />
- Edição do Arquivo '''sair.php''':<br />
<br />
Esta pagina PHP faz o administrador "deslogar" ("logoff") e depois volta para pagina "login.php"<br />
<br />
<?<br />
session_start();<br />
session_destroy();<br />
Header ("Location: login.php");<br />
?><br />
<br />
- Edição do arquivo '''principal.php''': <br />
<br />
Esta é a principal pagina PHP do site, nela verificamos os clientes criados e armazenados no banco de dados, redirecionamos para pagina que modifica os dominios (alterar.php), redirecionamos para pagina que remover os dominios (excluir.php)e tambem redirecionamos para a pagina que adiciona os dominios (adicionar.php).<br />
Quando é redirecionado para pagina de modificação e remoção tambem é enviado uma variavel com o dominio do cliente para saber qual usuario deve ser modificado ou alterado.<br />
<.?<br />
.session_start();<br />
.if (!isset($_SESSION['autorizado'])){<br />
.header ("Location: login.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Administrcao de Dominios</title><br />
<./head><br />
<.body><br />
<.p><a href="sair.php">Sair</a></p><br />
<.p></p><br />
<.p style="text-align:center;margin-left:auto;margin-right:auto;">Cliente Dominio Acao </p><br />
<br />
<.?<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$consulta = "SELECT * from clientes";<br />
$resultado = mysql_query($consulta,$conexao);<br />
while($linha = mysql_fetch_array($resultado)){<br />
$cliente = $linha['cliente'];<br />
$dominio = $linha['dominio'];<br />
.?><br />
<.form><br />
<.p style="text-align:center;margin-left:auto;margin-right:auto;"><br />
<.a name="cliente" id="cliente" href="alterar.php?id=<? echo $linha['dominio'];?>"> <?echo $.linha['cliente'];?></a> <br />
<.? echo $linha['dominio'];?> <a href="excluir.php?id=<? echo $linha['dominio'];?>"> Excluir</a></p><br />
<./form><br />
<.?<br />
.}<br />
.mysql_free_result($resultado);<br />
.mysql_close($conexao);<br />
.}<br />
.?><br />
<.p style="text-align:right;margin-left:auto;margin-right:0;"><br />
<.a href="adicionar.php"><span style="color:#ff0000">Adicionar novo dominio</span></a></p><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''mod-domínio.php''':<br />
<br />
Esta pagina PHP recebe três variaveis com o dominio antigo do clinete, o novo dominio e o novo nome do cliente, estas variaveis são repassadas para o script "mod-dominio.sh" e este é executado modificando o dominio e o nome do cliente, depois de executar o script as informações do banco de dados tambem são modificadas e o serviço APACHE2 é reiniciado.<br />
Após todo este processamento a pagina é redirecionada para 'principal.php".<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$cliente = $_POST['cliente'];<br />
$dominio = $_POST['dominio'];<br />
$antigo = $_POST['antigo'];;<br />
if (empty($dominio)) {<br />
$dominio = "invalido";<br />
} <br />
<br />
if (preg_match('/^[a-z0-9]+/', $dominio)){<br />
}else{<br />
$dominio = "invalido";<br />
} <br />
<br />
$arquivo = '/etc/bind/named.conf';<br />
$linhas = array();<br />
exec("cat $arquivo",$linhas);<br />
for ($i = 0 ; $i < sizeof($linhas); $i++){<br />
if ($linhas[$i] == "include \"/etc/bind/$dominio.conf\";"){<br />
$dominio = "invalido";<br />
}<br />
}<br />
if ($dominio == "invalido"){<br />
header ("Location: alterar.php");<br />
}else{ <br />
<br />
$script = "/etc/teletec/mod-dominio.sh $antigo '$cliente' $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$deletar = "DELETE FROM clientes WHERE dominio='$antigo.teletec.sj.ifsc.edu.br'";<br />
mysql_query($deletar,$conexao);<br />
mysql_close($conexao); <br />
<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$inserir = "INSERT INTO clientes (cliente,dominio) VALUES ('$cliente','$dominio.teletec.sj.ifsc.edu.br')";<br />
mysql_query($inserir,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php"); <br />
<br />
}<br />
.}<br />
?.><br />
<br />
- Edição do Arquivo '''login.php''': <br />
<br />
Esta pagina PHP recolhe o login e a senha fornecidas pelo administrador atraves de um formulario e manda para a pagina PHP de processamento que verifica se esta correto.<br />
.<?<br />
.session_start();<br />
.if (isset($_SESSION['autorizado'])){<br />
.Header ("Location: principal.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Hospedagem Web</title><br />
<./head><br />
<br />
<.body><br />
<.p></p><br />
<.p>Sistemas de Hospedagem de Sitios Web</p><br />
<.p></p><br />
<.form name="formTeste" action="verificacao.php" method="post"><br />
<.p>Usu&#xe1;rio:<br><br />
<.input type="text" name="login"> <br />
<.p>Senha:<br> <br />
<.input type="password" name="senha"> <br />
<.input type="submit" name="b_enviar" value="Entrar"><br />
<./form><br />
<.p></p><br />
<.?<br />
}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''Index.php''':<br />
<br />
Esta pagina apenas redireciona para "login.php"<br />
<.?<br />
Header ("Location: login.php");<br />
.?><br />
<br />
- Edição do Arquivo '''excluir.php''':<br />
<br />
Esta pagina PHP faz uma verificação, se o administrador realmente querer excluir o dominio é mandado o dominio do clinete em uma variavel para a pagina PHP de processamento "del-dominio.php" e a pagina é redirecionada para la, mais se o usuario não quiser escluir é mandado novamente para p pagina "principal.php".<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){ <br />
header ("Location: login.php");<br />
}else{<br />
$id=$_GET['id'];<br />
$parte1 = explode(".", $id);<br />
$antigo = $parte1[0];<br />
?.><br />
<.html><br />
<head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Excluir o cliente</title><br />
<./head><br />
<.body><br />
<.p>Voce realmente deseja excluir o cliente?</p><br />
<br />
<.p><a href="del-dominio.php?id=<?echo $antigo;?>">Sim</a> <a<br />
.href="principal.php">Nao</a></p><br />
<.p></p><br />
<?<br />
}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''del-dominio.php''':<br />
<br />
Esta pagina PHP é uma pagina de processamento que recebe em uma variavel o nome do dominio que sera removido e transfere esta variavel para o script em bash "del-dominio.sh" ja executa o script, depois este dominio é removido do banco de dados e o serviço APACHE2 é reiniciado.<br />
Após todo o processamento a pagina é redirecionada para "principal.php".<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$dominio = $_GET['id'];<br />
$script = "/etc/teletec/del-dominio.sh $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$deletar = "DELETE FROM clientes WHERE dominio='$dominio.teletec.sj.ifsc.edu.br'";<br />
mysql_query($deletar,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php");<br />
}<br />
?.><br />
<br />
- Edição do '''Arquivo alterar.php''': <br />
<br />
Nesta pagina PHP o administrador informa o novo nome do cliente e o novo dominio, estas informações são gravadas em uma variavel que será mandada para a pagina PHP que vai fazer todo o trabalho de processamento (mod-dominio.php).<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){ <br />
header ("Location: login.php");<br />
}else{<br />
$id=$_GET['id'];<br />
$parte1 = explode(".", $id);<br />
$antigo = $parte1[0];<br />
?.><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Alterar Dominio</title><br />
</.head><br />
<.body><br />
<.p><.a href="principal.php">Voltar </a></p><br />
<.form name="formTeste" action="mod-dominio.php" method="post"><br />
<.p>Novo nome do cliente: <br><br />
<.input type="text" name="cliente"><br />
<.p>Novo dominio: <br><br />
<.input type="text" name="dominio"><br />
<.input type="hidden" name="antigo" value="<?echo $antigo;?>"> <br />
<.input type="submit" name="b_enviar" value="Alterar"><br />
<./form><br />
<.?<br />
}<br />
?.><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''adicionar.php''':<br />
<br />
Esta pagina PHP recolhe duas variaveis atraves do formulrios, em uma esta o nome do clinete e na outra o dominio escolhido, estas variaveis são repassadas para a pagina de processamento que vai adicionar este novo subdominio (add-dominio.php).Depois ela é redirecionada para a pagina de processamento "add-dominio.php".<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Adicionar Cliente</title><br />
<./head><br />
<.body><br />
<.p><.a href="principal.php">Voltar </a></p><br />
<.form name="formTeste" action="add-dominio.php" method="post"><br />
<.p>Nome do cliente: <br><br />
<.input type="text" name="cliente"><br />
<.p>Dominio: <br><br />
<.input type="text" name="dominio"><br />
<.input type="submit" name="b_enviar" value="Criar"><br />
<./form><br />
<.?<br />
.}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''add-dominio.php''':<br />
<br />
Esta pagina PHP é uma pagina de processamento que recebe duas variaveis, na primeira esta o nome do dominio que sera removido e na segunda está o dominio do cliente, estas variaveis são transferidas para o script em bash "add-dominio.sh" que é executado, depois este dominio é adicionado no banco de dados e o serviço APACHE2 é reiniciado.<br />
Após todo o processamento a pagina é redirecionada para "principal.php".<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$cliente = $_POST['cliente'];<br />
$dominio = $_POST['dominio']; <br />
<br />
if (empty($dominio)) {<br />
$dominio = "invalido";<br />
} <br />
<br />
if (preg_match('/^[a-z0-9]+/', $dominio)){<br />
}else{<br />
$dominio = "invalido";<br />
} <br />
<br />
$arquivo = '/etc/bind/named.conf';<br />
$linhas = array();<br />
exec("cat $arquivo",$linhas);<br />
for ($i = 0 ; $i < sizeof($linhas); $i++){<br />
if ($linhas[$i] == "include \"/etc/bind/$dominio.conf\";"){<br />
$dominio = "invalido";<br />
}<br />
}<br />
if ($dominio == "invalido"){<br />
header ("Location: adicionar.php");<br />
}else{<br />
$script = "/etc/teletec/add-dominio.sh '$cliente' $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$inserir = "INSERT INTO clientes (cliente,dominio) VALUES ('$cliente','$dominio.teletec.sj.ifsc.edu.br')";<br />
mysql_query($inserir,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php");<br />
}<br />
}<br />
?.><br />
<br />
'''Os Arquivos .sh (scripts que adicionam, removem ou alteram os usuários no servidor) Encontram-se dentro da pasta: ''/etc/teletec''''' <br />
<br />
- Edição do Arquivo '''mod-dominio.sh''':<br />
Script em bash que altera o dominio do cliente (Subdominio, E-mail e Pagina WEB):<br />
<br />
O script de modificação na verdade exclui o dominio criado e cria um novo, os scripts de remover e adicionar estão juntos neste script.<br />
<br />
#!/bin/bash<br />
#Leonardo<br />
#echo -n "Dominio: "<br />
#read antigo<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$antigo'.conf";' ];then<br />
# valido=sim<br />
# break<br />
# else<br />
# valido=nao<br />
# fi<br />
#done<br />
#if [ $valido = nao ];then<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio não existe ou esta em branco.\n"<br />
# exit<br />
#fi<br />
#echo -n "Novo nome para o cliente: "<br />
#read nome<br />
#echo -n "Novo dominio: "<br />
#read dominio<br />
#echo=${dominio:=nulo}<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$dominio'.conf";' ];then<br />
# dominio=existe<br />
# break<br />
# fi<br />
#done<br />
#if [ $dominio != nulo ] && [ $dominio != existe ];then<br />
antigo=$1<br />
nome=$2<br />
dominio=$3<br />
sudo sed -i '/\/etc\/bind\/'$antigo'\.conf/Id' /etc/bind/named.conf<br />
sudo rm /etc/bind/$antigo.conf<br />
sudo rm /etc/bind/$antigo.zone<br />
sudo rm /etc/apache2/sites-enabled/$antigo-default<br />
sudo rm -r /var/www/$antigo<br />
sudo sed -i '/'$antigo'\.teletec\.sj\.ifsc\.edu\.br Subdominio-'$antigo'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$antigo'@teletec\.sj\.ifsc\.edu\.br '$antigo'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$antigo'\.teletec\.sj\.ifsc\.edu\.br OK/Id' /etc/postfix/mydomains <br />
sudo userdel -r $antigo <br />
<br />
sudo echo 'include "/etc/bind/'$dominio'.conf";' >> /etc/bind/named.conf<br />
numero=`date | cut -d ":" -f 3 | cut -d " " -f 1`<br />
novoserial=$((1000000000+$numero))<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.conf > /etc/bind/$dominio.conf<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.zone | sed s/2011061504/$novoserial/g > /etc/bind/$dominio.zone<br />
sudo /etc/init.d/bind9 restart<br />
sudo sed s/padrao/$dominio/g /etc/apache2/sites-available/padrao-default > /etc/apache2/sites-enabled/$dominio-default<br />
mkdir /var/www/$dominio<br />
sed s/dominio/$dominio/g /var/www/padrao/index.html | sed s/nome/"$nome"/g > /var/www/$dominio/index.html<br />
sudo echo ' ' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br Subdominio-'$dominio'' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'@teletec.sj.ifsc.edu.br '$dominio'' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br OK' >> /etc/postfix/mydomains<br />
sudo postmap /etc/postfix/virtual<br />
sudo postmap /etc/postfix/mydomains<br />
sudo /etc/init.d/postfix restart<br />
# echo -e " * Dominio modificado com sucesso!\t\t\t\t[ OK ]\n"<br />
# else<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio ja existe ou esta em branco.\n"<br />
#fi<br />
<br />
- Edição do Arquivo '''del-dominio.sh''':<br />
Script em bash que remove o cliente (Subdominio, E-mail e Pagina WEB):<br />
<br />
Exclui todos os arquivos de configuração criados para este cliente e retira as linhas de configuração adicionadas em arquivos como o "named.conf", "virtual" e "mydomains", por ultimo os serviçoes DNS e POSTFIX são reiniciados ( o APACHE2 é reiniciado na pagina PHP).Também é removido o usuario criado no servidor.<br />
<br />
#!/bin/bash<br />
#Leonardo<br />
#echo -n "Dominio: "<br />
#read dominio<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$dominio'.conf";' ];then<br />
dominio=$1<br />
sudo sed -i '/\/etc\/bind\/'$dominio'\.conf/Id' /etc/bind/named.conf<br />
sudo rm /etc/bind/$dominio.conf<br />
sudo rm /etc/bind/$dominio.zone<br />
sudo /etc/init.d/bind9 restart<br />
sudo rm /etc/apache2/sites-enabled/$dominio-default<br />
sudo rm -r /var/www/$dominio<br />
sudo userdel -r $dominio<br />
sudo sed -i '/'$dominio'\.teletec\.sj\.ifsc\.edu\.br Subdominio-'$dominio'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$dominio'@teletec\.sj\.ifsc\.edu\.br '$dominio'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$dominio'\.teletec\.sj\.ifsc\.edu\.br OK/Id' /etc/postfix/mydomains<br />
sudo postmap /etc/postfix/virtual<br />
sudo postmap /etc/postfix/mydomains<br />
sudo /etc/init.d/postfix restart<br />
# echo -e " * Dominio removido com sucesso!\t\t\t\t[ OK ]\n"<br />
# exit<br />
# fi<br />
#done<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio não existe ou esta em branco.\n"<br />
<br />
- Edição do Arquivo '''add-dominio.sh''': <br />
Script em bash que adiciona o cliente (Subdominio, E-mail e Pagina WEB):<br />
<br />
Sub-dominio: O script pega como base arquivos padrões ja criados e configurados ( padrao.conf e padrao.zone ), altera todas as palavras "padrao" destes arvivos pelo dominio escolhido pelo usuario e salva como "dominio-escolhido".zone e "dominio-escolhido".conf. Alem disso ele tambem inclui o caminho do arquivo de configuração ".conf" no "named.conf".<br />
<br />
Pagina-Web: Assim como no sub-dominio, o script troca as palavras "padrao" que estão em um arquivo padrao de configuração ( padrao-default) pelo dominio escolhido pelo cliente, criando um novo arquivo de configuração com nome "dominio-escolhido"-default. Tambem cria uma pagina web html padrao.<br />
<br />
E-mail: O script adiciona as linhas de configuração do e-mail do cliente nos arquivos "virtual" e "mydomains". Também é criado um usuario no servidor com login e senha igual ao dominio escolhido.<br />
<br />
Após fazer as confgurações o script reinicia o DNS e o POSTFIX. (o APACHE2 é reiniciado na pagina PHP).<br />
<br />
#!/bin/bash<br />
# Leonardo<br />
#echo -n "Nome do cliente: "<br />
#read nome<br />
#echo -n "Dominio: " <br />
#read dominio<br />
#echo=${dominio:=nulo}<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$dominio'.conf";' ];then<br />
# dominio=existe<br />
# break<br />
# fi <br />
#done<br />
#<br />
#if [ $dominio != nulo ] && [ $dominio != existe ];then<br />
nome=$1<br />
dominio=$2<br />
sudo echo 'include "/etc/bind/'$dominio'.conf";' >> /etc/bind/named.conf<br />
numero=`date | cut -d ":" -f 3 | cut -d " " -f 1`<br />
novoserial=$((1000000000+$numero))<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.conf > /etc/bind/$dominio.conf<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.zone | sed s/2011061504/$novoserial/g > /etc/bind/$dominio.zone<br />
sudo /etc/init.d/bind9 restart<br />
sudo sed s/padrao/$dominio/g /etc/apache2/sites-available/padrao-default > /etc/apache2/sites-enabled/$dominio-default<br />
sudo mkdir /var/www/$dominio<br />
sudo sed s/dominio/$dominio/g /var/www/padrao/index.html | sed s/nome/"$nome"/g > /var/www/$dominio/index.html<br />
sudo useradd -md /home/$dominio $dominio<br />
sudo usermod -p $(openssl passwd -1 $dominio) $dominio<br />
sudo echo ' ' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br Subdominio-'$dominio'' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'@teletec.sj.ifsc.edu.br '$dominio'' >> /etc/postfix/virtual <br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br OK' >> /etc/postfix/mydomains<br />
sudo postmap /etc/postfix/virtual<br />
sudo postmap /etc/postfix/mydomains<br />
sudo /etc/init.d/postfix restart<br />
# echo -e " * Dominio criado com sucesso!\t\t\t\t[ OK ]\n"<br />
# else<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio ja existe ou esta em branco.\n"<br />
#fi</div>Vagner.chttps://wiki.sj.ifsc.edu.br/index.php?title=Projeto_Integrador_-_2011.1_-_Teletec&diff=34845Projeto Integrador - 2011.1 - Teletec2011-07-10T22:01:43Z<p>Vagner.c: /* SOBRE A EMPRESA TELETEC - PROVEDORA DE ACESSO Á INTERNET: */</p>
<hr />
<div>== * '''Equipe 2 : TELETEC''' ==<br />
<br />
----<br />
<br />
== INTEGRANTES TELETEC ==<br />
<br />
* '''Daniel Estefano'''; estefano.daniel@gmail.com <br />
* '''Denis Teixeira'''; denisteixeira3@gmail.com <br />
* '''Leonardo Oliveira P.'''; leonardo-op@live.com <br />
* '''Odair de Moraes'''; odairdmoraes@hotmail.com<br />
* '''Robson de Carvalho'''; rob_carvalho12@hotmail.com<br />
* '''Vagner Cordeiro.''' cordeirotelecom@gmail.com<br />
<br />
----<br />
<br />
== '''SOBRE A EMPRESA TELETEC - PROVEDORA DE ACESSO Á INTERNET:''' == <br />
<br />
Empresa especializada no ramo das Telecomunicações Oferece os seguintes serviços: <br />
<br />
# Conta de Usuário para cada cliente;<br />
# Conta de E-mail para cada cliente;<br />
# Uma página Web Padrão;<br />
# Instalação do Modem ADSL e do Cabeamento Estrurado;<br />
# Acesso Wirelles;<br />
# Suporte 24Horas. <br />
<br />
Contamos com 6 Técnicos em Telecomunicações especialistas no setor de redes para todo o suporte necessário.<br />
Contate um de nossos especialistas através do e-mail teletecifsc.googlegroups.com e faça já seu orçamento.<br />
<br />
== Etapas Iniciais de Configurações da Rede ==<br />
<br />
<br />
# Instalação do Sistema Operacional:Ubuntu-Server;<br />
# Definido Sistema de Arquivo, Dividido em 3 Partições: ''1 Partição Primátia, 1 Partição Secundária e uma Partição para Swap;'' <br />
# Definido nome do Domínio: teletec.sj.ifsc.edu.br;<br />
# Criado um Usuário: Tecnico;<br />
# Acesso via SSH ao Servidor Teletec.<br />
<br />
----<br />
<br />
== Gerencia de Redes: Apache, Postfix e DNS ==<br />
<br />
'''Configurações do servidor DNS:''' <br />
<br />
- Edição do Arquivo para IP Estático: '''/etc/network/interfaces''' <br />
<br />
# This file describes the network interfaces available on your system<br />
# and how to activate them. For more information, see interfaces(5).<br />
# The loopback network interface<br />
auto lo<br />
iface lo inet loopback<br />
# The primary network interface<br />
auto eth0<br />
iface eth0 inet static<br />
address 200.135.37.100<br />
netmask 255.255.255.192<br />
gateway 200.135.37.126 <br />
<br />
- Edição do Arquivo do servidor DNS '''/etc/bind/named.conf''' <br />
<br />
Indica todos os arquivos que vai fazer a configuração dele<br />
<br />
// This is the primary configuration file for the BIND DNS server named.<br />
//<br />
// Please read /usr/share/doc/bind9/README.Debian.gz for information on the <br />
// structure of BIND configuration files in Debian, *BEFORE* you customize <br />
// this configuration file.<br />
//<br />
// If you are just adding zones, please do that in /etc/bind/named.conf.local<br />
include "/etc/bind/named.conf.options";<br />
include "/etc/bind/named.conf.local";<br />
include "/etc/bind/named.conf.default-zones";<br />
include "/etc/bind/servidor.conf";<br />
include "/etc/bind/tecnico.conf";<br />
include "/etc/bind/daniel.conf";<br />
<br />
- Edição do Arquivo de servidor DNS: named.conf.local '''/etc/bind/named.conf.local'''<br />
É um arquivo padrão do BIND onde foi configurado o o nosso dominino TELETEC.<br />
<br />
//<br />
// Do any local configuration here<br />
//<br />
<br />
// Consider adding the 1918 zones here, if they are not used in your<br />
// organization<br />
//include "/etc/bind/zones.rfc1918"8;<br />
zone "teletec.sj.ifsc.edu.br." IN {<br />
type master;<br />
file "/etc/bind/teletec.zone";<br />
allow-update { none; };<br />
};<br />
<br />
- Edição do Arquivo de DNS Reverso: '''/etc/bind/37.135.200.in-addr.arpa'''<br />
O DNS Reverso resolve um endereço IP para um nome de servidor – por exemplo, ele poderia resolver 200.176.3.142 para exemplo.hipotetico.com.br.<br />
<br />
$TTL 86400<br />
@ IN SOA servidor.teletec.sj.ifsc.edu.br. root (<br />
2011061500 ;<br />
1d ;<br />
1h ;<br />
1w ; <br />
1d ;<br />
)<br />
IN NS servidor.teletec.sj.ifsc.edu.br.<br />
100 IN PTR servidor.teletec.sj.ifsc.edu.br.<br />
<br />
- Edição do Arquivo para criar um subdomínio:'''/etc/bind/teletec.zone'''<br />
Arquivo que traz todas as configurações de cada subdomínio. <br />
<br />
$TTL 86400<br />
@ IN SOA teletec.teletec.sj.ifsc.edu.br root (<br />
2011062901;<br />
3H;<br />
15M;<br />
1W;<br />
1D );<br />
IN NS teletec.teletec.sj.ifsc.edu.br.<br />
IN MX 0 mail.teletec.sj.ifsc.edu.br.<br />
localhost IN A 127.0.0.1<br />
$ORIGIN teletec.sj.ifsc.edu.br.<br />
teletec A 200.135.37.100<br />
www A 200.135.37.100<br />
mail A 200.135.37.100<br />
<br />
- '''Configuração do servidor Apache'''<br />
<br />
No servidor Apache foi feito a instalação com o comando:<br />
<br />
apt-get install apache2<br />
<br />
- Configuração do arquivo '''/etc/apache2/sites-enabled/teletec-default'''<br />
<br />
NameVirtualHost 200.135.37.100:80<br />
<VirtualHost 200.135.37.100:80><br />
ServerAdmin webmaster@localhost<br />
ServerName www.teletec.sj.ifsc.edu.br<br />
DocumentRoot /var/www/teletec<br />
<Directory /><br />
Options FollowSymLinks<br />
AllowOverride None<br />
</Directory><br />
<Directory /var/www/><br />
Options Indexes FollowSymLinks MultiViews<br />
AllowOverride None<br />
Order allow,deny<br />
allow from all<br />
</Directory><br />
<br />
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/<br />
<Directory "/usr/lib/cgi-bin"><br />
AllowOverride None<br />
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch<br />
Order allow,deny<br />
Allow from all<br />
</Directory><br />
<br />
ErrorLog ${APACHE_LOG_DIR}/error.log<br />
<br />
# Possible values include: debug, info, notice, warn, error, crit,<br />
# alert, emerg.<br />
LogLevel warn<br />
<br />
CustomLog ${APACHE_LOG_DIR}/access.log combined<br />
<br />
Alias /doc/ "/usr/share/doc/"<br />
<Directory "/usr/share/doc/"><br />
Options Indexes MultiViews FollowSymLinks<br />
AllowOverride None<br />
Order deny,allow<br />
Deny from all<br />
Allow from 127.0.0.0/255.0.0.0 ::1/128<br />
</Directory><br />
<br />
</VirtualHost><br />
<br />
Na criação de um novo cliente vai ser criado um novo arquivo semelhante a esse com duas alterações nas linhas: '''ServerName www.teletec.sj.ifsc.edu.br''' onde vai ser acrescentado na frente do domínio o subdomínio do cliente exemplo: '''ServerName www.subdominio.teletec.sj.ifsc.edu.br''' e na linha '''DocumentRoot /var/www/teletec''' onde vai ser substituido '''teletec''' pelo nome do domínio do cliente por exemplo: '''DocumentRoot /var/www/cliente''' <br />
<br />
<br />
- '''Configuração do servidor POSTFIX'''<br />
<br />
- Primeiro foi feito a instalação com o comando:<br />
<br />
apt-get install postfix<br />
<br />
Em seguida o programa de instalação vai fazer algumas perguntas sobre a localização dos arquivos e alguns parâmetros<br />
<br />
- Configuração do arquivo '''/etc/postfix/main.cf''':<br />
<br />
<br />
# See /usr/share/postfix/main.cf.dist for a commented, more complete version<br />
<br />
<br />
# Debian specific: Specifying a file name will cause the first<br />
# line of that file to be used as the name. The Debian default<br />
# is /etc/mailname.<br />
#myorigin = /etc/mailname<br />
<br />
smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu)<br />
biff = no<br />
<br />
# appending .domain is the MUA's job.<br />
append_dot_mydomain = no<br />
<br />
# Uncomment the next line to generate "delayed mail" warnings<br />
#delay_warning_time = 4h<br />
<br />
readme_directory = no<br />
<br />
# TLS parameters<br />
smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem<br />
smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key<br />
smtpd_use_tls=yes<br />
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache<br />
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache<br />
<br />
# See /usr/share/doc/postfix/TLS_README.gz in the postfix-doc package for<br />
# information on enabling SSL in the smtp client.<br />
<br />
myhostname = mail.teletec.sj.ifsc.edu.br<br />
virtual_alias_maps = hash:/etc/postfix/virtual<br />
alias_database = hash:/etc/aliases<br />
myorigin = $myhostname<br />
mydestination = $myhostname<br />
relayhost = <br />
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128<br />
mailbox_size_limit = 0<br />
recipient_delimiter = +<br />
inet_interfaces = all<br />
mydomain = teletec.sj.ifsc.edu.br<br />
mynetworks_style = subnet<br />
virtual_alias_domains = hash:/etc/postfix/mydomains<br />
<br />
<br />
<br />
- Foi criado o arquivo '''/etc/postfix/virtual'''<br />
<br />
Toda vez que for criado uma nova conta de e-mail vai ser acresentado duas linhas novas nesse arquivo como as que estão em negrito no arquivo abaixo so que onde tem a palavra padrao vai ser substituida pele nome do cliente<br />
<br />
teletec.sj.ifsc.edu.br Principal<br />
<br />
robson.teletec.sj.ifsc.edu.br Subdominio1<br />
robson@robson.teletec.sj.ifsc.edu.br robson<br />
<br />
'''padrao.teletec.sj.ifsc.edu.br padrao'''<br />
'''user@padrao.teletec.sj.ifsc.edu.br user'''<br />
<br />
<br />
- Editar o arquivo mydomains '''/etc/postfix/mydomains'''<br />
<br />
Nesse arquivo tem como primeira linha o dominio e na seguinte o subdominio e toda vez que for criado uma conta nova vai ser acresentado uma linha nova com o nome do subdominio do cliente.<br />
<br />
teletec.sj.ifsc.edu.br OK<br />
robson.teletec.sj.ifsc.edu.br OK<br />
<br />
- Executar os comandos para releitura e reinicialização do Postfix:<br />
<br />
postmap /etc/postfix/virtual<br />
postmap /etc/postfix/mydomains<br />
service postfix restart<br />
<br />
== Instalação de Equipamento de Redes (Modem, Switch e Roteadores) ==<br />
<br />
'''Configurações:'''<br />
<br />
Instalação:<br />
<br />
minicom -s<br />
<br />
Configuração do Roteador Cisco 1700: <br />
<br />
* Configuração dos Dois Roteadores Utilizando a ferramenta "Minicon" (Se fosse Windows seria Hyperterminal)<br />
* Configuração dos dispositivos: Serial e Ethernet<br />
* Configuração como Protocolo PPP<br />
<br />
- ''"Configuração da porta serial":''<br />
<br />
┌─────────────[configuração]──────────────┐<br />
│ Nomes de arquivos e rotas<br />
│ Protocolos de transferência de arquivos<br />
│ Configuração da porta serial<br />
│ Modem e discagem<br />
│ Tela e teclado<br />
│ Salvar configuração como dfl<br />
│ Salvar configuração como<br />
│ Sair<br />
│ Sair do Minicom<br />
└────────────────────────────────────────┘<br />
<br />
- ''"Alteração da Porta Serial"''<br />
┌──────────────────────────────────────────────────────────┐<br />
│ A – Dispositivo Serial : /dev/ttSy0 <br />
│ B – Localização do Arquivo de Travamento : /var/lock<br />
│ C – Programa de Entrada :<br />
│ D – Programa de Saída :<br />
│ E – Bps/Paridade/Bits : 9600 8N1 <br />
│ F – Controle de Fluxo por Hardware : Não<br />
│ G – Controle de Fluxo por Software : Não<br />
│<br />
│ Alterar qual configuração?<br />
└──────────────────────────────────────────────────────────┘<br />
<br />
- ''"Salvar configuração com dfl"''<br />
<br />
- ''Configurando a Interface Serial do Roteador:''<br />
<br />
enable;<br />
configure terminal;<br />
<br />
#Para configurar a interface serial:<br />
interface serial 0;<br />
ip address 10.0.0.1/30;<br />
encapsulation ppp;<br />
exit;<br />
<br />
#Para configurar a interface ethernet:<br />
interface fastethernet 0;<br />
ip address 172.18.0.1/24;<br />
exit;<br />
exit;<br />
<br />
#Para salvar as configurações:<br />
wr;<br />
<br />
'''Radius'''<br />
<br />
Para ter acesso a rede aDSL ou pela rede sem fio será usado Radius para que os usuários sejam autenticados. O RADIUS é um sistema utilizado para prover uma autenticação centralizada em redes dial-up, VPN's (Virtual Private Network) e redes sem fio. Ele tem um modelo cliente-servidor, onde o cliente é o Network Access Server (NAS). Esse servidor é responsável por obter a informação sobre o cliente e repassá-la para o servidor RADIUS, além de interpretar a resposta, dando ou não acesso ao cliente. O servidor RADIUS é responsável por receber pedidos de conexão, autenticar o usuário e repassar ao NAS as informações necessárias para esse dar acesso ao usuário na rede. <br />
<br />
'''Arquivos configurados:''' <br />
<br />
Configurar login e senha para o cliente Radius ( /etc/freeradius<br />
/users ):<br />
<br />
“Usúario” Cleartext-Password := "senha"<br />
“Usúario” User-Password := "senha"<br />
<br />
Teste antes se seu servidor Radius está autenticando usuáriosfaça o seguinte comando no AC PPPoE (que fica em Ac-server): <br />
<br />
radtest seu_usuario sua_senha IP_do_seu_servidor_Radius 1 segredo_do_seu_servidor_Radius<br />
<br />
Configurando o Servidor PPPoe (/etc/ppp/pppoe-servers-options): <br />
<br />
require-chap<br />
auth<br />
lcp-echo-interval 10<br />
lcp-echo-failure 2<br />
ms-dns IP do seu servidor DNS<br />
netmask 255.255.255.0<br />
noipdefault<br />
debug<br />
kdebug 4<br />
plugin radius.so<br />
plugin radattr.so<br />
radius-config-file /etc/radiusclient/teletec.conf<br />
mru 1492<br />
mtu 1492<br />
<br />
Configuração do Cliente Radius ( etc/radiusclient/teletec.conf ):<br />
<br />
auth_order radius<br />
login_tries 4<br />
login_timeout 60<br />
nologin /etc/nologin<br />
issue /etc/radiusclient/issue<br />
authserver 200.135.37.100<br />
acctserver 200.135.37.100<br />
servers /etc/radiusclient/servers<br />
dictionary /etc/radiusclient/dictionary<br />
login_radius /usr/sbin/login.radius<br />
seqfile /var/run/radius.seq<br />
mapfile /etc/radiusclient/port-id-map<br />
default_realm<br />
radius_timeout 10<br />
radius_retries 3<br />
login_local /bin/login<br />
<br />
Configurando o IP do Servidor Radius ( /etc/radiusclient/servers ):<br />
<br />
200.135.37.100 testing123<br />
<br />
Integrando Radius ao Banco de Dados<br />
<br />
Primeiro procedimento, instale o pacote. <br />
<br />
apt-get install freeradius-mysql<br />
Edite o arquivo de configuração do freeradius, e descomente a seguinte linha <br />
( /etc/freeradius/radiusd.conf ): <br />
<br />
$INCLUDE sql.conf<br />
<br />
Para entrar no MySQL execute o comando: <br />
<br />
mysql -u root -p <br />
<br />
Crie uma base de dados somente para o Radius e dê ao usuário Radius a devida permissão para acesso a esta base. No shell do MySQL, execute os comandos: <br />
<br />
CREATE DATABASE radius;<br />
GRANT ALL ON radius.* TO freerad@localhost IDENTIFIED BY "senha_do_usuário_freeradius";<br />
exit;<br />
<br />
Inserindo informações na base de dados: <br />
<br />
mysql -u “usuário” -p “senha do usuário radius” “database” < /etc/freeradius/sql/mysql/schema.sql<br />
mysql -u “usuário” -p “senha do usuário radius” “database” < /etc/freeradius/sql/mysql/nas.sql<br />
<br />
Editar o arquivo /etc/freeradius/sql.conf, colocando a senha do usuário Radius: <br />
<br />
passwrod = "senha do usuário radius"<br />
<br />
E descomente a linha do mesmo arquivo ( /etc/freeradius/sql.conf ) : <br />
<br />
readclients = yes<br />
<br />
Reinicie o FreeRadius: <br />
<br />
service freeradius restart<br />
<br />
== Cabeamento Estruturado ==<br />
<br />
Atividades Concluídas:<br />
<br />
- o A central telefônica ao DSLAM<br />
- o O DSLAM ao armário de telecom da equipe, através de uma linha telefone + DSL<br />
- o armário da equipe a uma área de trabalho. <br />
- O cabeamento permitiu a conexão do modem DSL no armário de telecom.<br />
- As tomadas da área de trabalho para conexão com Telefone e o Modem ADSL.<br />
<br />
== Programação para Redes de Computadores ==<br />
<br />
'''Os Arquivos PHP (pagina Web) Encontram-se dentro da pasta: ''/var/www/teletec'''''<br />
<br />
- Edição do Arquivo '''Verificação.php''':<br />
<br />
Esta pagina PHP verifica se o login e a senha do administrador esta correto.<br />
Se estiver correto vai para a pagina "principal.php" se não volta para "login.php".<br />
<br />
<?<br />
session_start();<br />
$login = $_POST['login'];<br />
$senha = $_POST['senha'];<br />
if ( ( $login == "LOGIN-DO-ADMIN" ) && ( $senha == "SENHA-DO-ADMIN" ) ){<br />
$_SESSION['autorizado'] = $login;<br />
Header ("Location: principal.php");<br />
}else{<br />
Header ("Location: login.php");<br />
}<br />
?><br />
<br />
- Edição do Arquivo '''sair.php''':<br />
<br />
Esta pagina PHP faz o administrador "deslogar" ("logoff") e depois volta para pagina "login.php"<br />
<br />
<?<br />
session_start();<br />
session_destroy();<br />
Header ("Location: login.php");<br />
?><br />
<br />
- Edição do arquivo '''principal.php''': <br />
<br />
Esta é a principal pagina PHP do site, nela verificamos os clientes criados e armazenados no banco de dados, redirecionamos para pagina que modifica os dominios (alterar.php), redirecionamos para pagina que remover os dominios (excluir.php)e tambem redirecionamos para a pagina que adiciona os dominios (adicionar.php).<br />
Quando é redirecionado para pagina de modificação e remoção tambem é enviado uma variavel com o dominio do cliente para saber qual usuario deve ser modificado ou alterado.<br />
<.?<br />
.session_start();<br />
.if (!isset($_SESSION['autorizado'])){<br />
.header ("Location: login.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Administrcao de Dominios</title><br />
<./head><br />
<.body><br />
<.p><a href="sair.php">Sair</a></p><br />
<.p></p><br />
<.p style="text-align:center;margin-left:auto;margin-right:auto;">Cliente Dominio Acao </p><br />
<br />
<.?<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$consulta = "SELECT * from clientes";<br />
$resultado = mysql_query($consulta,$conexao);<br />
while($linha = mysql_fetch_array($resultado)){<br />
$cliente = $linha['cliente'];<br />
$dominio = $linha['dominio'];<br />
.?><br />
<.form><br />
<.p style="text-align:center;margin-left:auto;margin-right:auto;"><br />
<.a name="cliente" id="cliente" href="alterar.php?id=<? echo $linha['dominio'];?>"> <?echo $.linha['cliente'];?></a> <br />
<.? echo $linha['dominio'];?> <a href="excluir.php?id=<? echo $linha['dominio'];?>"> Excluir</a></p><br />
<./form><br />
<.?<br />
.}<br />
.mysql_free_result($resultado);<br />
.mysql_close($conexao);<br />
.}<br />
.?><br />
<.p style="text-align:right;margin-left:auto;margin-right:0;"><br />
<.a href="adicionar.php"><span style="color:#ff0000">Adicionar novo dominio</span></a></p><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''mod-domínio.php''':<br />
<br />
Esta pagina PHP recebe três variaveis com o dominio antigo do clinete, o novo dominio e o novo nome do cliente, estas variaveis são repassadas para o script "mod-dominio.sh" e este é executado modificando o dominio e o nome do cliente, depois de executar o script as informações do banco de dados tambem são modificadas e o serviço APACHE2 é reiniciado.<br />
Após todo este processamento a pagina é redirecionada para 'principal.php".<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$cliente = $_POST['cliente'];<br />
$dominio = $_POST['dominio'];<br />
$antigo = $_POST['antigo'];;<br />
if (empty($dominio)) {<br />
$dominio = "invalido";<br />
} <br />
<br />
if (preg_match('/^[a-z0-9]+/', $dominio)){<br />
}else{<br />
$dominio = "invalido";<br />
} <br />
<br />
$arquivo = '/etc/bind/named.conf';<br />
$linhas = array();<br />
exec("cat $arquivo",$linhas);<br />
for ($i = 0 ; $i < sizeof($linhas); $i++){<br />
if ($linhas[$i] == "include \"/etc/bind/$dominio.conf\";"){<br />
$dominio = "invalido";<br />
}<br />
}<br />
if ($dominio == "invalido"){<br />
header ("Location: alterar.php");<br />
}else{ <br />
<br />
$script = "/etc/teletec/mod-dominio.sh $antigo '$cliente' $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$deletar = "DELETE FROM clientes WHERE dominio='$antigo.teletec.sj.ifsc.edu.br'";<br />
mysql_query($deletar,$conexao);<br />
mysql_close($conexao); <br />
<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$inserir = "INSERT INTO clientes (cliente,dominio) VALUES ('$cliente','$dominio.teletec.sj.ifsc.edu.br')";<br />
mysql_query($inserir,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php"); <br />
<br />
}<br />
.}<br />
?.><br />
<br />
- Edição do Arquivo '''login.php''': <br />
<br />
Esta pagina PHP recolhe o login e a senha fornecidas pelo administrador atraves de um formulario e manda para a pagina PHP de processamento que verifica se esta correto.<br />
.<?<br />
.session_start();<br />
.if (isset($_SESSION['autorizado'])){<br />
.Header ("Location: principal.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Hospedagem Web</title><br />
<./head><br />
<br />
<.body><br />
<.p></p><br />
<.p>Sistemas de Hospedagem de Sitios Web</p><br />
<.p></p><br />
<.form name="formTeste" action="verificacao.php" method="post"><br />
<.p>Usu&#xe1;rio:<br><br />
<.input type="text" name="login"> <br />
<.p>Senha:<br> <br />
<.input type="password" name="senha"> <br />
<.input type="submit" name="b_enviar" value="Entrar"><br />
<./form><br />
<.p></p><br />
<.?<br />
}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''Index.php''':<br />
<br />
Esta pagina apenas redireciona para "login.php"<br />
<.?<br />
Header ("Location: login.php");<br />
.?><br />
<br />
- Edição do Arquivo '''excluir.php''':<br />
<br />
Esta pagina PHP faz uma verificação, se o administrador realmente querer excluir o dominio é mandado o dominio do clinete em uma variavel para a pagina PHP de processamento "del-dominio.php" e a pagina é redirecionada para la, mais se o usuario não quiser escluir é mandado novamente para p pagina "principal.php".<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){ <br />
header ("Location: login.php");<br />
}else{<br />
$id=$_GET['id'];<br />
$parte1 = explode(".", $id);<br />
$antigo = $parte1[0];<br />
?.><br />
<.html><br />
<head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Excluir o cliente</title><br />
<./head><br />
<.body><br />
<.p>Voce realmente deseja excluir o cliente?</p><br />
<br />
<.p><a href="del-dominio.php?id=<?echo $antigo;?>">Sim</a> <a<br />
.href="principal.php">Nao</a></p><br />
<.p></p><br />
<?<br />
}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''del-dominio.php''':<br />
<br />
Esta pagina PHP é uma pagina de processamento que recebe em uma variavel o nome do dominio que sera removido e transfere esta variavel para o script em bash "del-dominio.sh" ja executa o script, depois este dominio é removido do banco de dados e o serviço APACHE2 é reiniciado.<br />
Após todo o processamento a pagina é redirecionada para "principal.php".<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$dominio = $_GET['id'];<br />
$script = "/etc/teletec/del-dominio.sh $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$deletar = "DELETE FROM clientes WHERE dominio='$dominio.teletec.sj.ifsc.edu.br'";<br />
mysql_query($deletar,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php");<br />
}<br />
?.><br />
<br />
- Edição do '''Arquivo alterar.php''': <br />
<br />
Nesta pagina PHP o administrador informa o novo nome do cliente e o novo dominio, estas informações são gravadas em uma variavel que será mandada para a pagina PHP que vai fazer todo o trabalho de processamento (mod-dominio.php).<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){ <br />
header ("Location: login.php");<br />
}else{<br />
$id=$_GET['id'];<br />
$parte1 = explode(".", $id);<br />
$antigo = $parte1[0];<br />
?.><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Alterar Dominio</title><br />
</.head><br />
<.body><br />
<.p><.a href="principal.php">Voltar </a></p><br />
<.form name="formTeste" action="mod-dominio.php" method="post"><br />
<.p>Novo nome do cliente: <br><br />
<.input type="text" name="cliente"><br />
<.p>Novo dominio: <br><br />
<.input type="text" name="dominio"><br />
<.input type="hidden" name="antigo" value="<?echo $antigo;?>"> <br />
<.input type="submit" name="b_enviar" value="Alterar"><br />
<./form><br />
<.?<br />
}<br />
?.><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''adicionar.php''':<br />
<br />
Esta pagina PHP recolhe duas variaveis atraves do formulrios, em uma esta o nome do clinete e na outra o dominio escolhido, estas variaveis são repassadas para a pagina de processamento que vai adicionar este novo subdominio (add-dominio.php).Depois ela é redirecionada para a pagina de processamento "add-dominio.php".<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Adicionar Cliente</title><br />
<./head><br />
<.body><br />
<.p><.a href="principal.php">Voltar </a></p><br />
<.form name="formTeste" action="add-dominio.php" method="post"><br />
<.p>Nome do cliente: <br><br />
<.input type="text" name="cliente"><br />
<.p>Dominio: <br><br />
<.input type="text" name="dominio"><br />
<.input type="submit" name="b_enviar" value="Criar"><br />
<./form><br />
<.?<br />
.}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''add-dominio.php''':<br />
<br />
Esta pagina PHP é uma pagina de processamento que recebe duas variaveis, na primeira esta o nome do dominio que sera removido e na segunda está o dominio do cliente, estas variaveis são transferidas para o script em bash "add-dominio.sh" que é executado, depois este dominio é adicionado no banco de dados e o serviço APACHE2 é reiniciado.<br />
Após todo o processamento a pagina é redirecionada para "principal.php".<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$cliente = $_POST['cliente'];<br />
$dominio = $_POST['dominio']; <br />
<br />
if (empty($dominio)) {<br />
$dominio = "invalido";<br />
} <br />
<br />
if (preg_match('/^[a-z0-9]+/', $dominio)){<br />
}else{<br />
$dominio = "invalido";<br />
} <br />
<br />
$arquivo = '/etc/bind/named.conf';<br />
$linhas = array();<br />
exec("cat $arquivo",$linhas);<br />
for ($i = 0 ; $i < sizeof($linhas); $i++){<br />
if ($linhas[$i] == "include \"/etc/bind/$dominio.conf\";"){<br />
$dominio = "invalido";<br />
}<br />
}<br />
if ($dominio == "invalido"){<br />
header ("Location: adicionar.php");<br />
}else{<br />
$script = "/etc/teletec/add-dominio.sh '$cliente' $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$inserir = "INSERT INTO clientes (cliente,dominio) VALUES ('$cliente','$dominio.teletec.sj.ifsc.edu.br')";<br />
mysql_query($inserir,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php");<br />
}<br />
}<br />
?.><br />
<br />
'''Os Arquivos .sh (scripts que adicionam, removem ou alteram os usuários no servidor) Encontram-se dentro da pasta: ''/etc/teletec''''' <br />
<br />
- Edição do Arquivo '''mod-dominio.sh''':<br />
Script em bash que altera o dominio do cliente (Subdominio, E-mail e Pagina WEB):<br />
<br />
O script de modificação na verdade exclui o dominio criado e cria um novo, os scripts de remover e adicionar estão juntos neste script.<br />
<br />
#!/bin/bash<br />
#Leonardo<br />
#echo -n "Dominio: "<br />
#read antigo<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$antigo'.conf";' ];then<br />
# valido=sim<br />
# break<br />
# else<br />
# valido=nao<br />
# fi<br />
#done<br />
#if [ $valido = nao ];then<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio não existe ou esta em branco.\n"<br />
# exit<br />
#fi<br />
#echo -n "Novo nome para o cliente: "<br />
#read nome<br />
#echo -n "Novo dominio: "<br />
#read dominio<br />
#echo=${dominio:=nulo}<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$dominio'.conf";' ];then<br />
# dominio=existe<br />
# break<br />
# fi<br />
#done<br />
#if [ $dominio != nulo ] && [ $dominio != existe ];then<br />
antigo=$1<br />
nome=$2<br />
dominio=$3<br />
sudo sed -i '/\/etc\/bind\/'$antigo'\.conf/Id' /etc/bind/named.conf<br />
sudo rm /etc/bind/$antigo.conf<br />
sudo rm /etc/bind/$antigo.zone<br />
sudo rm /etc/apache2/sites-enabled/$antigo-default<br />
sudo rm -r /var/www/$antigo<br />
sudo sed -i '/'$antigo'\.teletec\.sj\.ifsc\.edu\.br Subdominio-'$antigo'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$antigo'@teletec\.sj\.ifsc\.edu\.br '$antigo'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$antigo'\.teletec\.sj\.ifsc\.edu\.br OK/Id' /etc/postfix/mydomains <br />
<br />
sudo echo 'include "/etc/bind/'$dominio'.conf";' >> /etc/bind/named.conf<br />
numero=`date | cut -d ":" -f 3 | cut -d " " -f 1`<br />
novoserial=$((1000000000+$numero))<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.conf > /etc/bind/$dominio.conf<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.zone | sed s/2011061504/$novoserial/g > /etc/bind/$dominio.zone<br />
sudo /etc/init.d/bind9 restart<br />
sudo sed s/padrao/$dominio/g /etc/apache2/sites-available/padrao-default > /etc/apache2/sites-enabled/$dominio-default<br />
mkdir /var/www/$dominio<br />
sed s/dominio/$dominio/g /var/www/padrao/index.html | sed s/nome/"$nome"/g > /var/www/$dominio/index.html<br />
sudo echo ' ' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br Subdominio-'$dominio'' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'@teletec.sj.ifsc.edu.br '$dominio'' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br OK' >> /etc/postfix/mydomains<br />
sudo postmap /etc/postfix/virtual<br />
sudo postmap /etc/postfix/mydomains<br />
sudo /etc/init.d/postfix restart<br />
# echo -e " * Dominio modificado com sucesso!\t\t\t\t[ OK ]\n"<br />
# else<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio ja existe ou esta em branco.\n"<br />
#fi<br />
<br />
- Edição do Arquivo '''del-dominio.sh''':<br />
Script em bash que remove o cliente (Subdominio, E-mail e Pagina WEB):<br />
<br />
Exclui todos os arquivos de configuração criados para este cliente e retira as linhas de configuração adicionadas em arquivos como o "named.conf", "virtual" e "mydomains", por ultimo os serviçoes DNS e POSTFIX são reiniciados ( o APACHE2 é reiniciado na pagina PHP).<br />
<br />
#!/bin/bash<br />
#Leonardo<br />
#echo -n "Dominio: "<br />
#read dominio<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$dominio'.conf";' ];then<br />
dominio=$1<br />
sudo sed -i '/\/etc\/bind\/'$dominio'\.conf/Id' /etc/bind/named.conf<br />
sudo rm /etc/bind/$dominio.conf<br />
sudo rm /etc/bind/$dominio.zone<br />
sudo /etc/init.d/bind9 restart<br />
sudo rm /etc/apache2/sites-enabled/$dominio-default<br />
sudo rm -r /var/www/$dominio<br />
sudo sed -i '/'$dominio'\.teletec\.sj\.ifsc\.edu\.br Subdominio-'$dominio'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$dominio'@teletec\.sj\.ifsc\.edu\.br '$dominio'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$dominio'\.teletec\.sj\.ifsc\.edu\.br OK/Id' /etc/postfix/mydomains<br />
sudo postmap /etc/postfix/virtual<br />
sudo postmap /etc/postfix/mydomains<br />
sudo /etc/init.d/postfix restart<br />
# echo -e " * Dominio removido com sucesso!\t\t\t\t[ OK ]\n"<br />
# exit<br />
# fi<br />
#done<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio não existe ou esta em branco.\n"<br />
<br />
- Edição do Arquivo '''add-dominio.sh''': <br />
Script em bash que adiciona o cliente (Subdominio, E-mail e Pagina WEB):<br />
<br />
Sub-dominio: O script pega como base arquivos padrões ja criados e configurados ( padrao.conf e padrao.zone ), altera todas as palavras "padrao" destes arvivos pelo dominio escolhido pelo usuario e salva como "dominio-escolhido".zone e "dominio-escolhido".conf. Alem disso ele tambem inclui o caminho do arquivo de configuração ".conf" no "named.conf".<br />
<br />
Pagina-Web: Assim como no sub-dominio, o script troca as palavras "padrao" que estão em um arquivo padrao de configuração ( padrao-default) pelo dominio escolhido pelo cliente, criando um novo arquivo de configuração com nome "dominio-escolhido"-default. Tambem cria uma pagina web html padrao.<br />
<br />
E-mail: O script adiciona as linhas de configuração do e-mail do cliente nos arquivos "virtual" e "mydomains".<br />
<br />
Após fazer as confgurações o script reinicia o DNS e o POSTFIX. (o APACHE2 é reiniciado na pagina PHP).<br />
<br />
#!/bin/bash<br />
# Leonardo<br />
#echo -n "Nome do cliente: "<br />
#read nome<br />
#echo -n "Dominio: " <br />
#read dominio<br />
#echo=${dominio:=nulo}<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$dominio'.conf";' ];then<br />
# dominio=existe<br />
# break<br />
# fi <br />
#done<br />
#<br />
#if [ $dominio != nulo ] && [ $dominio != existe ];then<br />
nome=$1<br />
dominio=$2<br />
sudo echo 'include "/etc/bind/'$dominio'.conf";' >> /etc/bind/named.conf<br />
numero=`date | cut -d ":" -f 3 | cut -d " " -f 1`<br />
novoserial=$((1000000000+$numero))<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.conf > /etc/bind/$dominio.conf<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.zone | sed s/2011061504/$novoserial/g > /etc/bind/$dominio.zone<br />
sudo /etc/init.d/bind9 restart<br />
sudo sed s/padrao/$dominio/g /etc/apache2/sites-available/padrao-default > /etc/apache2/sites-enabled/$dominio-default<br />
mkdir /var/www/$dominio<br />
sed s/dominio/$dominio/g /var/www/padrao/index.html | sed s/nome/"$nome"/g > /var/www/$dominio/index.html<br />
sudo echo ' ' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br Subdominio-'$dominio'' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'@teletec.sj.ifsc.edu.br '$dominio'' >> /etc/postfix/virtual <br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br OK' >> /etc/postfix/mydomains<br />
sudo postmap /etc/postfix/virtual<br />
sudo postmap /etc/postfix/mydomains<br />
sudo /etc/init.d/postfix restart<br />
# echo -e " * Dominio criado com sucesso!\t\t\t\t[ OK ]\n"<br />
# else<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio ja existe ou esta em branco.\n"<br />
#fi</div>Vagner.chttps://wiki.sj.ifsc.edu.br/index.php?title=Projeto_Integrador_-_2011.1_-_Teletec&diff=34844Projeto Integrador - 2011.1 - Teletec2011-07-10T21:59:47Z<p>Vagner.c: /* SOBRE A EMPRESA TELETEC - PROVEDORA DE ACESSO Á INTERNET: */</p>
<hr />
<div>== * '''Equipe 2 : TELETEC''' ==<br />
<br />
----<br />
<br />
== INTEGRANTES TELETEC ==<br />
<br />
* '''Daniel Estefano'''; estefano.daniel@gmail.com <br />
* '''Denis Teixeira'''; denisteixeira3@gmail.com <br />
* '''Leonardo Oliveira P.'''; leonardo-op@live.com <br />
* '''Odair de Moraes'''; odairdmoraes@hotmail.com<br />
* '''Robson de Carvalho'''; rob_carvalho12@hotmail.com<br />
* '''Vagner Cordeiro.''' cordeirotelecom@gmail.com<br />
<br />
----<br />
<br />
== '''SOBRE A EMPRESA TELETEC - PROVEDORA DE ACESSO Á INTERNET:''' == <br />
<br />
A Empresa Oferece os seguintes serviços: <br />
<br />
# Conta de Usuário para cada cliente;<br />
# Conta de E-mail para cada cliente;<br />
# Uma página Web Padrão;<br />
# Instalação do Modem ADSL e do Cabeamento Estrurado;<br />
# Acesso Wirelles;<br />
# Suporte 24Horas <br />
<br />
Contate um de nossos especialistas através do e-mail teletecifsc.googlegroups.com<br />
<br />
== Etapas Iniciais de Configurações da Rede ==<br />
<br />
<br />
# Instalação do Sistema Operacional:Ubuntu-Server;<br />
# Definido Sistema de Arquivo, Dividido em 3 Partições: ''1 Partição Primátia, 1 Partição Secundária e uma Partição para Swap;'' <br />
# Definido nome do Domínio: teletec.sj.ifsc.edu.br;<br />
# Criado um Usuário: Tecnico;<br />
# Acesso via SSH ao Servidor Teletec.<br />
<br />
----<br />
<br />
== Gerencia de Redes: Apache, Postfix e DNS ==<br />
<br />
'''Configurações do servidor DNS:''' <br />
<br />
- Edição do Arquivo para IP Estático: '''/etc/network/interfaces''' <br />
<br />
# This file describes the network interfaces available on your system<br />
# and how to activate them. For more information, see interfaces(5).<br />
# The loopback network interface<br />
auto lo<br />
iface lo inet loopback<br />
# The primary network interface<br />
auto eth0<br />
iface eth0 inet static<br />
address 200.135.37.100<br />
netmask 255.255.255.192<br />
gateway 200.135.37.126 <br />
<br />
- Edição do Arquivo do servidor DNS '''/etc/bind/named.conf''' <br />
<br />
Indica todos os arquivos que vai fazer a configuração dele<br />
<br />
// This is the primary configuration file for the BIND DNS server named.<br />
//<br />
// Please read /usr/share/doc/bind9/README.Debian.gz for information on the <br />
// structure of BIND configuration files in Debian, *BEFORE* you customize <br />
// this configuration file.<br />
//<br />
// If you are just adding zones, please do that in /etc/bind/named.conf.local<br />
include "/etc/bind/named.conf.options";<br />
include "/etc/bind/named.conf.local";<br />
include "/etc/bind/named.conf.default-zones";<br />
include "/etc/bind/servidor.conf";<br />
include "/etc/bind/tecnico.conf";<br />
include "/etc/bind/daniel.conf";<br />
<br />
- Edição do Arquivo de servidor DNS: named.conf.local '''/etc/bind/named.conf.local'''<br />
É um arquivo padrão do BIND onde foi configurado o o nosso dominino TELETEC.<br />
<br />
//<br />
// Do any local configuration here<br />
//<br />
<br />
// Consider adding the 1918 zones here, if they are not used in your<br />
// organization<br />
//include "/etc/bind/zones.rfc1918"8;<br />
zone "teletec.sj.ifsc.edu.br." IN {<br />
type master;<br />
file "/etc/bind/teletec.zone";<br />
allow-update { none; };<br />
};<br />
<br />
- Edição do Arquivo de DNS Reverso: '''/etc/bind/37.135.200.in-addr.arpa'''<br />
O DNS Reverso resolve um endereço IP para um nome de servidor – por exemplo, ele poderia resolver 200.176.3.142 para exemplo.hipotetico.com.br.<br />
<br />
$TTL 86400<br />
@ IN SOA servidor.teletec.sj.ifsc.edu.br. root (<br />
2011061500 ;<br />
1d ;<br />
1h ;<br />
1w ; <br />
1d ;<br />
)<br />
IN NS servidor.teletec.sj.ifsc.edu.br.<br />
100 IN PTR servidor.teletec.sj.ifsc.edu.br.<br />
<br />
- Edição do Arquivo para criar um subdomínio:'''/etc/bind/teletec.zone'''<br />
Arquivo que traz todas as configurações de cada subdomínio. <br />
<br />
$TTL 86400<br />
@ IN SOA teletec.teletec.sj.ifsc.edu.br root (<br />
2011062901;<br />
3H;<br />
15M;<br />
1W;<br />
1D );<br />
IN NS teletec.teletec.sj.ifsc.edu.br.<br />
IN MX 0 mail.teletec.sj.ifsc.edu.br.<br />
localhost IN A 127.0.0.1<br />
$ORIGIN teletec.sj.ifsc.edu.br.<br />
teletec A 200.135.37.100<br />
www A 200.135.37.100<br />
mail A 200.135.37.100<br />
<br />
- '''Configuração do servidor Apache'''<br />
<br />
No servidor Apache foi feito a instalação com o comando:<br />
<br />
apt-get install apache2<br />
<br />
- Configuração do arquivo '''/etc/apache2/sites-enabled/teletec-default'''<br />
<br />
NameVirtualHost 200.135.37.100:80<br />
<VirtualHost 200.135.37.100:80><br />
ServerAdmin webmaster@localhost<br />
ServerName www.teletec.sj.ifsc.edu.br<br />
DocumentRoot /var/www/teletec<br />
<Directory /><br />
Options FollowSymLinks<br />
AllowOverride None<br />
</Directory><br />
<Directory /var/www/><br />
Options Indexes FollowSymLinks MultiViews<br />
AllowOverride None<br />
Order allow,deny<br />
allow from all<br />
</Directory><br />
<br />
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/<br />
<Directory "/usr/lib/cgi-bin"><br />
AllowOverride None<br />
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch<br />
Order allow,deny<br />
Allow from all<br />
</Directory><br />
<br />
ErrorLog ${APACHE_LOG_DIR}/error.log<br />
<br />
# Possible values include: debug, info, notice, warn, error, crit,<br />
# alert, emerg.<br />
LogLevel warn<br />
<br />
CustomLog ${APACHE_LOG_DIR}/access.log combined<br />
<br />
Alias /doc/ "/usr/share/doc/"<br />
<Directory "/usr/share/doc/"><br />
Options Indexes MultiViews FollowSymLinks<br />
AllowOverride None<br />
Order deny,allow<br />
Deny from all<br />
Allow from 127.0.0.0/255.0.0.0 ::1/128<br />
</Directory><br />
<br />
</VirtualHost><br />
<br />
Na criação de um novo cliente vai ser criado um novo arquivo semelhante a esse com duas alterações nas linhas: '''ServerName www.teletec.sj.ifsc.edu.br''' onde vai ser acrescentado na frente do domínio o subdomínio do cliente exemplo: '''ServerName www.subdominio.teletec.sj.ifsc.edu.br''' e na linha '''DocumentRoot /var/www/teletec''' onde vai ser substituido '''teletec''' pelo nome do domínio do cliente por exemplo: '''DocumentRoot /var/www/cliente''' <br />
<br />
<br />
- '''Configuração do servidor POSTFIX'''<br />
<br />
- Primeiro foi feito a instalação com o comando:<br />
<br />
apt-get install postfix<br />
<br />
Em seguida o programa de instalação vai fazer algumas perguntas sobre a localização dos arquivos e alguns parâmetros<br />
<br />
- Configuração do arquivo '''/etc/postfix/main.cf''':<br />
<br />
<br />
# See /usr/share/postfix/main.cf.dist for a commented, more complete version<br />
<br />
<br />
# Debian specific: Specifying a file name will cause the first<br />
# line of that file to be used as the name. The Debian default<br />
# is /etc/mailname.<br />
#myorigin = /etc/mailname<br />
<br />
smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu)<br />
biff = no<br />
<br />
# appending .domain is the MUA's job.<br />
append_dot_mydomain = no<br />
<br />
# Uncomment the next line to generate "delayed mail" warnings<br />
#delay_warning_time = 4h<br />
<br />
readme_directory = no<br />
<br />
# TLS parameters<br />
smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem<br />
smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key<br />
smtpd_use_tls=yes<br />
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache<br />
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache<br />
<br />
# See /usr/share/doc/postfix/TLS_README.gz in the postfix-doc package for<br />
# information on enabling SSL in the smtp client.<br />
<br />
myhostname = mail.teletec.sj.ifsc.edu.br<br />
virtual_alias_maps = hash:/etc/postfix/virtual<br />
alias_database = hash:/etc/aliases<br />
myorigin = $myhostname<br />
mydestination = $myhostname<br />
relayhost = <br />
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128<br />
mailbox_size_limit = 0<br />
recipient_delimiter = +<br />
inet_interfaces = all<br />
mydomain = teletec.sj.ifsc.edu.br<br />
mynetworks_style = subnet<br />
virtual_alias_domains = hash:/etc/postfix/mydomains<br />
<br />
<br />
<br />
- Foi criado o arquivo '''/etc/postfix/virtual'''<br />
<br />
Toda vez que for criado uma nova conta de e-mail vai ser acresentado duas linhas novas nesse arquivo como as que estão em negrito no arquivo abaixo so que onde tem a palavra padrao vai ser substituida pele nome do cliente<br />
<br />
teletec.sj.ifsc.edu.br Principal<br />
<br />
robson.teletec.sj.ifsc.edu.br Subdominio1<br />
robson@robson.teletec.sj.ifsc.edu.br robson<br />
<br />
'''padrao.teletec.sj.ifsc.edu.br padrao'''<br />
'''user@padrao.teletec.sj.ifsc.edu.br user'''<br />
<br />
<br />
- Editar o arquivo mydomains '''/etc/postfix/mydomains'''<br />
<br />
Nesse arquivo tem como primeira linha o dominio e na seguinte o subdominio e toda vez que for criado uma conta nova vai ser acresentado uma linha nova com o nome do subdominio do cliente.<br />
<br />
teletec.sj.ifsc.edu.br OK<br />
robson.teletec.sj.ifsc.edu.br OK<br />
<br />
- Executar os comandos para releitura e reinicialização do Postfix:<br />
<br />
postmap /etc/postfix/virtual<br />
postmap /etc/postfix/mydomains<br />
service postfix restart<br />
<br />
== Instalação de Equipamento de Redes (Modem, Switch e Roteadores) ==<br />
<br />
'''Configurações:'''<br />
<br />
Instalação:<br />
<br />
minicom -s<br />
<br />
Configuração do Roteador Cisco 1700: <br />
<br />
* Configuração dos Dois Roteadores Utilizando a ferramenta "Minicon" (Se fosse Windows seria Hyperterminal)<br />
* Configuração dos dispositivos: Serial e Ethernet<br />
* Configuração como Protocolo PPP<br />
<br />
- ''"Configuração da porta serial":''<br />
<br />
┌─────────────[configuração]──────────────┐<br />
│ Nomes de arquivos e rotas<br />
│ Protocolos de transferência de arquivos<br />
│ Configuração da porta serial<br />
│ Modem e discagem<br />
│ Tela e teclado<br />
│ Salvar configuração como dfl<br />
│ Salvar configuração como<br />
│ Sair<br />
│ Sair do Minicom<br />
└────────────────────────────────────────┘<br />
<br />
- ''"Alteração da Porta Serial"''<br />
┌──────────────────────────────────────────────────────────┐<br />
│ A – Dispositivo Serial : /dev/ttSy0 <br />
│ B – Localização do Arquivo de Travamento : /var/lock<br />
│ C – Programa de Entrada :<br />
│ D – Programa de Saída :<br />
│ E – Bps/Paridade/Bits : 9600 8N1 <br />
│ F – Controle de Fluxo por Hardware : Não<br />
│ G – Controle de Fluxo por Software : Não<br />
│<br />
│ Alterar qual configuração?<br />
└──────────────────────────────────────────────────────────┘<br />
<br />
- ''"Salvar configuração com dfl"''<br />
<br />
- ''Configurando a Interface Serial do Roteador:''<br />
<br />
enable;<br />
configure terminal;<br />
<br />
#Para configurar a interface serial:<br />
interface serial 0;<br />
ip address 10.0.0.1/30;<br />
encapsulation ppp;<br />
exit;<br />
<br />
#Para configurar a interface ethernet:<br />
interface fastethernet 0;<br />
ip address 172.18.0.1/24;<br />
exit;<br />
exit;<br />
<br />
#Para salvar as configurações:<br />
wr;<br />
<br />
'''Radius'''<br />
<br />
Para ter acesso a rede aDSL ou pela rede sem fio será usado Radius para que os usuários sejam autenticados. O RADIUS é um sistema utilizado para prover uma autenticação centralizada em redes dial-up, VPN's (Virtual Private Network) e redes sem fio. Ele tem um modelo cliente-servidor, onde o cliente é o Network Access Server (NAS). Esse servidor é responsável por obter a informação sobre o cliente e repassá-la para o servidor RADIUS, além de interpretar a resposta, dando ou não acesso ao cliente. O servidor RADIUS é responsável por receber pedidos de conexão, autenticar o usuário e repassar ao NAS as informações necessárias para esse dar acesso ao usuário na rede. <br />
<br />
'''Arquivos configurados:''' <br />
<br />
Configurar login e senha para o cliente Radius ( /etc/freeradius<br />
/users ):<br />
<br />
“Usúario” Cleartext-Password := "senha"<br />
“Usúario” User-Password := "senha"<br />
<br />
Teste antes se seu servidor Radius está autenticando usuáriosfaça o seguinte comando no AC PPPoE (que fica em Ac-server): <br />
<br />
radtest seu_usuario sua_senha IP_do_seu_servidor_Radius 1 segredo_do_seu_servidor_Radius<br />
<br />
Configurando o Servidor PPPoe (/etc/ppp/pppoe-servers-options): <br />
<br />
require-chap<br />
auth<br />
lcp-echo-interval 10<br />
lcp-echo-failure 2<br />
ms-dns IP do seu servidor DNS<br />
netmask 255.255.255.0<br />
noipdefault<br />
debug<br />
kdebug 4<br />
plugin radius.so<br />
plugin radattr.so<br />
radius-config-file /etc/radiusclient/teletec.conf<br />
mru 1492<br />
mtu 1492<br />
<br />
Configuração do Cliente Radius ( etc/radiusclient/teletec.conf ):<br />
<br />
auth_order radius<br />
login_tries 4<br />
login_timeout 60<br />
nologin /etc/nologin<br />
issue /etc/radiusclient/issue<br />
authserver 200.135.37.100<br />
acctserver 200.135.37.100<br />
servers /etc/radiusclient/servers<br />
dictionary /etc/radiusclient/dictionary<br />
login_radius /usr/sbin/login.radius<br />
seqfile /var/run/radius.seq<br />
mapfile /etc/radiusclient/port-id-map<br />
default_realm<br />
radius_timeout 10<br />
radius_retries 3<br />
login_local /bin/login<br />
<br />
Configurando o IP do Servidor Radius ( /etc/radiusclient/servers ):<br />
<br />
200.135.37.100 testing123<br />
<br />
Integrando Radius ao Banco de Dados<br />
<br />
Primeiro procedimento, instale o pacote. <br />
<br />
apt-get install freeradius-mysql<br />
Edite o arquivo de configuração do freeradius, e descomente a seguinte linha <br />
( /etc/freeradius/radiusd.conf ): <br />
<br />
$INCLUDE sql.conf<br />
<br />
Para entrar no MySQL execute o comando: <br />
<br />
mysql -u root -p <br />
<br />
Crie uma base de dados somente para o Radius e dê ao usuário Radius a devida permissão para acesso a esta base. No shell do MySQL, execute os comandos: <br />
<br />
CREATE DATABASE radius;<br />
GRANT ALL ON radius.* TO freerad@localhost IDENTIFIED BY "senha_do_usuário_freeradius";<br />
exit;<br />
<br />
Inserindo informações na base de dados: <br />
<br />
mysql -u “usuário” -p “senha do usuário radius” “database” < /etc/freeradius/sql/mysql/schema.sql<br />
mysql -u “usuário” -p “senha do usuário radius” “database” < /etc/freeradius/sql/mysql/nas.sql<br />
<br />
Editar o arquivo /etc/freeradius/sql.conf, colocando a senha do usuário Radius: <br />
<br />
passwrod = "senha do usuário radius"<br />
<br />
E descomente a linha do mesmo arquivo ( /etc/freeradius/sql.conf ) : <br />
<br />
readclients = yes<br />
<br />
Reinicie o FreeRadius: <br />
<br />
service freeradius restart<br />
<br />
== Cabeamento Estruturado ==<br />
<br />
Atividades Concluídas:<br />
<br />
- o A central telefônica ao DSLAM<br />
- o O DSLAM ao armário de telecom da equipe, através de uma linha telefone + DSL<br />
- o armário da equipe a uma área de trabalho. <br />
- O cabeamento permitiu a conexão do modem DSL no armário de telecom.<br />
- As tomadas da área de trabalho para conexão com Telefone e o Modem ADSL.<br />
<br />
== Programação para Redes de Computadores ==<br />
<br />
'''Os Arquivos PHP (pagina Web) Encontram-se dentro da pasta: ''/var/www/teletec'''''<br />
<br />
- Edição do Arquivo '''Verificação.php''':<br />
<br />
Esta pagina PHP verifica se o login e a senha do administrador esta correto.<br />
Se estiver correto vai para a pagina "principal.php" se não volta para "login.php".<br />
<br />
<?<br />
session_start();<br />
$login = $_POST['login'];<br />
$senha = $_POST['senha'];<br />
if ( ( $login == "LOGIN-DO-ADMIN" ) && ( $senha == "SENHA-DO-ADMIN" ) ){<br />
$_SESSION['autorizado'] = $login;<br />
Header ("Location: principal.php");<br />
}else{<br />
Header ("Location: login.php");<br />
}<br />
?><br />
<br />
- Edição do Arquivo '''sair.php''':<br />
<br />
Esta pagina PHP faz o administrador "deslogar" ("logoff") e depois volta para pagina "login.php"<br />
<br />
<?<br />
session_start();<br />
session_destroy();<br />
Header ("Location: login.php");<br />
?><br />
<br />
- Edição do arquivo '''principal.php''': <br />
<br />
Esta é a principal pagina PHP do site, nela verificamos os clientes criados e armazenados no banco de dados, redirecionamos para pagina que modifica os dominios (alterar.php), redirecionamos para pagina que remover os dominios (excluir.php)e tambem redirecionamos para a pagina que adiciona os dominios (adicionar.php).<br />
Quando é redirecionado para pagina de modificação e remoção tambem é enviado uma variavel com o dominio do cliente para saber qual usuario deve ser modificado ou alterado.<br />
<.?<br />
.session_start();<br />
.if (!isset($_SESSION['autorizado'])){<br />
.header ("Location: login.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Administrcao de Dominios</title><br />
<./head><br />
<.body><br />
<.p><a href="sair.php">Sair</a></p><br />
<.p></p><br />
<.p style="text-align:center;margin-left:auto;margin-right:auto;">Cliente Dominio Acao </p><br />
<br />
<.?<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$consulta = "SELECT * from clientes";<br />
$resultado = mysql_query($consulta,$conexao);<br />
while($linha = mysql_fetch_array($resultado)){<br />
$cliente = $linha['cliente'];<br />
$dominio = $linha['dominio'];<br />
.?><br />
<.form><br />
<.p style="text-align:center;margin-left:auto;margin-right:auto;"><br />
<.a name="cliente" id="cliente" href="alterar.php?id=<? echo $linha['dominio'];?>"> <?echo $.linha['cliente'];?></a> <br />
<.? echo $linha['dominio'];?> <a href="excluir.php?id=<? echo $linha['dominio'];?>"> Excluir</a></p><br />
<./form><br />
<.?<br />
.}<br />
.mysql_free_result($resultado);<br />
.mysql_close($conexao);<br />
.}<br />
.?><br />
<.p style="text-align:right;margin-left:auto;margin-right:0;"><br />
<.a href="adicionar.php"><span style="color:#ff0000">Adicionar novo dominio</span></a></p><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''mod-domínio.php''':<br />
<br />
Esta pagina PHP recebe três variaveis com o dominio antigo do clinete, o novo dominio e o novo nome do cliente, estas variaveis são repassadas para o script "mod-dominio.sh" e este é executado modificando o dominio e o nome do cliente, depois de executar o script as informações do banco de dados tambem são modificadas e o serviço APACHE2 é reiniciado.<br />
Após todo este processamento a pagina é redirecionada para 'principal.php".<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$cliente = $_POST['cliente'];<br />
$dominio = $_POST['dominio'];<br />
$antigo = $_POST['antigo'];;<br />
if (empty($dominio)) {<br />
$dominio = "invalido";<br />
} <br />
<br />
if (preg_match('/^[a-z0-9]+/', $dominio)){<br />
}else{<br />
$dominio = "invalido";<br />
} <br />
<br />
$arquivo = '/etc/bind/named.conf';<br />
$linhas = array();<br />
exec("cat $arquivo",$linhas);<br />
for ($i = 0 ; $i < sizeof($linhas); $i++){<br />
if ($linhas[$i] == "include \"/etc/bind/$dominio.conf\";"){<br />
$dominio = "invalido";<br />
}<br />
}<br />
if ($dominio == "invalido"){<br />
header ("Location: alterar.php");<br />
}else{ <br />
<br />
$script = "/etc/teletec/mod-dominio.sh $antigo '$cliente' $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$deletar = "DELETE FROM clientes WHERE dominio='$antigo.teletec.sj.ifsc.edu.br'";<br />
mysql_query($deletar,$conexao);<br />
mysql_close($conexao); <br />
<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$inserir = "INSERT INTO clientes (cliente,dominio) VALUES ('$cliente','$dominio.teletec.sj.ifsc.edu.br')";<br />
mysql_query($inserir,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php"); <br />
<br />
}<br />
.}<br />
?.><br />
<br />
- Edição do Arquivo '''login.php''': <br />
<br />
Esta pagina PHP recolhe o login e a senha fornecidas pelo administrador atraves de um formulario e manda para a pagina PHP de processamento que verifica se esta correto.<br />
.<?<br />
.session_start();<br />
.if (isset($_SESSION['autorizado'])){<br />
.Header ("Location: principal.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Hospedagem Web</title><br />
<./head><br />
<br />
<.body><br />
<.p></p><br />
<.p>Sistemas de Hospedagem de Sitios Web</p><br />
<.p></p><br />
<.form name="formTeste" action="verificacao.php" method="post"><br />
<.p>Usu&#xe1;rio:<br><br />
<.input type="text" name="login"> <br />
<.p>Senha:<br> <br />
<.input type="password" name="senha"> <br />
<.input type="submit" name="b_enviar" value="Entrar"><br />
<./form><br />
<.p></p><br />
<.?<br />
}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''Index.php''':<br />
<br />
Esta pagina apenas redireciona para "login.php"<br />
<.?<br />
Header ("Location: login.php");<br />
.?><br />
<br />
- Edição do Arquivo '''excluir.php''':<br />
<br />
Esta pagina PHP faz uma verificação, se o administrador realmente querer excluir o dominio é mandado o dominio do clinete em uma variavel para a pagina PHP de processamento "del-dominio.php" e a pagina é redirecionada para la, mais se o usuario não quiser escluir é mandado novamente para p pagina "principal.php".<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){ <br />
header ("Location: login.php");<br />
}else{<br />
$id=$_GET['id'];<br />
$parte1 = explode(".", $id);<br />
$antigo = $parte1[0];<br />
?.><br />
<.html><br />
<head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Excluir o cliente</title><br />
<./head><br />
<.body><br />
<.p>Voce realmente deseja excluir o cliente?</p><br />
<br />
<.p><a href="del-dominio.php?id=<?echo $antigo;?>">Sim</a> <a<br />
.href="principal.php">Nao</a></p><br />
<.p></p><br />
<?<br />
}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''del-dominio.php''':<br />
<br />
Esta pagina PHP é uma pagina de processamento que recebe em uma variavel o nome do dominio que sera removido e transfere esta variavel para o script em bash "del-dominio.sh" ja executa o script, depois este dominio é removido do banco de dados e o serviço APACHE2 é reiniciado.<br />
Após todo o processamento a pagina é redirecionada para "principal.php".<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$dominio = $_GET['id'];<br />
$script = "/etc/teletec/del-dominio.sh $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$deletar = "DELETE FROM clientes WHERE dominio='$dominio.teletec.sj.ifsc.edu.br'";<br />
mysql_query($deletar,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php");<br />
}<br />
?.><br />
<br />
- Edição do '''Arquivo alterar.php''': <br />
<br />
Nesta pagina PHP o administrador informa o novo nome do cliente e o novo dominio, estas informações são gravadas em uma variavel que será mandada para a pagina PHP que vai fazer todo o trabalho de processamento (mod-dominio.php).<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){ <br />
header ("Location: login.php");<br />
}else{<br />
$id=$_GET['id'];<br />
$parte1 = explode(".", $id);<br />
$antigo = $parte1[0];<br />
?.><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Alterar Dominio</title><br />
</.head><br />
<.body><br />
<.p><.a href="principal.php">Voltar </a></p><br />
<.form name="formTeste" action="mod-dominio.php" method="post"><br />
<.p>Novo nome do cliente: <br><br />
<.input type="text" name="cliente"><br />
<.p>Novo dominio: <br><br />
<.input type="text" name="dominio"><br />
<.input type="hidden" name="antigo" value="<?echo $antigo;?>"> <br />
<.input type="submit" name="b_enviar" value="Alterar"><br />
<./form><br />
<.?<br />
}<br />
?.><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''adicionar.php''':<br />
<br />
Esta pagina PHP recolhe duas variaveis atraves do formulrios, em uma esta o nome do clinete e na outra o dominio escolhido, estas variaveis são repassadas para a pagina de processamento que vai adicionar este novo subdominio (add-dominio.php).Depois ela é redirecionada para a pagina de processamento "add-dominio.php".<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Adicionar Cliente</title><br />
<./head><br />
<.body><br />
<.p><.a href="principal.php">Voltar </a></p><br />
<.form name="formTeste" action="add-dominio.php" method="post"><br />
<.p>Nome do cliente: <br><br />
<.input type="text" name="cliente"><br />
<.p>Dominio: <br><br />
<.input type="text" name="dominio"><br />
<.input type="submit" name="b_enviar" value="Criar"><br />
<./form><br />
<.?<br />
.}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''add-dominio.php''':<br />
<br />
Esta pagina PHP é uma pagina de processamento que recebe duas variaveis, na primeira esta o nome do dominio que sera removido e na segunda está o dominio do cliente, estas variaveis são transferidas para o script em bash "add-dominio.sh" que é executado, depois este dominio é adicionado no banco de dados e o serviço APACHE2 é reiniciado.<br />
Após todo o processamento a pagina é redirecionada para "principal.php".<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$cliente = $_POST['cliente'];<br />
$dominio = $_POST['dominio']; <br />
<br />
if (empty($dominio)) {<br />
$dominio = "invalido";<br />
} <br />
<br />
if (preg_match('/^[a-z0-9]+/', $dominio)){<br />
}else{<br />
$dominio = "invalido";<br />
} <br />
<br />
$arquivo = '/etc/bind/named.conf';<br />
$linhas = array();<br />
exec("cat $arquivo",$linhas);<br />
for ($i = 0 ; $i < sizeof($linhas); $i++){<br />
if ($linhas[$i] == "include \"/etc/bind/$dominio.conf\";"){<br />
$dominio = "invalido";<br />
}<br />
}<br />
if ($dominio == "invalido"){<br />
header ("Location: adicionar.php");<br />
}else{<br />
$script = "/etc/teletec/add-dominio.sh '$cliente' $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$inserir = "INSERT INTO clientes (cliente,dominio) VALUES ('$cliente','$dominio.teletec.sj.ifsc.edu.br')";<br />
mysql_query($inserir,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php");<br />
}<br />
}<br />
?.><br />
<br />
'''Os Arquivos .sh (scripts que adicionam, removem ou alteram os usuários no servidor) Encontram-se dentro da pasta: ''/etc/teletec''''' <br />
<br />
- Edição do Arquivo '''mod-dominio.sh''':<br />
Script em bash que altera o dominio do cliente (Subdominio, E-mail e Pagina WEB):<br />
<br />
O script de modificação na verdade exclui o dominio criado e cria um novo, os scripts de remover e adicionar estão juntos neste script.<br />
<br />
#!/bin/bash<br />
#Leonardo<br />
#echo -n "Dominio: "<br />
#read antigo<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$antigo'.conf";' ];then<br />
# valido=sim<br />
# break<br />
# else<br />
# valido=nao<br />
# fi<br />
#done<br />
#if [ $valido = nao ];then<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio não existe ou esta em branco.\n"<br />
# exit<br />
#fi<br />
#echo -n "Novo nome para o cliente: "<br />
#read nome<br />
#echo -n "Novo dominio: "<br />
#read dominio<br />
#echo=${dominio:=nulo}<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$dominio'.conf";' ];then<br />
# dominio=existe<br />
# break<br />
# fi<br />
#done<br />
#if [ $dominio != nulo ] && [ $dominio != existe ];then<br />
antigo=$1<br />
nome=$2<br />
dominio=$3<br />
sudo sed -i '/\/etc\/bind\/'$antigo'\.conf/Id' /etc/bind/named.conf<br />
sudo rm /etc/bind/$antigo.conf<br />
sudo rm /etc/bind/$antigo.zone<br />
sudo rm /etc/apache2/sites-enabled/$antigo-default<br />
sudo rm -r /var/www/$antigo<br />
sudo sed -i '/'$antigo'\.teletec\.sj\.ifsc\.edu\.br Subdominio-'$antigo'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$antigo'@teletec\.sj\.ifsc\.edu\.br '$antigo'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$antigo'\.teletec\.sj\.ifsc\.edu\.br OK/Id' /etc/postfix/mydomains <br />
<br />
sudo echo 'include "/etc/bind/'$dominio'.conf";' >> /etc/bind/named.conf<br />
numero=`date | cut -d ":" -f 3 | cut -d " " -f 1`<br />
novoserial=$((1000000000+$numero))<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.conf > /etc/bind/$dominio.conf<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.zone | sed s/2011061504/$novoserial/g > /etc/bind/$dominio.zone<br />
sudo /etc/init.d/bind9 restart<br />
sudo sed s/padrao/$dominio/g /etc/apache2/sites-available/padrao-default > /etc/apache2/sites-enabled/$dominio-default<br />
mkdir /var/www/$dominio<br />
sed s/dominio/$dominio/g /var/www/padrao/index.html | sed s/nome/"$nome"/g > /var/www/$dominio/index.html<br />
sudo echo ' ' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br Subdominio-'$dominio'' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'@teletec.sj.ifsc.edu.br '$dominio'' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br OK' >> /etc/postfix/mydomains<br />
sudo postmap /etc/postfix/virtual<br />
sudo postmap /etc/postfix/mydomains<br />
sudo /etc/init.d/postfix restart<br />
# echo -e " * Dominio modificado com sucesso!\t\t\t\t[ OK ]\n"<br />
# else<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio ja existe ou esta em branco.\n"<br />
#fi<br />
<br />
- Edição do Arquivo '''del-dominio.sh''':<br />
Script em bash que remove o cliente (Subdominio, E-mail e Pagina WEB):<br />
<br />
Exclui todos os arquivos de configuração criados para este cliente e retira as linhas de configuração adicionadas em arquivos como o "named.conf", "virtual" e "mydomains", por ultimo os serviçoes DNS e POSTFIX são reiniciados ( o APACHE2 é reiniciado na pagina PHP).<br />
<br />
#!/bin/bash<br />
#Leonardo<br />
#echo -n "Dominio: "<br />
#read dominio<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$dominio'.conf";' ];then<br />
dominio=$1<br />
sudo sed -i '/\/etc\/bind\/'$dominio'\.conf/Id' /etc/bind/named.conf<br />
sudo rm /etc/bind/$dominio.conf<br />
sudo rm /etc/bind/$dominio.zone<br />
sudo /etc/init.d/bind9 restart<br />
sudo rm /etc/apache2/sites-enabled/$dominio-default<br />
sudo rm -r /var/www/$dominio<br />
sudo sed -i '/'$dominio'\.teletec\.sj\.ifsc\.edu\.br Subdominio-'$dominio'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$dominio'@teletec\.sj\.ifsc\.edu\.br '$dominio'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$dominio'\.teletec\.sj\.ifsc\.edu\.br OK/Id' /etc/postfix/mydomains<br />
sudo postmap /etc/postfix/virtual<br />
sudo postmap /etc/postfix/mydomains<br />
sudo /etc/init.d/postfix restart<br />
# echo -e " * Dominio removido com sucesso!\t\t\t\t[ OK ]\n"<br />
# exit<br />
# fi<br />
#done<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio não existe ou esta em branco.\n"<br />
<br />
- Edição do Arquivo '''add-dominio.sh''': <br />
Script em bash que adiciona o cliente (Subdominio, E-mail e Pagina WEB):<br />
<br />
Sub-dominio: O script pega como base arquivos padrões ja criados e configurados ( padrao.conf e padrao.zone ), altera todas as palavras "padrao" destes arvivos pelo dominio escolhido pelo usuario e salva como "dominio-escolhido".zone e "dominio-escolhido".conf. Alem disso ele tambem inclui o caminho do arquivo de configuração ".conf" no "named.conf".<br />
<br />
Pagina-Web: Assim como no sub-dominio, o script troca as palavras "padrao" que estão em um arquivo padrao de configuração ( padrao-default) pelo dominio escolhido pelo cliente, criando um novo arquivo de configuração com nome "dominio-escolhido"-default. Tambem cria uma pagina web html padrao.<br />
<br />
E-mail: O script adiciona as linhas de configuração do e-mail do cliente nos arquivos "virtual" e "mydomains".<br />
<br />
Após fazer as confgurações o script reinicia o DNS e o POSTFIX. (o APACHE2 é reiniciado na pagina PHP).<br />
<br />
#!/bin/bash<br />
# Leonardo<br />
#echo -n "Nome do cliente: "<br />
#read nome<br />
#echo -n "Dominio: " <br />
#read dominio<br />
#echo=${dominio:=nulo}<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$dominio'.conf";' ];then<br />
# dominio=existe<br />
# break<br />
# fi <br />
#done<br />
#<br />
#if [ $dominio != nulo ] && [ $dominio != existe ];then<br />
nome=$1<br />
dominio=$2<br />
sudo echo 'include "/etc/bind/'$dominio'.conf";' >> /etc/bind/named.conf<br />
numero=`date | cut -d ":" -f 3 | cut -d " " -f 1`<br />
novoserial=$((1000000000+$numero))<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.conf > /etc/bind/$dominio.conf<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.zone | sed s/2011061504/$novoserial/g > /etc/bind/$dominio.zone<br />
sudo /etc/init.d/bind9 restart<br />
sudo sed s/padrao/$dominio/g /etc/apache2/sites-available/padrao-default > /etc/apache2/sites-enabled/$dominio-default<br />
mkdir /var/www/$dominio<br />
sed s/dominio/$dominio/g /var/www/padrao/index.html | sed s/nome/"$nome"/g > /var/www/$dominio/index.html<br />
sudo echo ' ' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br Subdominio-'$dominio'' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'@teletec.sj.ifsc.edu.br '$dominio'' >> /etc/postfix/virtual <br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br OK' >> /etc/postfix/mydomains<br />
sudo postmap /etc/postfix/virtual<br />
sudo postmap /etc/postfix/mydomains<br />
sudo /etc/init.d/postfix restart<br />
# echo -e " * Dominio criado com sucesso!\t\t\t\t[ OK ]\n"<br />
# else<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio ja existe ou esta em branco.\n"<br />
#fi</div>Vagner.chttps://wiki.sj.ifsc.edu.br/index.php?title=Projeto_Integrador_-_2011.1_-_Teletec&diff=34843Projeto Integrador - 2011.1 - Teletec2011-07-10T21:58:45Z<p>Vagner.c: /* SOBRE A EMPRESA TELETEC - PROVEDORA DE ACESSO Á INTERNET: */</p>
<hr />
<div>== * '''Equipe 2 : TELETEC''' ==<br />
<br />
----<br />
<br />
== INTEGRANTES TELETEC ==<br />
<br />
* '''Daniel Estefano'''; estefano.daniel@gmail.com <br />
* '''Denis Teixeira'''; denisteixeira3@gmail.com <br />
* '''Leonardo Oliveira P.'''; leonardo-op@live.com <br />
* '''Odair de Moraes'''; odairdmoraes@hotmail.com<br />
* '''Robson de Carvalho'''; rob_carvalho12@hotmail.com<br />
* '''Vagner Cordeiro.''' cordeirotelecom@gmail.com<br />
<br />
----<br />
<br />
== '''SOBRE A EMPRESA TELETEC - PROVEDORA DE ACESSO Á INTERNET:''' == <br />
<br />
A Empresa Oferece os seguintes serviços: <br />
<br />
# Conta de Usuário para cada cliente;<br />
# Conta de E-mail para cada cliente;<br />
# Uma página Web Padrão;<br />
# Instalação do Modem ADSL e do Cabeamento Estrurado;<br />
# Acesso Wirelles;<br />
<br />
<br />
Contate um de nossos especialistas através do e-mail teletecifsc.googlegroups.com<br />
<br />
== Etapas Iniciais de Configurações da Rede ==<br />
<br />
<br />
# Instalação do Sistema Operacional:Ubuntu-Server;<br />
# Definido Sistema de Arquivo, Dividido em 3 Partições: ''1 Partição Primátia, 1 Partição Secundária e uma Partição para Swap;'' <br />
# Definido nome do Domínio: teletec.sj.ifsc.edu.br;<br />
# Criado um Usuário: Tecnico;<br />
# Acesso via SSH ao Servidor Teletec.<br />
<br />
----<br />
<br />
== Gerencia de Redes: Apache, Postfix e DNS ==<br />
<br />
'''Configurações do servidor DNS:''' <br />
<br />
- Edição do Arquivo para IP Estático: '''/etc/network/interfaces''' <br />
<br />
# This file describes the network interfaces available on your system<br />
# and how to activate them. For more information, see interfaces(5).<br />
# The loopback network interface<br />
auto lo<br />
iface lo inet loopback<br />
# The primary network interface<br />
auto eth0<br />
iface eth0 inet static<br />
address 200.135.37.100<br />
netmask 255.255.255.192<br />
gateway 200.135.37.126 <br />
<br />
- Edição do Arquivo do servidor DNS '''/etc/bind/named.conf''' <br />
<br />
Indica todos os arquivos que vai fazer a configuração dele<br />
<br />
// This is the primary configuration file for the BIND DNS server named.<br />
//<br />
// Please read /usr/share/doc/bind9/README.Debian.gz for information on the <br />
// structure of BIND configuration files in Debian, *BEFORE* you customize <br />
// this configuration file.<br />
//<br />
// If you are just adding zones, please do that in /etc/bind/named.conf.local<br />
include "/etc/bind/named.conf.options";<br />
include "/etc/bind/named.conf.local";<br />
include "/etc/bind/named.conf.default-zones";<br />
include "/etc/bind/servidor.conf";<br />
include "/etc/bind/tecnico.conf";<br />
include "/etc/bind/daniel.conf";<br />
<br />
- Edição do Arquivo de servidor DNS: named.conf.local '''/etc/bind/named.conf.local'''<br />
É um arquivo padrão do BIND onde foi configurado o o nosso dominino TELETEC.<br />
<br />
//<br />
// Do any local configuration here<br />
//<br />
<br />
// Consider adding the 1918 zones here, if they are not used in your<br />
// organization<br />
//include "/etc/bind/zones.rfc1918"8;<br />
zone "teletec.sj.ifsc.edu.br." IN {<br />
type master;<br />
file "/etc/bind/teletec.zone";<br />
allow-update { none; };<br />
};<br />
<br />
- Edição do Arquivo de DNS Reverso: '''/etc/bind/37.135.200.in-addr.arpa'''<br />
O DNS Reverso resolve um endereço IP para um nome de servidor – por exemplo, ele poderia resolver 200.176.3.142 para exemplo.hipotetico.com.br.<br />
<br />
$TTL 86400<br />
@ IN SOA servidor.teletec.sj.ifsc.edu.br. root (<br />
2011061500 ;<br />
1d ;<br />
1h ;<br />
1w ; <br />
1d ;<br />
)<br />
IN NS servidor.teletec.sj.ifsc.edu.br.<br />
100 IN PTR servidor.teletec.sj.ifsc.edu.br.<br />
<br />
- Edição do Arquivo para criar um subdomínio:'''/etc/bind/teletec.zone'''<br />
Arquivo que traz todas as configurações de cada subdomínio. <br />
<br />
$TTL 86400<br />
@ IN SOA teletec.teletec.sj.ifsc.edu.br root (<br />
2011062901;<br />
3H;<br />
15M;<br />
1W;<br />
1D );<br />
IN NS teletec.teletec.sj.ifsc.edu.br.<br />
IN MX 0 mail.teletec.sj.ifsc.edu.br.<br />
localhost IN A 127.0.0.1<br />
$ORIGIN teletec.sj.ifsc.edu.br.<br />
teletec A 200.135.37.100<br />
www A 200.135.37.100<br />
mail A 200.135.37.100<br />
<br />
- '''Configuração do servidor Apache'''<br />
<br />
No servidor Apache foi feito a instalação com o comando:<br />
<br />
apt-get install apache2<br />
<br />
- Configuração do arquivo '''/etc/apache2/sites-enabled/teletec-default'''<br />
<br />
NameVirtualHost 200.135.37.100:80<br />
<VirtualHost 200.135.37.100:80><br />
ServerAdmin webmaster@localhost<br />
ServerName www.teletec.sj.ifsc.edu.br<br />
DocumentRoot /var/www/teletec<br />
<Directory /><br />
Options FollowSymLinks<br />
AllowOverride None<br />
</Directory><br />
<Directory /var/www/><br />
Options Indexes FollowSymLinks MultiViews<br />
AllowOverride None<br />
Order allow,deny<br />
allow from all<br />
</Directory><br />
<br />
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/<br />
<Directory "/usr/lib/cgi-bin"><br />
AllowOverride None<br />
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch<br />
Order allow,deny<br />
Allow from all<br />
</Directory><br />
<br />
ErrorLog ${APACHE_LOG_DIR}/error.log<br />
<br />
# Possible values include: debug, info, notice, warn, error, crit,<br />
# alert, emerg.<br />
LogLevel warn<br />
<br />
CustomLog ${APACHE_LOG_DIR}/access.log combined<br />
<br />
Alias /doc/ "/usr/share/doc/"<br />
<Directory "/usr/share/doc/"><br />
Options Indexes MultiViews FollowSymLinks<br />
AllowOverride None<br />
Order deny,allow<br />
Deny from all<br />
Allow from 127.0.0.0/255.0.0.0 ::1/128<br />
</Directory><br />
<br />
</VirtualHost><br />
<br />
Na criação de um novo cliente vai ser criado um novo arquivo semelhante a esse com duas alterações nas linhas: '''ServerName www.teletec.sj.ifsc.edu.br''' onde vai ser acrescentado na frente do domínio o subdomínio do cliente exemplo: '''ServerName www.subdominio.teletec.sj.ifsc.edu.br''' e na linha '''DocumentRoot /var/www/teletec''' onde vai ser substituido '''teletec''' pelo nome do domínio do cliente por exemplo: '''DocumentRoot /var/www/cliente''' <br />
<br />
<br />
- '''Configuração do servidor POSTFIX'''<br />
<br />
- Primeiro foi feito a instalação com o comando:<br />
<br />
apt-get install postfix<br />
<br />
Em seguida o programa de instalação vai fazer algumas perguntas sobre a localização dos arquivos e alguns parâmetros<br />
<br />
- Configuração do arquivo '''/etc/postfix/main.cf''':<br />
<br />
<br />
# See /usr/share/postfix/main.cf.dist for a commented, more complete version<br />
<br />
<br />
# Debian specific: Specifying a file name will cause the first<br />
# line of that file to be used as the name. The Debian default<br />
# is /etc/mailname.<br />
#myorigin = /etc/mailname<br />
<br />
smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu)<br />
biff = no<br />
<br />
# appending .domain is the MUA's job.<br />
append_dot_mydomain = no<br />
<br />
# Uncomment the next line to generate "delayed mail" warnings<br />
#delay_warning_time = 4h<br />
<br />
readme_directory = no<br />
<br />
# TLS parameters<br />
smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem<br />
smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key<br />
smtpd_use_tls=yes<br />
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache<br />
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache<br />
<br />
# See /usr/share/doc/postfix/TLS_README.gz in the postfix-doc package for<br />
# information on enabling SSL in the smtp client.<br />
<br />
myhostname = mail.teletec.sj.ifsc.edu.br<br />
virtual_alias_maps = hash:/etc/postfix/virtual<br />
alias_database = hash:/etc/aliases<br />
myorigin = $myhostname<br />
mydestination = $myhostname<br />
relayhost = <br />
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128<br />
mailbox_size_limit = 0<br />
recipient_delimiter = +<br />
inet_interfaces = all<br />
mydomain = teletec.sj.ifsc.edu.br<br />
mynetworks_style = subnet<br />
virtual_alias_domains = hash:/etc/postfix/mydomains<br />
<br />
<br />
<br />
- Foi criado o arquivo '''/etc/postfix/virtual'''<br />
<br />
Toda vez que for criado uma nova conta de e-mail vai ser acresentado duas linhas novas nesse arquivo como as que estão em negrito no arquivo abaixo so que onde tem a palavra padrao vai ser substituida pele nome do cliente<br />
<br />
teletec.sj.ifsc.edu.br Principal<br />
<br />
robson.teletec.sj.ifsc.edu.br Subdominio1<br />
robson@robson.teletec.sj.ifsc.edu.br robson<br />
<br />
'''padrao.teletec.sj.ifsc.edu.br padrao'''<br />
'''user@padrao.teletec.sj.ifsc.edu.br user'''<br />
<br />
<br />
- Editar o arquivo mydomains '''/etc/postfix/mydomains'''<br />
<br />
Nesse arquivo tem como primeira linha o dominio e na seguinte o subdominio e toda vez que for criado uma conta nova vai ser acresentado uma linha nova com o nome do subdominio do cliente.<br />
<br />
teletec.sj.ifsc.edu.br OK<br />
robson.teletec.sj.ifsc.edu.br OK<br />
<br />
- Executar os comandos para releitura e reinicialização do Postfix:<br />
<br />
postmap /etc/postfix/virtual<br />
postmap /etc/postfix/mydomains<br />
service postfix restart<br />
<br />
== Instalação de Equipamento de Redes (Modem, Switch e Roteadores) ==<br />
<br />
'''Configurações:'''<br />
<br />
Instalação:<br />
<br />
minicom -s<br />
<br />
Configuração do Roteador Cisco 1700: <br />
<br />
* Configuração dos Dois Roteadores Utilizando a ferramenta "Minicon" (Se fosse Windows seria Hyperterminal)<br />
* Configuração dos dispositivos: Serial e Ethernet<br />
* Configuração como Protocolo PPP<br />
<br />
- ''"Configuração da porta serial":''<br />
<br />
┌─────────────[configuração]──────────────┐<br />
│ Nomes de arquivos e rotas<br />
│ Protocolos de transferência de arquivos<br />
│ Configuração da porta serial<br />
│ Modem e discagem<br />
│ Tela e teclado<br />
│ Salvar configuração como dfl<br />
│ Salvar configuração como<br />
│ Sair<br />
│ Sair do Minicom<br />
└────────────────────────────────────────┘<br />
<br />
- ''"Alteração da Porta Serial"''<br />
┌──────────────────────────────────────────────────────────┐<br />
│ A – Dispositivo Serial : /dev/ttSy0 <br />
│ B – Localização do Arquivo de Travamento : /var/lock<br />
│ C – Programa de Entrada :<br />
│ D – Programa de Saída :<br />
│ E – Bps/Paridade/Bits : 9600 8N1 <br />
│ F – Controle de Fluxo por Hardware : Não<br />
│ G – Controle de Fluxo por Software : Não<br />
│<br />
│ Alterar qual configuração?<br />
└──────────────────────────────────────────────────────────┘<br />
<br />
- ''"Salvar configuração com dfl"''<br />
<br />
- ''Configurando a Interface Serial do Roteador:''<br />
<br />
enable;<br />
configure terminal;<br />
<br />
#Para configurar a interface serial:<br />
interface serial 0;<br />
ip address 10.0.0.1/30;<br />
encapsulation ppp;<br />
exit;<br />
<br />
#Para configurar a interface ethernet:<br />
interface fastethernet 0;<br />
ip address 172.18.0.1/24;<br />
exit;<br />
exit;<br />
<br />
#Para salvar as configurações:<br />
wr;<br />
<br />
'''Radius'''<br />
<br />
Para ter acesso a rede aDSL ou pela rede sem fio será usado Radius para que os usuários sejam autenticados. O RADIUS é um sistema utilizado para prover uma autenticação centralizada em redes dial-up, VPN's (Virtual Private Network) e redes sem fio. Ele tem um modelo cliente-servidor, onde o cliente é o Network Access Server (NAS). Esse servidor é responsável por obter a informação sobre o cliente e repassá-la para o servidor RADIUS, além de interpretar a resposta, dando ou não acesso ao cliente. O servidor RADIUS é responsável por receber pedidos de conexão, autenticar o usuário e repassar ao NAS as informações necessárias para esse dar acesso ao usuário na rede. <br />
<br />
'''Arquivos configurados:''' <br />
<br />
Configurar login e senha para o cliente Radius ( /etc/freeradius<br />
/users ):<br />
<br />
“Usúario” Cleartext-Password := "senha"<br />
“Usúario” User-Password := "senha"<br />
<br />
Teste antes se seu servidor Radius está autenticando usuáriosfaça o seguinte comando no AC PPPoE (que fica em Ac-server): <br />
<br />
radtest seu_usuario sua_senha IP_do_seu_servidor_Radius 1 segredo_do_seu_servidor_Radius<br />
<br />
Configurando o Servidor PPPoe (/etc/ppp/pppoe-servers-options): <br />
<br />
require-chap<br />
auth<br />
lcp-echo-interval 10<br />
lcp-echo-failure 2<br />
ms-dns IP do seu servidor DNS<br />
netmask 255.255.255.0<br />
noipdefault<br />
debug<br />
kdebug 4<br />
plugin radius.so<br />
plugin radattr.so<br />
radius-config-file /etc/radiusclient/teletec.conf<br />
mru 1492<br />
mtu 1492<br />
<br />
Configuração do Cliente Radius ( etc/radiusclient/teletec.conf ):<br />
<br />
auth_order radius<br />
login_tries 4<br />
login_timeout 60<br />
nologin /etc/nologin<br />
issue /etc/radiusclient/issue<br />
authserver 200.135.37.100<br />
acctserver 200.135.37.100<br />
servers /etc/radiusclient/servers<br />
dictionary /etc/radiusclient/dictionary<br />
login_radius /usr/sbin/login.radius<br />
seqfile /var/run/radius.seq<br />
mapfile /etc/radiusclient/port-id-map<br />
default_realm<br />
radius_timeout 10<br />
radius_retries 3<br />
login_local /bin/login<br />
<br />
Configurando o IP do Servidor Radius ( /etc/radiusclient/servers ):<br />
<br />
200.135.37.100 testing123<br />
<br />
Integrando Radius ao Banco de Dados<br />
<br />
Primeiro procedimento, instale o pacote. <br />
<br />
apt-get install freeradius-mysql<br />
Edite o arquivo de configuração do freeradius, e descomente a seguinte linha <br />
( /etc/freeradius/radiusd.conf ): <br />
<br />
$INCLUDE sql.conf<br />
<br />
Para entrar no MySQL execute o comando: <br />
<br />
mysql -u root -p <br />
<br />
Crie uma base de dados somente para o Radius e dê ao usuário Radius a devida permissão para acesso a esta base. No shell do MySQL, execute os comandos: <br />
<br />
CREATE DATABASE radius;<br />
GRANT ALL ON radius.* TO freerad@localhost IDENTIFIED BY "senha_do_usuário_freeradius";<br />
exit;<br />
<br />
Inserindo informações na base de dados: <br />
<br />
mysql -u “usuário” -p “senha do usuário radius” “database” < /etc/freeradius/sql/mysql/schema.sql<br />
mysql -u “usuário” -p “senha do usuário radius” “database” < /etc/freeradius/sql/mysql/nas.sql<br />
<br />
Editar o arquivo /etc/freeradius/sql.conf, colocando a senha do usuário Radius: <br />
<br />
passwrod = "senha do usuário radius"<br />
<br />
E descomente a linha do mesmo arquivo ( /etc/freeradius/sql.conf ) : <br />
<br />
readclients = yes<br />
<br />
Reinicie o FreeRadius: <br />
<br />
service freeradius restart<br />
<br />
== Cabeamento Estruturado ==<br />
<br />
Atividades Concluídas:<br />
<br />
- o A central telefônica ao DSLAM<br />
- o O DSLAM ao armário de telecom da equipe, através de uma linha telefone + DSL<br />
- o armário da equipe a uma área de trabalho. <br />
- O cabeamento permitiu a conexão do modem DSL no armário de telecom.<br />
- As tomadas da área de trabalho para conexão com Telefone e o Modem ADSL.<br />
<br />
== Programação para Redes de Computadores ==<br />
<br />
'''Os Arquivos PHP (pagina Web) Encontram-se dentro da pasta: ''/var/www/teletec'''''<br />
<br />
- Edição do Arquivo '''Verificação.php''':<br />
<br />
Esta pagina PHP verifica se o login e a senha do administrador esta correto.<br />
Se estiver correto vai para a pagina "principal.php" se não volta para "login.php".<br />
<br />
<?<br />
session_start();<br />
$login = $_POST['login'];<br />
$senha = $_POST['senha'];<br />
if ( ( $login == "LOGIN-DO-ADMIN" ) && ( $senha == "SENHA-DO-ADMIN" ) ){<br />
$_SESSION['autorizado'] = $login;<br />
Header ("Location: principal.php");<br />
}else{<br />
Header ("Location: login.php");<br />
}<br />
?><br />
<br />
- Edição do Arquivo '''sair.php''':<br />
<br />
Esta pagina PHP faz o administrador "deslogar" ("logoff") e depois volta para pagina "login.php"<br />
<br />
<?<br />
session_start();<br />
session_destroy();<br />
Header ("Location: login.php");<br />
?><br />
<br />
- Edição do arquivo '''principal.php''': <br />
<br />
Esta é a principal pagina PHP do site, nela verificamos os clientes criados e armazenados no banco de dados, redirecionamos para pagina que modifica os dominios (alterar.php), redirecionamos para pagina que remover os dominios (excluir.php)e tambem redirecionamos para a pagina que adiciona os dominios (adicionar.php).<br />
Quando é redirecionado para pagina de modificação e remoção tambem é enviado uma variavel com o dominio do cliente para saber qual usuario deve ser modificado ou alterado.<br />
<.?<br />
.session_start();<br />
.if (!isset($_SESSION['autorizado'])){<br />
.header ("Location: login.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Administrcao de Dominios</title><br />
<./head><br />
<.body><br />
<.p><a href="sair.php">Sair</a></p><br />
<.p></p><br />
<.p style="text-align:center;margin-left:auto;margin-right:auto;">Cliente Dominio Acao </p><br />
<br />
<.?<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$consulta = "SELECT * from clientes";<br />
$resultado = mysql_query($consulta,$conexao);<br />
while($linha = mysql_fetch_array($resultado)){<br />
$cliente = $linha['cliente'];<br />
$dominio = $linha['dominio'];<br />
.?><br />
<.form><br />
<.p style="text-align:center;margin-left:auto;margin-right:auto;"><br />
<.a name="cliente" id="cliente" href="alterar.php?id=<? echo $linha['dominio'];?>"> <?echo $.linha['cliente'];?></a> <br />
<.? echo $linha['dominio'];?> <a href="excluir.php?id=<? echo $linha['dominio'];?>"> Excluir</a></p><br />
<./form><br />
<.?<br />
.}<br />
.mysql_free_result($resultado);<br />
.mysql_close($conexao);<br />
.}<br />
.?><br />
<.p style="text-align:right;margin-left:auto;margin-right:0;"><br />
<.a href="adicionar.php"><span style="color:#ff0000">Adicionar novo dominio</span></a></p><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''mod-domínio.php''':<br />
<br />
Esta pagina PHP recebe três variaveis com o dominio antigo do clinete, o novo dominio e o novo nome do cliente, estas variaveis são repassadas para o script "mod-dominio.sh" e este é executado modificando o dominio e o nome do cliente, depois de executar o script as informações do banco de dados tambem são modificadas e o serviço APACHE2 é reiniciado.<br />
Após todo este processamento a pagina é redirecionada para 'principal.php".<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$cliente = $_POST['cliente'];<br />
$dominio = $_POST['dominio'];<br />
$antigo = $_POST['antigo'];;<br />
if (empty($dominio)) {<br />
$dominio = "invalido";<br />
} <br />
<br />
if (preg_match('/^[a-z0-9]+/', $dominio)){<br />
}else{<br />
$dominio = "invalido";<br />
} <br />
<br />
$arquivo = '/etc/bind/named.conf';<br />
$linhas = array();<br />
exec("cat $arquivo",$linhas);<br />
for ($i = 0 ; $i < sizeof($linhas); $i++){<br />
if ($linhas[$i] == "include \"/etc/bind/$dominio.conf\";"){<br />
$dominio = "invalido";<br />
}<br />
}<br />
if ($dominio == "invalido"){<br />
header ("Location: alterar.php");<br />
}else{ <br />
<br />
$script = "/etc/teletec/mod-dominio.sh $antigo '$cliente' $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$deletar = "DELETE FROM clientes WHERE dominio='$antigo.teletec.sj.ifsc.edu.br'";<br />
mysql_query($deletar,$conexao);<br />
mysql_close($conexao); <br />
<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$inserir = "INSERT INTO clientes (cliente,dominio) VALUES ('$cliente','$dominio.teletec.sj.ifsc.edu.br')";<br />
mysql_query($inserir,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php"); <br />
<br />
}<br />
.}<br />
?.><br />
<br />
- Edição do Arquivo '''login.php''': <br />
<br />
Esta pagina PHP recolhe o login e a senha fornecidas pelo administrador atraves de um formulario e manda para a pagina PHP de processamento que verifica se esta correto.<br />
.<?<br />
.session_start();<br />
.if (isset($_SESSION['autorizado'])){<br />
.Header ("Location: principal.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Hospedagem Web</title><br />
<./head><br />
<br />
<.body><br />
<.p></p><br />
<.p>Sistemas de Hospedagem de Sitios Web</p><br />
<.p></p><br />
<.form name="formTeste" action="verificacao.php" method="post"><br />
<.p>Usu&#xe1;rio:<br><br />
<.input type="text" name="login"> <br />
<.p>Senha:<br> <br />
<.input type="password" name="senha"> <br />
<.input type="submit" name="b_enviar" value="Entrar"><br />
<./form><br />
<.p></p><br />
<.?<br />
}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''Index.php''':<br />
<br />
Esta pagina apenas redireciona para "login.php"<br />
<.?<br />
Header ("Location: login.php");<br />
.?><br />
<br />
- Edição do Arquivo '''excluir.php''':<br />
<br />
Esta pagina PHP faz uma verificação, se o administrador realmente querer excluir o dominio é mandado o dominio do clinete em uma variavel para a pagina PHP de processamento "del-dominio.php" e a pagina é redirecionada para la, mais se o usuario não quiser escluir é mandado novamente para p pagina "principal.php".<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){ <br />
header ("Location: login.php");<br />
}else{<br />
$id=$_GET['id'];<br />
$parte1 = explode(".", $id);<br />
$antigo = $parte1[0];<br />
?.><br />
<.html><br />
<head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Excluir o cliente</title><br />
<./head><br />
<.body><br />
<.p>Voce realmente deseja excluir o cliente?</p><br />
<br />
<.p><a href="del-dominio.php?id=<?echo $antigo;?>">Sim</a> <a<br />
.href="principal.php">Nao</a></p><br />
<.p></p><br />
<?<br />
}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''del-dominio.php''':<br />
<br />
Esta pagina PHP é uma pagina de processamento que recebe em uma variavel o nome do dominio que sera removido e transfere esta variavel para o script em bash "del-dominio.sh" ja executa o script, depois este dominio é removido do banco de dados e o serviço APACHE2 é reiniciado.<br />
Após todo o processamento a pagina é redirecionada para "principal.php".<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$dominio = $_GET['id'];<br />
$script = "/etc/teletec/del-dominio.sh $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$deletar = "DELETE FROM clientes WHERE dominio='$dominio.teletec.sj.ifsc.edu.br'";<br />
mysql_query($deletar,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php");<br />
}<br />
?.><br />
<br />
- Edição do '''Arquivo alterar.php''': <br />
<br />
Nesta pagina PHP o administrador informa o novo nome do cliente e o novo dominio, estas informações são gravadas em uma variavel que será mandada para a pagina PHP que vai fazer todo o trabalho de processamento (mod-dominio.php).<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){ <br />
header ("Location: login.php");<br />
}else{<br />
$id=$_GET['id'];<br />
$parte1 = explode(".", $id);<br />
$antigo = $parte1[0];<br />
?.><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Alterar Dominio</title><br />
</.head><br />
<.body><br />
<.p><.a href="principal.php">Voltar </a></p><br />
<.form name="formTeste" action="mod-dominio.php" method="post"><br />
<.p>Novo nome do cliente: <br><br />
<.input type="text" name="cliente"><br />
<.p>Novo dominio: <br><br />
<.input type="text" name="dominio"><br />
<.input type="hidden" name="antigo" value="<?echo $antigo;?>"> <br />
<.input type="submit" name="b_enviar" value="Alterar"><br />
<./form><br />
<.?<br />
}<br />
?.><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''adicionar.php''':<br />
<br />
Esta pagina PHP recolhe duas variaveis atraves do formulrios, em uma esta o nome do clinete e na outra o dominio escolhido, estas variaveis são repassadas para a pagina de processamento que vai adicionar este novo subdominio (add-dominio.php).Depois ela é redirecionada para a pagina de processamento "add-dominio.php".<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Adicionar Cliente</title><br />
<./head><br />
<.body><br />
<.p><.a href="principal.php">Voltar </a></p><br />
<.form name="formTeste" action="add-dominio.php" method="post"><br />
<.p>Nome do cliente: <br><br />
<.input type="text" name="cliente"><br />
<.p>Dominio: <br><br />
<.input type="text" name="dominio"><br />
<.input type="submit" name="b_enviar" value="Criar"><br />
<./form><br />
<.?<br />
.}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''add-dominio.php''':<br />
<br />
Esta pagina PHP é uma pagina de processamento que recebe duas variaveis, na primeira esta o nome do dominio que sera removido e na segunda está o dominio do cliente, estas variaveis são transferidas para o script em bash "add-dominio.sh" que é executado, depois este dominio é adicionado no banco de dados e o serviço APACHE2 é reiniciado.<br />
Após todo o processamento a pagina é redirecionada para "principal.php".<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$cliente = $_POST['cliente'];<br />
$dominio = $_POST['dominio']; <br />
<br />
if (empty($dominio)) {<br />
$dominio = "invalido";<br />
} <br />
<br />
if (preg_match('/^[a-z0-9]+/', $dominio)){<br />
}else{<br />
$dominio = "invalido";<br />
} <br />
<br />
$arquivo = '/etc/bind/named.conf';<br />
$linhas = array();<br />
exec("cat $arquivo",$linhas);<br />
for ($i = 0 ; $i < sizeof($linhas); $i++){<br />
if ($linhas[$i] == "include \"/etc/bind/$dominio.conf\";"){<br />
$dominio = "invalido";<br />
}<br />
}<br />
if ($dominio == "invalido"){<br />
header ("Location: adicionar.php");<br />
}else{<br />
$script = "/etc/teletec/add-dominio.sh '$cliente' $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$inserir = "INSERT INTO clientes (cliente,dominio) VALUES ('$cliente','$dominio.teletec.sj.ifsc.edu.br')";<br />
mysql_query($inserir,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php");<br />
}<br />
}<br />
?.><br />
<br />
'''Os Arquivos .sh (scripts que adicionam, removem ou alteram os usuários no servidor) Encontram-se dentro da pasta: ''/etc/teletec''''' <br />
<br />
- Edição do Arquivo '''mod-dominio.sh''':<br />
Script em bash que altera o dominio do cliente (Subdominio, E-mail e Pagina WEB):<br />
<br />
O script de modificação na verdade exclui o dominio criado e cria um novo, os scripts de remover e adicionar estão juntos neste script.<br />
<br />
#!/bin/bash<br />
#Leonardo<br />
#echo -n "Dominio: "<br />
#read antigo<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$antigo'.conf";' ];then<br />
# valido=sim<br />
# break<br />
# else<br />
# valido=nao<br />
# fi<br />
#done<br />
#if [ $valido = nao ];then<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio não existe ou esta em branco.\n"<br />
# exit<br />
#fi<br />
#echo -n "Novo nome para o cliente: "<br />
#read nome<br />
#echo -n "Novo dominio: "<br />
#read dominio<br />
#echo=${dominio:=nulo}<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$dominio'.conf";' ];then<br />
# dominio=existe<br />
# break<br />
# fi<br />
#done<br />
#if [ $dominio != nulo ] && [ $dominio != existe ];then<br />
antigo=$1<br />
nome=$2<br />
dominio=$3<br />
sudo sed -i '/\/etc\/bind\/'$antigo'\.conf/Id' /etc/bind/named.conf<br />
sudo rm /etc/bind/$antigo.conf<br />
sudo rm /etc/bind/$antigo.zone<br />
sudo rm /etc/apache2/sites-enabled/$antigo-default<br />
sudo rm -r /var/www/$antigo<br />
sudo sed -i '/'$antigo'\.teletec\.sj\.ifsc\.edu\.br Subdominio-'$antigo'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$antigo'@teletec\.sj\.ifsc\.edu\.br '$antigo'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$antigo'\.teletec\.sj\.ifsc\.edu\.br OK/Id' /etc/postfix/mydomains <br />
<br />
sudo echo 'include "/etc/bind/'$dominio'.conf";' >> /etc/bind/named.conf<br />
numero=`date | cut -d ":" -f 3 | cut -d " " -f 1`<br />
novoserial=$((1000000000+$numero))<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.conf > /etc/bind/$dominio.conf<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.zone | sed s/2011061504/$novoserial/g > /etc/bind/$dominio.zone<br />
sudo /etc/init.d/bind9 restart<br />
sudo sed s/padrao/$dominio/g /etc/apache2/sites-available/padrao-default > /etc/apache2/sites-enabled/$dominio-default<br />
mkdir /var/www/$dominio<br />
sed s/dominio/$dominio/g /var/www/padrao/index.html | sed s/nome/"$nome"/g > /var/www/$dominio/index.html<br />
sudo echo ' ' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br Subdominio-'$dominio'' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'@teletec.sj.ifsc.edu.br '$dominio'' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br OK' >> /etc/postfix/mydomains<br />
sudo postmap /etc/postfix/virtual<br />
sudo postmap /etc/postfix/mydomains<br />
sudo /etc/init.d/postfix restart<br />
# echo -e " * Dominio modificado com sucesso!\t\t\t\t[ OK ]\n"<br />
# else<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio ja existe ou esta em branco.\n"<br />
#fi<br />
<br />
- Edição do Arquivo '''del-dominio.sh''':<br />
Script em bash que remove o cliente (Subdominio, E-mail e Pagina WEB):<br />
<br />
Exclui todos os arquivos de configuração criados para este cliente e retira as linhas de configuração adicionadas em arquivos como o "named.conf", "virtual" e "mydomains", por ultimo os serviçoes DNS e POSTFIX são reiniciados ( o APACHE2 é reiniciado na pagina PHP).<br />
<br />
#!/bin/bash<br />
#Leonardo<br />
#echo -n "Dominio: "<br />
#read dominio<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$dominio'.conf";' ];then<br />
dominio=$1<br />
sudo sed -i '/\/etc\/bind\/'$dominio'\.conf/Id' /etc/bind/named.conf<br />
sudo rm /etc/bind/$dominio.conf<br />
sudo rm /etc/bind/$dominio.zone<br />
sudo /etc/init.d/bind9 restart<br />
sudo rm /etc/apache2/sites-enabled/$dominio-default<br />
sudo rm -r /var/www/$dominio<br />
sudo sed -i '/'$dominio'\.teletec\.sj\.ifsc\.edu\.br Subdominio-'$dominio'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$dominio'@teletec\.sj\.ifsc\.edu\.br '$dominio'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$dominio'\.teletec\.sj\.ifsc\.edu\.br OK/Id' /etc/postfix/mydomains<br />
sudo postmap /etc/postfix/virtual<br />
sudo postmap /etc/postfix/mydomains<br />
sudo /etc/init.d/postfix restart<br />
# echo -e " * Dominio removido com sucesso!\t\t\t\t[ OK ]\n"<br />
# exit<br />
# fi<br />
#done<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio não existe ou esta em branco.\n"<br />
<br />
- Edição do Arquivo '''add-dominio.sh''': <br />
Script em bash que adiciona o cliente (Subdominio, E-mail e Pagina WEB):<br />
<br />
Sub-dominio: O script pega como base arquivos padrões ja criados e configurados ( padrao.conf e padrao.zone ), altera todas as palavras "padrao" destes arvivos pelo dominio escolhido pelo usuario e salva como "dominio-escolhido".zone e "dominio-escolhido".conf. Alem disso ele tambem inclui o caminho do arquivo de configuração ".conf" no "named.conf".<br />
<br />
Pagina-Web: Assim como no sub-dominio, o script troca as palavras "padrao" que estão em um arquivo padrao de configuração ( padrao-default) pelo dominio escolhido pelo cliente, criando um novo arquivo de configuração com nome "dominio-escolhido"-default. Tambem cria uma pagina web html padrao.<br />
<br />
E-mail: O script adiciona as linhas de configuração do e-mail do cliente nos arquivos "virtual" e "mydomains".<br />
<br />
Após fazer as confgurações o script reinicia o DNS e o POSTFIX. (o APACHE2 é reiniciado na pagina PHP).<br />
<br />
#!/bin/bash<br />
# Leonardo<br />
#echo -n "Nome do cliente: "<br />
#read nome<br />
#echo -n "Dominio: " <br />
#read dominio<br />
#echo=${dominio:=nulo}<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$dominio'.conf";' ];then<br />
# dominio=existe<br />
# break<br />
# fi <br />
#done<br />
#<br />
#if [ $dominio != nulo ] && [ $dominio != existe ];then<br />
nome=$1<br />
dominio=$2<br />
sudo echo 'include "/etc/bind/'$dominio'.conf";' >> /etc/bind/named.conf<br />
numero=`date | cut -d ":" -f 3 | cut -d " " -f 1`<br />
novoserial=$((1000000000+$numero))<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.conf > /etc/bind/$dominio.conf<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.zone | sed s/2011061504/$novoserial/g > /etc/bind/$dominio.zone<br />
sudo /etc/init.d/bind9 restart<br />
sudo sed s/padrao/$dominio/g /etc/apache2/sites-available/padrao-default > /etc/apache2/sites-enabled/$dominio-default<br />
mkdir /var/www/$dominio<br />
sed s/dominio/$dominio/g /var/www/padrao/index.html | sed s/nome/"$nome"/g > /var/www/$dominio/index.html<br />
sudo echo ' ' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br Subdominio-'$dominio'' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'@teletec.sj.ifsc.edu.br '$dominio'' >> /etc/postfix/virtual <br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br OK' >> /etc/postfix/mydomains<br />
sudo postmap /etc/postfix/virtual<br />
sudo postmap /etc/postfix/mydomains<br />
sudo /etc/init.d/postfix restart<br />
# echo -e " * Dominio criado com sucesso!\t\t\t\t[ OK ]\n"<br />
# else<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio ja existe ou esta em branco.\n"<br />
#fi</div>Vagner.chttps://wiki.sj.ifsc.edu.br/index.php?title=Projeto_Integrador_-_2011.1_-_Teletec&diff=34802Projeto Integrador - 2011.1 - Teletec2011-07-09T21:50:58Z<p>Vagner.c: </p>
<hr />
<div>== * '''Equipe 2 : TELETEC''' ==<br />
<br />
----<br />
<br />
== INTEGRANTES TELETEC ==<br />
<br />
* '''Daniel Estefano'''; estefano.daniel@gmail.com <br />
* '''Denis Teixeira'''; denisteixeira3@gmail.com <br />
* '''Leonardo Oliveira P.'''; leonardo-op@live.com <br />
* '''Odair de Moraes'''; odairdmoraes@hotmail.com<br />
* '''Robson de Carvalho'''; rob_carvalho12@hotmail.com<br />
* '''Vagner Cordeiro.''' cordeirotelecom@gmail.com<br />
<br />
----<br />
<br />
== '''SOBRE A EMPRESA TELETEC - PROVEDORA DE ACESSO Á INTERNET:''' == <br />
<br />
A Empresa Oferece os seguintes serviços: <br />
<br />
# Conta de Usuário para cada cliente;<br />
# Conta de E-mail para cada cliente;<br />
# Uma página Web Padrão;<br />
# Instalação do Modem ADSL e do Cabeamento Estrurado;<br />
# Acesso Wirelles;<br />
<br />
== Etapas Iniciais de Configurações da Rede ==<br />
<br />
<br />
# Instalação do Sistema Operacional:Ubuntu-Server;<br />
# Definido Sistema de Arquivo, Dividido em 3 Partições: ''1 Partição Primátia, 1 Partição Secundária e uma Partição para Swap;'' <br />
# Definido nome do Domínio: teletec.sj.ifsc.edu.br;<br />
# Criado um Usuário: Tecnico;<br />
# Acesso via SSH ao Servidor Teletec.<br />
<br />
----<br />
<br />
== Gerencia de Redes: Apache, Postfix e DNS ==<br />
<br />
'''Configurações do servidor DNS:''' <br />
<br />
- Edição do Arquivo para IP Estático: '''/etc/network/interfaces''' <br />
<br />
# This file describes the network interfaces available on your system<br />
# and how to activate them. For more information, see interfaces(5).<br />
# The loopback network interface<br />
auto lo<br />
iface lo inet loopback<br />
# The primary network interface<br />
auto eth0<br />
iface eth0 inet static<br />
address 200.135.37.100<br />
netmask 255.255.255.192<br />
gateway 200.135.37.126 <br />
<br />
- Edição do Arquivo do servidor DNS '''/etc/bind/named.conf''' <br />
<br />
Indica todos os arquivos que vai fazer a configuração dele<br />
<br />
// This is the primary configuration file for the BIND DNS server named.<br />
//<br />
// Please read /usr/share/doc/bind9/README.Debian.gz for information on the <br />
// structure of BIND configuration files in Debian, *BEFORE* you customize <br />
// this configuration file.<br />
//<br />
// If you are just adding zones, please do that in /etc/bind/named.conf.local<br />
include "/etc/bind/named.conf.options";<br />
include "/etc/bind/named.conf.local";<br />
include "/etc/bind/named.conf.default-zones";<br />
include "/etc/bind/servidor.conf";<br />
include "/etc/bind/tecnico.conf";<br />
include "/etc/bind/daniel.conf";<br />
<br />
- Edição do Arquivo de servidor DNS: named.conf.local '''/etc/bind/named.conf.local'''<br />
É um arquivo padrão do BIND onde foi configurado o o nosso dominino TELETEC.<br />
<br />
//<br />
// Do any local configuration here<br />
//<br />
<br />
// Consider adding the 1918 zones here, if they are not used in your<br />
// organization<br />
//include "/etc/bind/zones.rfc1918"8;<br />
zone "teletec.sj.ifsc.edu.br." IN {<br />
type master;<br />
file "/etc/bind/teletec.zone";<br />
allow-update { none; };<br />
};<br />
<br />
- Edição do Arquivo de DNS Reverso: '''/etc/bind/37.135.200.in-addr.arpa'''<br />
O DNS Reverso resolve um endereço IP para um nome de servidor – por exemplo, ele poderia resolver 200.176.3.142 para exemplo.hipotetico.com.br.<br />
<br />
$TTL 86400<br />
@ IN SOA servidor.teletec.sj.ifsc.edu.br. root (<br />
2011061500 ;<br />
1d ;<br />
1h ;<br />
1w ; <br />
1d ;<br />
)<br />
IN NS servidor.teletec.sj.ifsc.edu.br.<br />
100 IN PTR servidor.teletec.sj.ifsc.edu.br.<br />
<br />
- Edição do Arquivo para criar um subdomínio:'''/etc/bind/teletec.zone'''<br />
Arquivo que traz todas as configurações de cada subdomínio. <br />
<br />
$TTL 86400<br />
@ IN SOA teletec.teletec.sj.ifsc.edu.br root (<br />
2011062901;<br />
3H;<br />
15M;<br />
1W;<br />
1D );<br />
IN NS teletec.teletec.sj.ifsc.edu.br.<br />
IN MX 0 mail.teletec.sj.ifsc.edu.br.<br />
localhost IN A 127.0.0.1<br />
$ORIGIN teletec.sj.ifsc.edu.br.<br />
teletec A 200.135.37.100<br />
www A 200.135.37.100<br />
mail A 200.135.37.100<br />
<br />
- '''Configuração do servidor Apache'''<br />
<br />
No servidor Apache foi feito a instalação com o comando:<br />
apt-get install apache2<br />
E nele não foi preciso fazer configuraçoẽs, nele vai ser criado uma nova nova pagina web para cada novo cliente na pasta:'' /etc/apache2/sites-enabled''' essas paginas web serão adicionadas automaticamente pelo script <br />
<br />
- '''Configuração do servidor POSTFIX'''<br />
<br />
*Primeiro foi feito a instalação com o comando:<br />
<br />
apt-get install postfix<br />
<br />
Em seguida o programa de instalação vai fazer algumas perguntas sobre a localização dos arquivos e alguns parametros <br />
<br />
== Instalação de Equipamento de Redes (Modem, Switch e Roteadores) ==<br />
<br />
'''Configurações:''' <br />
<br />
Instalação:<br />
<br />
minicom -s<br />
<br />
Configuração do Roteador Cisco 1700: <br />
<br />
* Configuração dos Dois Roteadores Utilizando a ferramenta "Minicon" (Se fosse Windows seria Hyperterminal)<br />
* Configuração dos dispositivos: Serial e Ethernet<br />
* Configuração como Protocolo PPP<br />
<br />
- ''"Configuração da porta serial":''<br />
<br />
┌─────────────[configuração]──────────────┐<br />
│ Nomes de arquivos e rotas<br />
│ Protocolos de transferência de arquivos<br />
│ Configuração da porta serial<br />
│ Modem e discagem<br />
│ Tela e teclado<br />
│ Salvar configuração como dfl<br />
│ Salvar configuração como<br />
│ Sair<br />
│ Sair do Minicom<br />
└────────────────────────────────────────┘<br />
<br />
- ''"Alteração da Porta Serial"''<br />
┌──────────────────────────────────────────────────────────┐<br />
│ A – Dispositivo Serial : /dev/ttSy0 <br />
│ B – Localização do Arquivo de Travamento : /var/lock<br />
│ C – Programa de Entrada :<br />
│ D – Programa de Saída :<br />
│ E – Bps/Paridade/Bits : 9600 8N1 <br />
│ F – Controle de Fluxo por Hardware : Não<br />
│ G – Controle de Fluxo por Software : Não<br />
│<br />
│ Alterar qual configuração?<br />
└──────────────────────────────────────────────────────────┘<br />
<br />
- ''"Salvar configuração com dfl"''<br />
<br />
- ''Configurando a Interface Serial do Roteador:''<br />
<br />
enable;<br />
configure terminal;<br />
<br />
#Para configurar a interface serial:<br />
interface serial 0;<br />
ip address 10.0.0.1/30;<br />
encapsulation ppp;<br />
exit;<br />
<br />
#Para configurar a interface ethernet:<br />
interface fastethernet 0;<br />
ip address 172.18.0.1/24;<br />
exit;<br />
exit;<br />
<br />
#Para salvar as configurações:<br />
wr;<br />
<br />
'''Radius'''<br />
<br />
Para ter acesso a rede aDSL ou pela rede sem fio será usado Radius para que os usuários sejam autenticados. O RADIUS é um sistema utilizado para prover uma autenticação centralizada em redes dial-up, VPN's (Virtual Private Network) e redes sem fio. Ele tem um modelo cliente-servidor, onde o cliente é o Network Access Server (NAS). Esse servidor é responsável por obter a informação sobre o cliente e repassá-la para o servidor RADIUS, além de interpretar a resposta, dando ou não acesso ao cliente. O servidor RADIUS é responsável por receber pedidos de conexão, autenticar o usuário e repassar ao NAS as informações necessárias para esse dar acesso ao usuário na rede. <br />
<br />
'''Arquivos configurados:''' <br />
<br />
Configurar login e senha para o cliente Radius ( /etc/freeradius<br />
/users ):<br />
<br />
“Usúario” Cleartext-Password := "senha"<br />
“Usúario” User-Password := "senha"<br />
<br />
Teste antes se seu servidor Radius está autenticando usuáriosfaça o seguinte comando no AC PPPoE (que fica em Ac-server): <br />
<br />
radtest seu_usuario sua_senha IP_do_seu_servidor_Radius 1 segredo_do_seu_servidor_Radius<br />
<br />
Configurando o Servidor PPPoe (/etc/ppp/pppoe-servers-options): <br />
<br />
require-chap<br />
auth<br />
lcp-echo-interval 10<br />
lcp-echo-failure 2<br />
ms-dns IP do seu servidor DNS<br />
netmask 255.255.255.0<br />
noipdefault<br />
debug<br />
kdebug 4<br />
plugin radius.so<br />
plugin radattr.so<br />
radius-config-file /etc/radiusclient/teletec.conf<br />
mru 1492<br />
mtu 1492<br />
<br />
Configuração do Cliente Radius ( etc/radiusclient/teletec.conf ):<br />
<br />
auth_order radius<br />
login_tries 4<br />
login_timeout 60<br />
nologin /etc/nologin<br />
issue /etc/radiusclient/issue<br />
authserver 200.135.37.100<br />
acctserver 200.135.37.100<br />
servers /etc/radiusclient/servers<br />
dictionary /etc/radiusclient/dictionary<br />
login_radius /usr/sbin/login.radius<br />
seqfile /var/run/radius.seq<br />
mapfile /etc/radiusclient/port-id-map<br />
default_realm<br />
radius_timeout 10<br />
radius_retries 3<br />
login_local /bin/login<br />
<br />
Configurando o IP do Servidor Radius ( /etc/radiusclient/servers ):<br />
<br />
200.135.37.100 testing123<br />
<br />
Integrando Radius ao Banco de Dados<br />
<br />
Primeiro procedimento, instale o pacote. <br />
<br />
apt-get install freeradius-mysql<br />
Edite o arquivo de configuração do freeradius, e descomente a seguinte linha <br />
( /etc/freeradius/radiusd.conf ): <br />
<br />
$INCLUDE sql.conf<br />
<br />
Para entrar no MySQL execute o comando: <br />
<br />
mysql -u root -p <br />
<br />
Crie uma base de dados somente para o Radius e dê ao usuário Radius a devida permissão para acesso a esta base. No shell do MySQL, execute os comandos: <br />
<br />
CREATE DATABASE radius;<br />
GRANT ALL ON radius.* TO freerad@localhost IDENTIFIED BY "senha_do_usuário_freeradius";<br />
exit;<br />
<br />
Inserindo informações na base de dados: <br />
<br />
mysql -u “usuário” -p “senha do usuário radius” “database” < /etc/freeradius/sql/mysql/schema.sql<br />
mysql -u “usuário” -p “senha do usuário radius” “database” < /etc/freeradius/sql/mysql/nas.sql<br />
<br />
Editar o arquivo /etc/freeradius/sql.conf, colocando a senha do usuário Radius: <br />
<br />
passwrod = "senha do usuário radius"<br />
<br />
E descomente a linha do mesmo arquivo ( /etc/freeradius/sql.conf ) : <br />
<br />
readclients = yes<br />
<br />
Reinicie o FreeRadius: <br />
<br />
service freeradius restart<br />
<br />
== Cabeamento Estruturado ==<br />
<br />
Atividades Concluídas:<br />
<br />
- o A central telefônica ao DSLAM<br />
- o O DSLAM ao armário de telecom da equipe, através de uma linha telefone + DSL<br />
- o armário da equipe a uma área de trabalho. <br />
- O cabeamento permitiu a conexão do modem DSL no armário de telecom.<br />
- As tomadas da área de trabalho para conexão com Telefone e o Modem ADSL.<br />
<br />
== Programação para Redes de Computadores ==<br />
<br />
'''Os Arquivos PHP (pagina Web) Encontram-se dentro da pasta: ''/var/www/teletec'''''<br />
<br />
- Edição do Arquivo '''Verificação.php''':<br />
<br />
Esta pagina PHP verifica se o login e a senha do administrador esta correto.<br />
Se estiver correto vai para a pagina "principal.php" se não volta para "login.php".<br />
<br />
<?<br />
session_start();<br />
$login = $_POST['login'];<br />
$senha = $_POST['senha'];<br />
if ( ( $login == "LOGIN-DO-ADMIN" ) && ( $senha == "SENHA-DO-ADMIN" ) ){<br />
$_SESSION['autorizado'] = $login;<br />
Header ("Location: principal.php");<br />
}else{<br />
Header ("Location: login.php");<br />
}<br />
?><br />
<br />
- Edição do Arquivo '''sair.php''':<br />
<br />
Esta pagina PHP faz o administrador "deslogar" ("logoff") e depois volta para pagina "login.php"<br />
<br />
<?<br />
session_start();<br />
session_destroy();<br />
Header ("Location: login.php");<br />
?><br />
<br />
- Edição do arquivo '''principal.php''': <br />
<br />
Esta é a principal pagina PHP do site, nela verificamos os clientes criados e armazenados no banco de dados, redirecionamos para pagina que modifica os dominios (alterar.php), redirecionamos para pagina que remover os dominios (excluir.php)e tambem redirecionamos para a pagina que adiciona os dominios (adicionar.php).<br />
Quando é redirecionado para pagina de modificação e remoção tambem é enviado uma variavel com o dominio do cliente para saber qual usuario deve ser modificado ou alterado.<br />
<.?<br />
.session_start();<br />
.if (!isset($_SESSION['autorizado'])){<br />
.header ("Location: login.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Administrcao de Dominios</title><br />
<./head><br />
<.body><br />
<.p><a href="sair.php">Sair</a></p><br />
<.p></p><br />
<.p style="text-align:center;margin-left:auto;margin-right:auto;">Cliente Dominio Acao </p><br />
<br />
<.?<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$consulta = "SELECT * from clientes";<br />
$resultado = mysql_query($consulta,$conexao);<br />
while($linha = mysql_fetch_array($resultado)){<br />
$cliente = $linha['cliente'];<br />
$dominio = $linha['dominio'];<br />
.?><br />
<.form><br />
<.p style="text-align:center;margin-left:auto;margin-right:auto;"><br />
<.a name="cliente" id="cliente" href="alterar.php?id=<? echo $linha['dominio'];?>"> <?echo $.linha['cliente'];?></a> <br />
<.? echo $linha['dominio'];?> <a href="excluir.php?id=<? echo $linha['dominio'];?>"> Excluir</a></p><br />
<./form><br />
<.?<br />
.}<br />
.mysql_free_result($resultado);<br />
.mysql_close($conexao);<br />
.}<br />
.?><br />
<.p style="text-align:right;margin-left:auto;margin-right:0;"><br />
<.a href="adicionar.php"><span style="color:#ff0000">Adicionar novo dominio</span></a></p><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''mod-domínio.php''':<br />
<br />
Esta pagina PHP recebe três variaveis com o dominio antigo do clinete, o novo dominio e o novo nome do cliente, estas variaveis são repassadas para o script "mod-dominio.sh" e este é executado modificando o dominio e o nome do cliente, depois de executar o script as informações do banco de dados tambem são modificadas e o serviço APACHE2 é reiniciado.<br />
Após todo este processamento a pagina é redirecionada para 'principal.php".<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$cliente = $_POST['cliente'];<br />
$dominio = $_POST['dominio'];<br />
$antigo = $_POST['antigo'];;<br />
if (empty($dominio)) {<br />
$dominio = "invalido";<br />
} <br />
<br />
if (preg_match('/^[a-z0-9]+/', $dominio)){<br />
}else{<br />
$dominio = "invalido";<br />
} <br />
<br />
$arquivo = '/etc/bind/named.conf';<br />
$linhas = array();<br />
exec("cat $arquivo",$linhas);<br />
for ($i = 0 ; $i < sizeof($linhas); $i++){<br />
if ($linhas[$i] == "include \"/etc/bind/$dominio.conf\";"){<br />
$dominio = "invalido";<br />
}<br />
}<br />
if ($dominio == "invalido"){<br />
header ("Location: alterar.php");<br />
}else{ <br />
<br />
$script = "/etc/teletec/mod-dominio.sh $antigo '$cliente' $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$deletar = "DELETE FROM clientes WHERE dominio='$antigo.teletec.sj.ifsc.edu.br'";<br />
mysql_query($deletar,$conexao);<br />
mysql_close($conexao); <br />
<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$inserir = "INSERT INTO clientes (cliente,dominio) VALUES ('$cliente','$dominio.teletec.sj.ifsc.edu.br')";<br />
mysql_query($inserir,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php"); <br />
<br />
}<br />
.}<br />
?.><br />
<br />
- Edição do Arquivo '''login.php''': <br />
<br />
Esta pagina PHP recolhe o login e a senha fornecidas pelo administrador atraves de um formulario e manda para a pagina PHP de processamento que verifica se esta correto.<br />
.<?<br />
.session_start();<br />
.if (isset($_SESSION['autorizado'])){<br />
.Header ("Location: principal.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Hospedagem Web</title><br />
<./head><br />
<br />
<.body><br />
<.p></p><br />
<.p>Sistemas de Hospedagem de Sitios Web</p><br />
<.p></p><br />
<.form name="formTeste" action="verificacao.php" method="post"><br />
<.p>Usu&#xe1;rio:<br><br />
<.input type="text" name="login"> <br />
<.p>Senha:<br> <br />
<.input type="password" name="senha"> <br />
<.input type="submit" name="b_enviar" value="Entrar"><br />
<./form><br />
<.p></p><br />
<.?<br />
}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''Index.php''':<br />
<br />
Esta pagina apenas redireciona para "login.php"<br />
<.?<br />
Header ("Location: login.php");<br />
.?><br />
<br />
- Edição do Arquivo '''excluir.php''':<br />
<br />
Esta pagina PHP faz uma verificação, se o administrador realmente querer excluir o dominio é mandado o dominio do clinete em uma variavel para a pagina PHP de processamento "del-dominio.php" e a pagina é redirecionada para la, mais se o usuario não quiser escluir é mandado novamente para p pagina "principal.php".<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){ <br />
header ("Location: login.php");<br />
}else{<br />
$id=$_GET['id'];<br />
$parte1 = explode(".", $id);<br />
$antigo = $parte1[0];<br />
?.><br />
<.html><br />
<head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Excluir o cliente</title><br />
<./head><br />
<.body><br />
<.p>Voce realmente deseja excluir o cliente?</p><br />
<br />
<.p><a href="del-dominio.php?id=<?echo $antigo;?>">Sim</a> <a<br />
.href="principal.php">Nao</a></p><br />
<.p></p><br />
<?<br />
}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''del-dominio.php''':<br />
<br />
Esta pagina PHP é uma pagina de processamento que recebe em uma variavel o nome do dominio que sera removido e transfere esta variavel para o script em bash "del-dominio.sh" ja executa o script, depois este dominio é removido do banco de dados e o serviço APACHE2 é reiniciado.<br />
Após todo o processamento a pagina é redirecionada para "principal.php".<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$dominio = $_GET['id'];<br />
$script = "/etc/teletec/del-dominio.sh $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$deletar = "DELETE FROM clientes WHERE dominio='$dominio.teletec.sj.ifsc.edu.br'";<br />
mysql_query($deletar,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php");<br />
}<br />
?.><br />
<br />
- Edição do '''Arquivo alterar.php''': <br />
<br />
Nesta pagina PHP o administrador informa o novo nome do cliente e o novo dominio, estas informações são gravadas em uma variavel que será mandada para a pagina PHP que vai fazer todo o trabalho de processamento (mod-dominio.php).<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){ <br />
header ("Location: login.php");<br />
}else{<br />
$id=$_GET['id'];<br />
$parte1 = explode(".", $id);<br />
$antigo = $parte1[0];<br />
?.><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Alterar Dominio</title><br />
</.head><br />
<.body><br />
<.p><.a href="principal.php">Voltar </a></p><br />
<.form name="formTeste" action="mod-dominio.php" method="post"><br />
<.p>Novo nome do cliente: <br><br />
<.input type="text" name="cliente"><br />
<.p>Novo dominio: <br><br />
<.input type="text" name="dominio"><br />
<.input type="hidden" name="antigo" value="<?echo $antigo;?>"> <br />
<.input type="submit" name="b_enviar" value="Alterar"><br />
<./form><br />
<.?<br />
}<br />
?.><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''adicionar.php''':<br />
<br />
Esta pagina PHP recolhe duas variaveis atraves do formulrios, em uma esta o nome do clinete e na outra o dominio escolhido, estas variaveis são repassadas para a pagina de processamento que vai adicionar este novo subdominio (add-dominio.php).Depois ela é redirecionada para a pagina de processamento "add-dominio.php".<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Adicionar Cliente</title><br />
<./head><br />
<.body><br />
<.p><.a href="principal.php">Voltar </a></p><br />
<.form name="formTeste" action="add-dominio.php" method="post"><br />
<.p>Nome do cliente: <br><br />
<.input type="text" name="cliente"><br />
<.p>Dominio: <br><br />
<.input type="text" name="dominio"><br />
<.input type="submit" name="b_enviar" value="Criar"><br />
<./form><br />
<.?<br />
.}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''add-dominio.php''':<br />
<br />
Esta pagina PHP é uma pagina de processamento que recebe duas variaveis, na primeira esta o nome do dominio que sera removido e na segunda está o dominio do cliente, estas variaveis são transferidas para o script em bash "add-dominio.sh" que é executado, depois este dominio é adicionado no banco de dados e o serviço APACHE2 é reiniciado.<br />
Após todo o processamento a pagina é redirecionada para "principal.php".<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$cliente = $_POST['cliente'];<br />
$dominio = $_POST['dominio']; <br />
<br />
if (empty($dominio)) {<br />
$dominio = "invalido";<br />
} <br />
<br />
if (preg_match('/^[a-z0-9]+/', $dominio)){<br />
}else{<br />
$dominio = "invalido";<br />
} <br />
<br />
$arquivo = '/etc/bind/named.conf';<br />
$linhas = array();<br />
exec("cat $arquivo",$linhas);<br />
for ($i = 0 ; $i < sizeof($linhas); $i++){<br />
if ($linhas[$i] == "include \"/etc/bind/$dominio.conf\";"){<br />
$dominio = "invalido";<br />
}<br />
}<br />
if ($dominio == "invalido"){<br />
header ("Location: adicionar.php");<br />
}else{<br />
$script = "/etc/teletec/add-dominio.sh '$cliente' $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$inserir = "INSERT INTO clientes (cliente,dominio) VALUES ('$cliente','$dominio.teletec.sj.ifsc.edu.br')";<br />
mysql_query($inserir,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php");<br />
}<br />
}<br />
?.><br />
<br />
'''Os Arquivos .sh (scripts que adicionam, removem ou alteram os usuários no servidor) Encontram-se dentro da pasta: ''/etc/teletec''''' <br />
<br />
- Edição do Arquivo '''mod-dominio.sh''':<br />
Script em bash que altera o dominio do cliente (Subdominio, E-mail e Pagina WEB):<br />
<br />
O script de modificação na verdade exclui o dominio criado e cria um novo, os scripts de remover e adicionar estão juntos neste script.<br />
<br />
#!/bin/bash<br />
#Leonardo<br />
#echo -n "Dominio: "<br />
#read antigo<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$antigo'.conf";' ];then<br />
# valido=sim<br />
# break<br />
# else<br />
# valido=nao<br />
# fi<br />
#done<br />
#if [ $valido = nao ];then<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio não existe ou esta em branco.\n"<br />
# exit<br />
#fi<br />
#echo -n "Novo nome para o cliente: "<br />
#read nome<br />
#echo -n "Novo dominio: "<br />
#read dominio<br />
#echo=${dominio:=nulo}<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$dominio'.conf";' ];then<br />
# dominio=existe<br />
# break<br />
# fi<br />
#done<br />
#if [ $dominio != nulo ] && [ $dominio != existe ];then<br />
antigo=$1<br />
nome=$2<br />
dominio=$3<br />
sudo sed -i '/\/etc\/bind\/'$antigo'\.conf/Id' /etc/bind/named.conf<br />
sudo rm /etc/bind/$antigo.conf<br />
sudo rm /etc/bind/$antigo.zone<br />
sudo rm /etc/apache2/sites-enabled/$antigo-default<br />
sudo rm -r /var/www/$antigo<br />
sudo sed -i '/'$antigo'\.teletec\.sj\.ifsc\.edu\.br Subdominio-'$antigo'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$antigo'@teletec\.sj\.ifsc\.edu\.br '$antigo'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$antigo'\.teletec\.sj\.ifsc\.edu\.br OK/Id' /etc/postfix/mydomains <br />
<br />
sudo echo 'include "/etc/bind/'$dominio'.conf";' >> /etc/bind/named.conf<br />
numero=`date | cut -d ":" -f 3 | cut -d " " -f 1`<br />
novoserial=$((1000000000+$numero))<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.conf > /etc/bind/$dominio.conf<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.zone | sed s/2011061504/$novoserial/g > /etc/bind/$dominio.zone<br />
sudo /etc/init.d/bind9 restart<br />
sudo sed s/padrao/$dominio/g /etc/apache2/sites-available/padrao-default > /etc/apache2/sites-enabled/$dominio-default<br />
mkdir /var/www/$dominio<br />
sed s/dominio/$dominio/g /var/www/padrao/index.html | sed s/nome/"$nome"/g > /var/www/$dominio/index.html<br />
sudo echo ' ' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br Subdominio-'$dominio'' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'@teletec.sj.ifsc.edu.br '$dominio'' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br OK' >> /etc/postfix/mydomains<br />
sudo postmap /etc/postfix/virtual<br />
sudo postmap /etc/postfix/mydomains<br />
sudo /etc/init.d/postfix restart<br />
# echo -e " * Dominio modificado com sucesso!\t\t\t\t[ OK ]\n"<br />
# else<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio ja existe ou esta em branco.\n"<br />
#fi<br />
<br />
- Edição do Arquivo '''del-dominio.sh''':<br />
Script em bash que remove o cliente (Subdominio, E-mail e Pagina WEB):<br />
<br />
Exclui todos os arquivos de configuração criados para este cliente e retira as linhas de configuração adicionadas em arquivos como o "named.conf", "virtual" e "mydomains", por ultimo os serviçoes DNS e POSTFIX são reiniciados ( o APACHE2 é reiniciado na pagina PHP).<br />
<br />
#!/bin/bash<br />
#Leonardo<br />
#echo -n "Dominio: "<br />
#read dominio<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$dominio'.conf";' ];then<br />
dominio=$1<br />
sudo sed -i '/\/etc\/bind\/'$dominio'\.conf/Id' /etc/bind/named.conf<br />
sudo rm /etc/bind/$dominio.conf<br />
sudo rm /etc/bind/$dominio.zone<br />
sudo /etc/init.d/bind9 restart<br />
sudo rm /etc/apache2/sites-enabled/$dominio-default<br />
sudo rm -r /var/www/$dominio<br />
sudo sed -i '/'$dominio'\.teletec\.sj\.ifsc\.edu\.br Subdominio-'$dominio'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$dominio'@teletec\.sj\.ifsc\.edu\.br '$dominio'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$dominio'\.teletec\.sj\.ifsc\.edu\.br OK/Id' /etc/postfix/mydomains<br />
sudo postmap /etc/postfix/virtual<br />
sudo postmap /etc/postfix/mydomains<br />
sudo /etc/init.d/postfix restart<br />
# echo -e " * Dominio removido com sucesso!\t\t\t\t[ OK ]\n"<br />
# exit<br />
# fi<br />
#done<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio não existe ou esta em branco.\n"<br />
<br />
- Edição do Arquivo '''add-dominio.sh''': <br />
Script em bash que adiciona o cliente (Subdominio, E-mail e Pagina WEB):<br />
<br />
Sub-dominio: O script pega como base arquivos padrões ja criados e configurados ( padrao.conf e padrao.zone ), altera todas as palavras "padrao" destes arvivos pelo dominio escolhido pelo usuario e salva como "dominio-escolhido".zone e "dominio-escolhido".conf. Alem disso ele tambem inclui o caminho do arquivo de configuração ".conf" no "named.conf".<br />
<br />
Pagina-Web: Assim como no sub-dominio, o script troca as palavras "padrao" que estão em um arquivo padrao de configuração ( padrao-default) pelo dominio escolhido pelo cliente, criando um novo arquivo de configuração com nome "dominio-escolhido"-default. Tambem cria uma pagina web html padrao.<br />
<br />
E-mail: O script adiciona as linhas de configuração do e-mail do cliente nos arquivos "virtual" e "mydomains".<br />
<br />
Após fazer as confgurações o script reinicia o DNS e o POSTFIX. (o APACHE2 é reiniciado na pagina PHP).<br />
<br />
#!/bin/bash<br />
# Leonardo<br />
#echo -n "Nome do cliente: "<br />
#read nome<br />
#echo -n "Dominio: " <br />
#read dominio<br />
#echo=${dominio:=nulo}<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$dominio'.conf";' ];then<br />
# dominio=existe<br />
# break<br />
# fi <br />
#done<br />
#<br />
#if [ $dominio != nulo ] && [ $dominio != existe ];then<br />
nome=$1<br />
dominio=$2<br />
sudo echo 'include "/etc/bind/'$dominio'.conf";' >> /etc/bind/named.conf<br />
numero=`date | cut -d ":" -f 3 | cut -d " " -f 1`<br />
novoserial=$((1000000000+$numero))<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.conf > /etc/bind/$dominio.conf<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.zone | sed s/2011061504/$novoserial/g > /etc/bind/$dominio.zone<br />
sudo /etc/init.d/bind9 restart<br />
sudo sed s/padrao/$dominio/g /etc/apache2/sites-available/padrao-default > /etc/apache2/sites-enabled/$dominio-default<br />
mkdir /var/www/$dominio<br />
sed s/dominio/$dominio/g /var/www/padrao/index.html | sed s/nome/"$nome"/g > /var/www/$dominio/index.html<br />
sudo echo ' ' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br Subdominio-'$dominio'' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'@teletec.sj.ifsc.edu.br '$dominio'' >> /etc/postfix/virtual <br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br OK' >> /etc/postfix/mydomains<br />
sudo postmap /etc/postfix/virtual<br />
sudo postmap /etc/postfix/mydomains<br />
sudo /etc/init.d/postfix restart<br />
# echo -e " * Dominio criado com sucesso!\t\t\t\t[ OK ]\n"<br />
# else<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio ja existe ou esta em branco.\n"<br />
#fi</div>Vagner.chttps://wiki.sj.ifsc.edu.br/index.php?title=Projeto_Integrador_-_2011.1_-_Teletec&diff=34801Projeto Integrador - 2011.1 - Teletec2011-07-09T21:49:48Z<p>Vagner.c: </p>
<hr />
<div>== * '''Equipe 2 : TELETEC''' ==<br />
<br />
----<br />
<br />
== INTEGRANTES TELETEC ==<br />
<br />
* '''Daniel Estefano'''; estefano.daniel@gmail.com <br />
* '''Denis Teixeira'''; denisteixeira3@gmail.com <br />
* '''Leonardo Oliveira P.'''; leonardo-op@live.com <br />
* '''Odair de Moraes'''; odairdmoraes@hotmail.com<br />
* '''Robson de Carvalho'''; rob_carvalho12@hotmail.com<br />
* '''Vagner Cordeiro.''' cordeirotelecom@gmail.com<br />
<br />
----<br />
<br />
== '''SOBRE A EMPRESA TELETEC - PROVEDORA DE ACESSO Á INTERNET:''' == <br />
<br />
A Empresa Oferece os seguintes serviços: <br />
<br />
# Conta de Usuário para cada cliente;<br />
# Conta de E-mail para cada cliente;<br />
# Uma página Web Padrão;<br />
# Instalação do Modem ADSL e do Cabeamento Estrurado;<br />
# Acesso Wirelles;<br />
<br />
== Etapas Iniciais de Configurações da Rede ==<br />
<br />
<br />
# Instalação do Sistema Operacional:Ubuntu-Server;<br />
# Definido Sistema de Arquivo, Dividido em 3 Partições: ''1 Partição Primátia, 1 Partição Secundária e uma Partição para Swap;'' <br />
# Definido nome do Domínio: teletec.sj.ifsc.edu.br;<br />
# Criado um Usuário: Tecnico;<br />
# Acesso via SSH ao Servidor Teletec.<br />
<br />
----<br />
<br />
== Gerencia de Redes: Apache, Postfix e DNS ==<br />
<br />
'''Configurações do servidor DNS:''' <br />
<br />
- Edição do Arquivo para IP Estático: '''/etc/network/interfaces''' <br />
<br />
# This file describes the network interfaces available on your system<br />
# and how to activate them. For more information, see interfaces(5).<br />
# The loopback network interface<br />
auto lo<br />
iface lo inet loopback<br />
# The primary network interface<br />
auto eth0<br />
iface eth0 inet static<br />
address 200.135.37.100<br />
netmask 255.255.255.192<br />
gateway 200.135.37.126 <br />
<br />
- Edição do Arquivo do servidor DNS '''/etc/bind/named.conf''' <br />
<br />
Indica todos os arquivos que vai fazer a configuração dele<br />
<br />
// This is the primary configuration file for the BIND DNS server named.<br />
//<br />
// Please read /usr/share/doc/bind9/README.Debian.gz for information on the <br />
// structure of BIND configuration files in Debian, *BEFORE* you customize <br />
// this configuration file.<br />
//<br />
// If you are just adding zones, please do that in /etc/bind/named.conf.local<br />
include "/etc/bind/named.conf.options";<br />
include "/etc/bind/named.conf.local";<br />
include "/etc/bind/named.conf.default-zones";<br />
include "/etc/bind/servidor.conf";<br />
include "/etc/bind/tecnico.conf";<br />
include "/etc/bind/daniel.conf";<br />
<br />
- Edição do Arquivo de servidor DNS: named.conf.local '''/etc/bind/named.conf.local'''<br />
É um arquivo padrão do BIND onde foi configurado o o nosso dominino TELETEC.<br />
<br />
//<br />
// Do any local configuration here<br />
//<br />
<br />
// Consider adding the 1918 zones here, if they are not used in your<br />
// organization<br />
//include "/etc/bind/zones.rfc1918"8;<br />
zone "teletec.sj.ifsc.edu.br." IN {<br />
type master;<br />
file "/etc/bind/teletec.zone";<br />
allow-update { none; };<br />
};<br />
<br />
- Edição do Arquivo de DNS Reverso: '''/etc/bind/37.135.200.in-addr.arpa'''<br />
O DNS Reverso resolve um endereço IP para um nome de servidor – por exemplo, ele poderia resolver 200.176.3.142 para exemplo.hipotetico.com.br.<br />
<br />
$TTL 86400<br />
@ IN SOA servidor.teletec.sj.ifsc.edu.br. root (<br />
2011061500 ;<br />
1d ;<br />
1h ;<br />
1w ; <br />
1d ;<br />
)<br />
IN NS servidor.teletec.sj.ifsc.edu.br.<br />
100 IN PTR servidor.teletec.sj.ifsc.edu.br.<br />
<br />
- Edição do Arquivo para criar um subdomínio:'''/etc/bind/teletec.zone'''<br />
Arquivo que traz todas as configurações de cada subdomínio. <br />
<br />
$TTL 86400<br />
@ IN SOA teletec.teletec.sj.ifsc.edu.br root (<br />
2011062901;<br />
3H;<br />
15M;<br />
1W;<br />
1D );<br />
IN NS teletec.teletec.sj.ifsc.edu.br.<br />
IN MX 0 mail.teletec.sj.ifsc.edu.br.<br />
localhost IN A 127.0.0.1<br />
$ORIGIN teletec.sj.ifsc.edu.br.<br />
teletec A 200.135.37.100<br />
www A 200.135.37.100<br />
mail A 200.135.37.100<br />
<br />
- '''Configuração do servidor Apache'''<br />
<br />
No servidor Apache foi feito a instalação com o comando:<br />
apt-get install apache2<br />
E nele não foi preciso fazer configuraçoẽs, nele vai ser criado uma nova nova pagina web para cada novo cliente na pasta:'' /etc/apache2/sites-enabled''' essas paginas web serão adicionadas automaticamente pelo script <br />
<br />
- '''Configuração do servidor POSTFIX'''<br />
<br />
*Primeiro foi feito a instalação com o comando:<br />
<br />
apt-get install postfix<br />
<br />
Em seguida o programa de instalação vai fazer algumas perguntas sobre a localização dos arquivos e alguns parametros <br />
<br />
== Instalação de Equipamento de Redes (Modem, Switch e Roteadores) ==<br />
<br />
'''Configurações:''' <br />
<br />
Instalação:<br />
<br />
minicom -s<br />
<br />
Configuração do Roteador Cisco 1700: <br />
<br />
* Configuração dos Dois Roteadores Utilizando a ferramenta "Minicon" (Se fosse Windows seria Hyperterminal)<br />
* Configuração dos dispositivos: Serial e Ethernet<br />
* Configuração como Protocolo PPP<br />
<br />
- ''"Configuração da porta serial":''<br />
<br />
┌─────────────[configuração]──────────────┐<br />
│ Nomes de arquivos e rotas<br />
│ Protocolos de transferência de arquivos<br />
│ Configuração da porta serial<br />
│ Modem e discagem<br />
│ Tela e teclado<br />
│ Salvar configuração como dfl<br />
│ Salvar configuração como<br />
│ Sair<br />
│ Sair do Minicom<br />
└────────────────────────────────────────┘<br />
<br />
- ''"Alteração da Porta Serial"''<br />
┌──────────────────────────────────────────────────────────┐<br />
│ A – Dispositivo Serial : /dev/ttSy0 <br />
│ B – Localização do Arquivo de Travamento : /var/lock<br />
│ C – Programa de Entrada :<br />
│ D – Programa de Saída :<br />
│ E – Bps/Paridade/Bits : 9600 8N1 <br />
│ F – Controle de Fluxo por Hardware : Não<br />
│ G – Controle de Fluxo por Software : Não<br />
│<br />
│ Alterar qual configuração?<br />
└──────────────────────────────────────────────────────────┘<br />
<br />
- ''"Salvar configuração com dfl"''<br />
<br />
- ''Configurando a Interface Serial do Roteador:''<br />
<br />
enable;<br />
configure terminal;<br />
<br />
#Para configurar a interface serial:<br />
interface serial 0;<br />
ip address 10.0.0.1/30;<br />
encapsulation ppp;<br />
exit;<br />
<br />
#Para configurar a interface ethernet:<br />
interface fastethernet 0;<br />
ip address 172.18.0.1/24;<br />
exit;<br />
exit;<br />
<br />
#Para salvar as configurações:<br />
wr;<br />
<br />
'''Radius'''<br />
<br />
Para ter acesso a rede aDSL ou pela rede sem fio será usado Radius para que os usuários sejam autenticados. O RADIUS é um sistema utilizado para prover uma autenticação centralizada em redes dial-up, VPN's (Virtual Private Network) e redes sem fio. Ele tem um modelo cliente-servidor, onde o cliente é o Network Access Server (NAS). Esse servidor é responsável por obter a informação sobre o cliente e repassá-la para o servidor RADIUS, além de interpretar a resposta, dando ou não acesso ao cliente. O servidor RADIUS é responsável por receber pedidos de conexão, autenticar o usuário e repassar ao NAS as informações necessárias para esse dar acesso ao usuário na rede. <br />
<br />
'''Arquivos configurados:''' <br />
<br />
Configurar login e senha para o cliente Radius ( /etc/freeradius<br />
/users ):<br />
<br />
“Usúario” Cleartext-Password := "senha"<br />
“Usúario” User-Password := "senha"<br />
<br />
Teste antes se seu servidor Radius está autenticando usuáriosfaça o seguinte comando no AC PPPoE (que fica em Ac-server): <br />
<br />
radtest seu_usuario sua_senha IP_do_seu_servidor_Radius 1 segredo_do_seu_servidor_Radius<br />
<br />
Configurando o Servidor PPPoe (/etc/ppp/pppoe-servers-options): <br />
<br />
require-chap<br />
auth<br />
lcp-echo-interval 10<br />
lcp-echo-failure 2<br />
ms-dns IP do seu servidor DNS<br />
netmask 255.255.255.0<br />
noipdefault<br />
debug<br />
kdebug 4<br />
plugin radius.so<br />
plugin radattr.so<br />
radius-config-file /etc/radiusclient/teletec.conf<br />
mru 1492<br />
mtu 1492<br />
<br />
Configuração do Cliente Radius ( etc/radiusclient/teletec.conf ):<br />
<br />
auth_order radius<br />
login_tries 4<br />
login_timeout 60<br />
nologin /etc/nologin<br />
issue /etc/radiusclient/issue<br />
authserver 200.135.37.100<br />
acctserver 200.135.37.100<br />
servers /etc/radiusclient/servers<br />
dictionary /etc/radiusclient/dictionary<br />
login_radius /usr/sbin/login.radius<br />
seqfile /var/run/radius.seq<br />
mapfile /etc/radiusclient/port-id-map<br />
default_realm<br />
radius_timeout 10<br />
radius_retries 3<br />
login_local /bin/login<br />
<br />
Configurando o IP do Servidor Radius ( /etc/radiusclient/servers ):<br />
<br />
200.135.37.100 testing123<br />
<br />
Integrando Radius ao Banco de Dados<br />
<br />
Primeiro procedimento, instale o pacote. <br />
<br />
apt-get install freeradius-mysql<br />
Edite o arquivo de configuração do freeradius, e descomente a seguinte linha <br />
( /etc/freeradius/radiusd.conf ): <br />
<br />
$INCLUDE sql.conf<br />
<br />
Para entrar no MySQL execute o comando: <br />
<br />
mysql -u root -p <br />
<br />
Crie uma base de dados somente para o Radius e dê ao usuário Radius a devida permissão para acesso a esta base. No shell do MySQL, execute os comandos: <br />
<br />
CREATE DATABASE radius;<br />
GRANT ALL ON radius.* TO freerad@localhost IDENTIFIED BY "senha_do_usuário_freeradius";<br />
exit;<br />
<br />
Inserindo informações na base de dados: <br />
<br />
mysql -u “usuário” -p “senha do usuário radius” “database” < /etc/freeradius/sql/mysql/schema.sql<br />
mysql -u “usuário” -p “senha do usuário radius” “database” < /etc/freeradius/sql/mysql/nas.sql<br />
<br />
Editar o arquivo /etc/freeradius/sql.conf, colocando a senha do usuário Radius: <br />
<br />
passwrod = "senha do usuário radius"<br />
<br />
E descomente a linha do mesmo arquivo ( /etc/freeradius/sql.conf ) : <br />
<br />
readclients = yes<br />
<br />
Reinicie o FreeRadius: <br />
<br />
service freeradius restart<br />
<br />
== Cabeamento Estruturado ==<br />
<br />
Atividades Concluídas:<br />
<br />
- o A central telefônica ao DSLAM<br />
- o O DSLAM ao armário de telecom da equipe, através de uma linha telefone + DSL<br />
- o armário da equipe a uma área de trabalho. <br />
- O cabeamento permitiu a conexão do modem DSL no armário de telecom.<br />
- As tomadas da área de trabalho para conexão com Telefone e o Modem ADSL.<br />
<br />
== Programação para Redes de Computadores ==<br />
<br />
'''Os Arquivos PHP (pagina Web) Encontram-se dentro da pasta: ''/var/www/teletec'''''<br />
<br />
- Edição do Arquivo '''Verificação.php''':<br />
<br />
Esta pagina PHP verifica se o login e a senha do administrador esta correto.<br />
Se estiver correto vai para a pagina "principal.php" se não volta para "login.php".<br />
<br />
<?<br />
session_start();<br />
$login = $_POST['login'];<br />
$senha = $_POST['senha'];<br />
if ( ( $login == "LOGIN-DO-ADMIN" ) && ( $senha == "SENHA-DO-ADMIN" ) ){<br />
$_SESSION['autorizado'] = $login;<br />
Header ("Location: principal.php");<br />
}else{<br />
Header ("Location: login.php");<br />
}<br />
?><br />
<br />
- Edição do Arquivo '''sair.php''':<br />
<br />
Esta pagina PHP faz o administrador "deslogar" ("logoff") e depois volta para pagina "login.php"<br />
<br />
<?<br />
session_start();<br />
session_destroy();<br />
Header ("Location: login.php");<br />
?><br />
<br />
- Edição do arquivo '''principal.php''': <br />
<br />
Esta é a principal pagina PHP do site, nela verificamos os clientes criados e armazenados no banco de dados, redirecionamos para pagina que modifica os dominios (alterar.php), redirecionamos para pagina que remover os dominios (excluir.php)e tambem redirecionamos para a pagina que adiciona os dominios (adicionar.php).<br />
Quando é redirecionado para pagina de modificação e remoção tambem é enviado uma variavel com o dominio do cliente para saber qual usuario deve ser modificado ou alterado.<br />
<.?<br />
.session_start();<br />
.if (!isset($_SESSION['autorizado'])){<br />
.header ("Location: login.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Administrcao de Dominios</title><br />
<./head><br />
<.body><br />
<.p><a href="sair.php">Sair</a></p><br />
<.p></p><br />
<.p style="text-align:center;margin-left:auto;margin-right:auto;">Cliente Dominio Acao </p><br />
<br />
<.?<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$consulta = "SELECT * from clientes";<br />
$resultado = mysql_query($consulta,$conexao);<br />
while($linha = mysql_fetch_array($resultado)){<br />
$cliente = $linha['cliente'];<br />
$dominio = $linha['dominio'];<br />
.?><br />
<.form><br />
<.p style="text-align:center;margin-left:auto;margin-right:auto;"><br />
<.a name="cliente" id="cliente" href="alterar.php?id=<? echo $linha['dominio'];?>"> <?echo $.linha['cliente'];?></a> <br />
<.? echo $linha['dominio'];?> <a href="excluir.php?id=<? echo $linha['dominio'];?>"> Excluir</a></p><br />
<./form><br />
<.?<br />
.}<br />
.mysql_free_result($resultado);<br />
.mysql_close($conexao);<br />
.}<br />
.?><br />
<.p style="text-align:right;margin-left:auto;margin-right:0;"><br />
<.a href="adicionar.php"><span style="color:#ff0000">Adicionar novo dominio</span></a></p><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''mod-domínio.php''':<br />
<br />
Esta pagina PHP recebe três variaveis com o dominio antigo do clinete, o novo dominio e o novo nome do cliente, estas variaveis são repassadas para o script "mod-dominio.sh" e este é executado modificando o dominio e o nome do cliente, depois de executar o script as informações do banco de dados tambem são modificadas e o serviço APACHE2 é reiniciado.<br />
Após todo este processamento a pagina é redirecionada para 'principal.php".<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$cliente = $_POST['cliente'];<br />
$dominio = $_POST['dominio'];<br />
$antigo = $_POST['antigo'];;<br />
if (empty($dominio)) {<br />
$dominio = "invalido";<br />
} <br />
<br />
if (preg_match('/^[a-z0-9]+/', $dominio)){<br />
}else{<br />
$dominio = "invalido";<br />
} <br />
<br />
$arquivo = '/etc/bind/named.conf';<br />
$linhas = array();<br />
exec("cat $arquivo",$linhas);<br />
for ($i = 0 ; $i < sizeof($linhas); $i++){<br />
if ($linhas[$i] == "include \"/etc/bind/$dominio.conf\";"){<br />
$dominio = "invalido";<br />
}<br />
}<br />
if ($dominio == "invalido"){<br />
header ("Location: alterar.php");<br />
}else{ <br />
<br />
$script = "/etc/teletec/mod-dominio.sh $antigo '$cliente' $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$deletar = "DELETE FROM clientes WHERE dominio='$antigo.teletec.sj.ifsc.edu.br'";<br />
mysql_query($deletar,$conexao);<br />
mysql_close($conexao); <br />
<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$inserir = "INSERT INTO clientes (cliente,dominio) VALUES ('$cliente','$dominio.teletec.sj.ifsc.edu.br')";<br />
mysql_query($inserir,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php"); <br />
<br />
}<br />
.}<br />
?.><br />
<br />
- Edição do Arquivo '''login.php''': <br />
<br />
Esta pagina PHP recolhe o login e a senha fornecidas pelo administrador atraves de um formulario e manda para a pagina PHP de processamento que verifica se esta correto.<br />
.<?<br />
.session_start();<br />
.if (isset($_SESSION['autorizado'])){<br />
.Header ("Location: principal.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Hospedagem Web</title><br />
<./head><br />
<br />
<.body><br />
<.p></p><br />
<.p>Sistemas de Hospedagem de Sitios Web</p><br />
<.p></p><br />
<.form name="formTeste" action="verificacao.php" method="post"><br />
<.p>Usu&#xe1;rio:<br><br />
<.input type="text" name="login"> <br />
<.p>Senha:<br> <br />
<.input type="password" name="senha"> <br />
<.input type="submit" name="b_enviar" value="Entrar"><br />
<./form><br />
<.p></p><br />
<.?<br />
}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''Index.php''':<br />
<br />
Esta pagina apenas redireciona para "login.php"<br />
<.?<br />
Header ("Location: login.php");<br />
.?><br />
<br />
- Edição do Arquivo '''excluir.php''':<br />
Esta pagina PHP faz uma verificação, se o administrador realmente querer excluir o dominio é mandado o dominio do clinete em uma variavel para a pagina PHP de processamento "del-dominio.php" e a pagina é redirecionada para la, mais se o usuario não quiser escluir é mandado novamente para p pagina "principal.php".<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){ <br />
header ("Location: login.php");<br />
}else{<br />
$id=$_GET['id'];<br />
$parte1 = explode(".", $id);<br />
$antigo = $parte1[0];<br />
?.><br />
<.html><br />
<head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Excluir o cliente</title><br />
<./head><br />
<.body><br />
<.p>Voce realmente deseja excluir o cliente?</p><br />
<br />
<.p><a href="del-dominio.php?id=<?echo $antigo;?>">Sim</a> <a<br />
.href="principal.php">Nao</a></p><br />
<.p></p><br />
<?<br />
}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''del-dominio.php''':<br />
<br />
Esta pagina PHP é uma pagina de processamento que recebe em uma variavel o nome do dominio que sera removido e transfere esta variavel para o script em bash "del-dominio.sh" ja executa o script, depois este dominio é removido do banco de dados e o serviço APACHE2 é reiniciado.<br />
Após todo o processamento a pagina é redirecionada para "principal.php".<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$dominio = $_GET['id'];<br />
$script = "/etc/teletec/del-dominio.sh $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$deletar = "DELETE FROM clientes WHERE dominio='$dominio.teletec.sj.ifsc.edu.br'";<br />
mysql_query($deletar,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php");<br />
}<br />
?.><br />
<br />
- Edição do '''Arquivo alterar.php''': <br />
<br />
Nesta pagina PHP o administrador informa o novo nome do cliente e o novo dominio, estas informações são gravadas em uma variavel que será mandada para a pagina PHP que vai fazer todo o trabalho de processamento (mod-dominio.php).<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){ <br />
header ("Location: login.php");<br />
}else{<br />
$id=$_GET['id'];<br />
$parte1 = explode(".", $id);<br />
$antigo = $parte1[0];<br />
?.><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Alterar Dominio</title><br />
</.head><br />
<.body><br />
<.p><.a href="principal.php">Voltar </a></p><br />
<.form name="formTeste" action="mod-dominio.php" method="post"><br />
<.p>Novo nome do cliente: <br><br />
<.input type="text" name="cliente"><br />
<.p>Novo dominio: <br><br />
<.input type="text" name="dominio"><br />
<.input type="hidden" name="antigo" value="<?echo $antigo;?>"> <br />
<.input type="submit" name="b_enviar" value="Alterar"><br />
<./form><br />
<.?<br />
}<br />
?.><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''adicionar.php''':<br />
<br />
Esta pagina PHP recolhe duas variaveis atraves do formulrios, em uma esta o nome do clinete e na outra o dominio escolhido, estas variaveis são repassadas para a pagina de processamento que vai adicionar este novo subdominio (add-dominio.php).Depois ela é redirecionada para a pagina de processamento "add-dominio.php".<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Adicionar Cliente</title><br />
<./head><br />
<.body><br />
<.p><.a href="principal.php">Voltar </a></p><br />
<.form name="formTeste" action="add-dominio.php" method="post"><br />
<.p>Nome do cliente: <br><br />
<.input type="text" name="cliente"><br />
<.p>Dominio: <br><br />
<.input type="text" name="dominio"><br />
<.input type="submit" name="b_enviar" value="Criar"><br />
<./form><br />
<.?<br />
.}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''add-dominio.php''':<br />
<br />
Esta pagina PHP é uma pagina de processamento que recebe duas variaveis, na primeira esta o nome do dominio que sera removido e na segunda está o dominio do cliente, estas variaveis são transferidas para o script em bash "add-dominio.sh" que é executado, depois este dominio é adicionado no banco de dados e o serviço APACHE2 é reiniciado.<br />
Após todo o processamento a pagina é redirecionada para "principal.php".<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$cliente = $_POST['cliente'];<br />
$dominio = $_POST['dominio']; <br />
<br />
if (empty($dominio)) {<br />
$dominio = "invalido";<br />
} <br />
<br />
if (preg_match('/^[a-z0-9]+/', $dominio)){<br />
}else{<br />
$dominio = "invalido";<br />
} <br />
<br />
$arquivo = '/etc/bind/named.conf';<br />
$linhas = array();<br />
exec("cat $arquivo",$linhas);<br />
for ($i = 0 ; $i < sizeof($linhas); $i++){<br />
if ($linhas[$i] == "include \"/etc/bind/$dominio.conf\";"){<br />
$dominio = "invalido";<br />
}<br />
}<br />
if ($dominio == "invalido"){<br />
header ("Location: adicionar.php");<br />
}else{<br />
$script = "/etc/teletec/add-dominio.sh '$cliente' $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$inserir = "INSERT INTO clientes (cliente,dominio) VALUES ('$cliente','$dominio.teletec.sj.ifsc.edu.br')";<br />
mysql_query($inserir,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php");<br />
}<br />
}<br />
?.><br />
<br />
'''Os Arquivos .sh (scripts que adicionam, removem ou alteram os usuários no servidor) Encontram-se dentro da pasta: ''/etc/teletec''''' <br />
<br />
- Edição do Arquivo '''mod-dominio.sh''':<br />
Script em bash que altera o dominio do cliente (Subdominio, E-mail e Pagina WEB):<br />
<br />
O script de modificação na verdade exclui o dominio criado e cria um novo, os scripts de remover e adicionar estão juntos neste script.<br />
<br />
#!/bin/bash<br />
#Leonardo<br />
#echo -n "Dominio: "<br />
#read antigo<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$antigo'.conf";' ];then<br />
# valido=sim<br />
# break<br />
# else<br />
# valido=nao<br />
# fi<br />
#done<br />
#if [ $valido = nao ];then<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio não existe ou esta em branco.\n"<br />
# exit<br />
#fi<br />
#echo -n "Novo nome para o cliente: "<br />
#read nome<br />
#echo -n "Novo dominio: "<br />
#read dominio<br />
#echo=${dominio:=nulo}<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$dominio'.conf";' ];then<br />
# dominio=existe<br />
# break<br />
# fi<br />
#done<br />
#if [ $dominio != nulo ] && [ $dominio != existe ];then<br />
antigo=$1<br />
nome=$2<br />
dominio=$3<br />
sudo sed -i '/\/etc\/bind\/'$antigo'\.conf/Id' /etc/bind/named.conf<br />
sudo rm /etc/bind/$antigo.conf<br />
sudo rm /etc/bind/$antigo.zone<br />
sudo rm /etc/apache2/sites-enabled/$antigo-default<br />
sudo rm -r /var/www/$antigo<br />
sudo sed -i '/'$antigo'\.teletec\.sj\.ifsc\.edu\.br Subdominio-'$antigo'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$antigo'@teletec\.sj\.ifsc\.edu\.br '$antigo'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$antigo'\.teletec\.sj\.ifsc\.edu\.br OK/Id' /etc/postfix/mydomains <br />
<br />
sudo echo 'include "/etc/bind/'$dominio'.conf";' >> /etc/bind/named.conf<br />
numero=`date | cut -d ":" -f 3 | cut -d " " -f 1`<br />
novoserial=$((1000000000+$numero))<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.conf > /etc/bind/$dominio.conf<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.zone | sed s/2011061504/$novoserial/g > /etc/bind/$dominio.zone<br />
sudo /etc/init.d/bind9 restart<br />
sudo sed s/padrao/$dominio/g /etc/apache2/sites-available/padrao-default > /etc/apache2/sites-enabled/$dominio-default<br />
mkdir /var/www/$dominio<br />
sed s/dominio/$dominio/g /var/www/padrao/index.html | sed s/nome/"$nome"/g > /var/www/$dominio/index.html<br />
sudo echo ' ' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br Subdominio-'$dominio'' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'@teletec.sj.ifsc.edu.br '$dominio'' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br OK' >> /etc/postfix/mydomains<br />
sudo postmap /etc/postfix/virtual<br />
sudo postmap /etc/postfix/mydomains<br />
sudo /etc/init.d/postfix restart<br />
# echo -e " * Dominio modificado com sucesso!\t\t\t\t[ OK ]\n"<br />
# else<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio ja existe ou esta em branco.\n"<br />
#fi<br />
<br />
- Edição do Arquivo '''del-dominio.sh''':<br />
Script em bash que remove o cliente (Subdominio, E-mail e Pagina WEB):<br />
<br />
Exclui todos os arquivos de configuração criados para este cliente e retira as linhas de configuração adicionadas em arquivos como o "named.conf", "virtual" e "mydomains", por ultimo os serviçoes DNS e POSTFIX são reiniciados ( o APACHE2 é reiniciado na pagina PHP).<br />
<br />
#!/bin/bash<br />
#Leonardo<br />
#echo -n "Dominio: "<br />
#read dominio<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$dominio'.conf";' ];then<br />
dominio=$1<br />
sudo sed -i '/\/etc\/bind\/'$dominio'\.conf/Id' /etc/bind/named.conf<br />
sudo rm /etc/bind/$dominio.conf<br />
sudo rm /etc/bind/$dominio.zone<br />
sudo /etc/init.d/bind9 restart<br />
sudo rm /etc/apache2/sites-enabled/$dominio-default<br />
sudo rm -r /var/www/$dominio<br />
sudo sed -i '/'$dominio'\.teletec\.sj\.ifsc\.edu\.br Subdominio-'$dominio'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$dominio'@teletec\.sj\.ifsc\.edu\.br '$dominio'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$dominio'\.teletec\.sj\.ifsc\.edu\.br OK/Id' /etc/postfix/mydomains<br />
sudo postmap /etc/postfix/virtual<br />
sudo postmap /etc/postfix/mydomains<br />
sudo /etc/init.d/postfix restart<br />
# echo -e " * Dominio removido com sucesso!\t\t\t\t[ OK ]\n"<br />
# exit<br />
# fi<br />
#done<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio não existe ou esta em branco.\n"<br />
<br />
- Edição do Arquivo '''add-dominio.sh''': <br />
Script em bash que adiciona o cliente (Subdominio, E-mail e Pagina WEB):<br />
<br />
Sub-dominio: O script pega como base arquivos padrões ja criados e configurados ( padrao.conf e padrao.zone ), altera todas as palavras "padrao" destes arvivos pelo dominio escolhido pelo usuario e salva como "dominio-escolhido".zone e "dominio-escolhido".conf. Alem disso ele tambem inclui o caminho do arquivo de configuração ".conf" no "named.conf".<br />
<br />
Pagina-Web: Assim como no sub-dominio, o script troca as palavras "padrao" que estão em um arquivo padrao de configuração ( padrao-default) pelo dominio escolhido pelo cliente, criando um novo arquivo de configuração com nome "dominio-escolhido"-default. Tambem cria uma pagina web html padrao.<br />
<br />
E-mail: O script adiciona as linhas de configuração do e-mail do cliente nos arquivos "virtual" e "mydomains".<br />
<br />
Após fazer as confgurações o script reinicia o DNS e o POSTFIX. (o APACHE2 é reiniciado na pagina PHP).<br />
<br />
#!/bin/bash<br />
# Leonardo<br />
#echo -n "Nome do cliente: "<br />
#read nome<br />
#echo -n "Dominio: " <br />
#read dominio<br />
#echo=${dominio:=nulo}<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$dominio'.conf";' ];then<br />
# dominio=existe<br />
# break<br />
# fi <br />
#done<br />
#<br />
#if [ $dominio != nulo ] && [ $dominio != existe ];then<br />
nome=$1<br />
dominio=$2<br />
sudo echo 'include "/etc/bind/'$dominio'.conf";' >> /etc/bind/named.conf<br />
numero=`date | cut -d ":" -f 3 | cut -d " " -f 1`<br />
novoserial=$((1000000000+$numero))<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.conf > /etc/bind/$dominio.conf<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.zone | sed s/2011061504/$novoserial/g > /etc/bind/$dominio.zone<br />
sudo /etc/init.d/bind9 restart<br />
sudo sed s/padrao/$dominio/g /etc/apache2/sites-available/padrao-default > /etc/apache2/sites-enabled/$dominio-default<br />
mkdir /var/www/$dominio<br />
sed s/dominio/$dominio/g /var/www/padrao/index.html | sed s/nome/"$nome"/g > /var/www/$dominio/index.html<br />
sudo echo ' ' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br Subdominio-'$dominio'' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'@teletec.sj.ifsc.edu.br '$dominio'' >> /etc/postfix/virtual <br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br OK' >> /etc/postfix/mydomains<br />
sudo postmap /etc/postfix/virtual<br />
sudo postmap /etc/postfix/mydomains<br />
sudo /etc/init.d/postfix restart<br />
# echo -e " * Dominio criado com sucesso!\t\t\t\t[ OK ]\n"<br />
# else<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio ja existe ou esta em branco.\n"<br />
#fi</div>Vagner.chttps://wiki.sj.ifsc.edu.br/index.php?title=Projeto_Integrador_-_2011.1_-_Teletec&diff=34800Projeto Integrador - 2011.1 - Teletec2011-07-09T21:47:59Z<p>Vagner.c: </p>
<hr />
<div>== * '''Equipe 2 : TELETEC''' ==<br />
<br />
----<br />
<br />
== INTEGRANTES TELETEC ==<br />
<br />
* '''Daniel Estefano'''; estefano.daniel@gmail.com <br />
* '''Denis Teixeira'''; denisteixeira3@gmail.com <br />
* '''Leonardo Oliveira P.'''; leonardo-op@live.com <br />
* '''Odair de Moraes'''; odairdmoraes@hotmail.com<br />
* '''Robson de Carvalho'''; rob_carvalho12@hotmail.com<br />
* '''Vagner Cordeiro.''' cordeirotelecom@gmail.com<br />
<br />
----<br />
<br />
== '''SOBRE A EMPRESA TELETEC - PROVEDORA DE ACESSO Á INTERNET:''' == <br />
<br />
A Empresa Oferece os seguintes serviços: <br />
<br />
# Conta de Usuário para cada cliente;<br />
# Conta de E-mail para cada cliente;<br />
# Uma página Web Padrão;<br />
# Instalação do Modem ADSL e do Cabeamento Estrurado;<br />
# Acesso Wirelles;<br />
<br />
== Etapas Iniciais de Configurações da Rede ==<br />
<br />
<br />
# Instalação do Sistema Operacional:Ubuntu-Server;<br />
# Definido Sistema de Arquivo, Dividido em 3 Partições: ''1 Partição Primátia, 1 Partição Secundária e uma Partição para Swap;'' <br />
# Definido nome do Domínio: teletec.sj.ifsc.edu.br;<br />
# Criado um Usuário: Tecnico;<br />
# Acesso via SSH ao Servidor Teletec.<br />
<br />
----<br />
<br />
== Gerencia de Redes: Apache, Postfix e DNS ==<br />
<br />
'''Configurações do servidor DNS:''' <br />
<br />
- Edição do Arquivo para IP Estático: '''/etc/network/interfaces''' <br />
<br />
# This file describes the network interfaces available on your system<br />
# and how to activate them. For more information, see interfaces(5).<br />
# The loopback network interface<br />
auto lo<br />
iface lo inet loopback<br />
# The primary network interface<br />
auto eth0<br />
iface eth0 inet static<br />
address 200.135.37.100<br />
netmask 255.255.255.192<br />
gateway 200.135.37.126 <br />
<br />
- Edição do Arquivo do servidor DNS '''/etc/bind/named.conf''' <br />
<br />
Indica todos os arquivos que vai fazer a configuração dele<br />
<br />
// This is the primary configuration file for the BIND DNS server named.<br />
//<br />
// Please read /usr/share/doc/bind9/README.Debian.gz for information on the <br />
// structure of BIND configuration files in Debian, *BEFORE* you customize <br />
// this configuration file.<br />
//<br />
// If you are just adding zones, please do that in /etc/bind/named.conf.local<br />
include "/etc/bind/named.conf.options";<br />
include "/etc/bind/named.conf.local";<br />
include "/etc/bind/named.conf.default-zones";<br />
include "/etc/bind/servidor.conf";<br />
include "/etc/bind/tecnico.conf";<br />
include "/etc/bind/daniel.conf";<br />
<br />
- Edição do Arquivo de servidor DNS: named.conf.local '''/etc/bind/named.conf.local'''<br />
É um arquivo padrão do BIND onde foi configurado o o nosso dominino TELETEC.<br />
<br />
//<br />
// Do any local configuration here<br />
//<br />
<br />
// Consider adding the 1918 zones here, if they are not used in your<br />
// organization<br />
//include "/etc/bind/zones.rfc1918"8;<br />
zone "teletec.sj.ifsc.edu.br." IN {<br />
type master;<br />
file "/etc/bind/teletec.zone";<br />
allow-update { none; };<br />
};<br />
<br />
- Edição do Arquivo de DNS Reverso: '''/etc/bind/37.135.200.in-addr.arpa'''<br />
O DNS Reverso resolve um endereço IP para um nome de servidor – por exemplo, ele poderia resolver 200.176.3.142 para exemplo.hipotetico.com.br.<br />
<br />
$TTL 86400<br />
@ IN SOA servidor.teletec.sj.ifsc.edu.br. root (<br />
2011061500 ;<br />
1d ;<br />
1h ;<br />
1w ; <br />
1d ;<br />
)<br />
IN NS servidor.teletec.sj.ifsc.edu.br.<br />
100 IN PTR servidor.teletec.sj.ifsc.edu.br.<br />
<br />
- Edição do Arquivo para criar um subdomínio:'''/etc/bind/teletec.zone'''<br />
Arquivo que traz todas as configurações de cada subdomínio. <br />
<br />
$TTL 86400<br />
@ IN SOA teletec.teletec.sj.ifsc.edu.br root (<br />
2011062901;<br />
3H;<br />
15M;<br />
1W;<br />
1D );<br />
IN NS teletec.teletec.sj.ifsc.edu.br.<br />
IN MX 0 mail.teletec.sj.ifsc.edu.br.<br />
localhost IN A 127.0.0.1<br />
$ORIGIN teletec.sj.ifsc.edu.br.<br />
teletec A 200.135.37.100<br />
www A 200.135.37.100<br />
mail A 200.135.37.100<br />
<br />
- '''Configuração do servidor Apache'''<br />
<br />
No servidor Apache foi feito a instalação com o comando:<br />
apt-get install apache2<br />
E nele não foi preciso fazer configuraçoẽs, nele vai ser criado uma nova nova pagina web para cada novo cliente na pasta:'' /etc/apache2/sites-enabled''' essas paginas web serão adicionadas automaticamente pelo script <br />
<br />
- '''Configuração do servidor POSTFIX'''<br />
<br />
*Primeiro foi feito a instalação com o comando:<br />
<br />
apt-get install postfix<br />
<br />
Em seguida o programa de instalação vai fazer algumas perguntas sobre a localização dos arquivos e alguns parametros <br />
<br />
== Instalação de Equipamento de Redes (Modem, Switch e Roteadores) ==<br />
<br />
'''Configurações:''' <br />
<br />
Instalação:<br />
<br />
minicom -s<br />
<br />
Configuração do Roteador Cisco 1700: <br />
<br />
* Configuração dos Dois Roteadores Utilizando a ferramenta "Minicon" (Se fosse Windows seria Hyperterminal)<br />
* Configuração dos dispositivos: Serial e Ethernet<br />
* Configuração como Protocolo PPP<br />
<br />
- ''"Configuração da porta serial":''<br />
<br />
┌─────────────[configuração]──────────────┐<br />
│ Nomes de arquivos e rotas<br />
│ Protocolos de transferência de arquivos<br />
│ Configuração da porta serial<br />
│ Modem e discagem<br />
│ Tela e teclado<br />
│ Salvar configuração como dfl<br />
│ Salvar configuração como<br />
│ Sair<br />
│ Sair do Minicom<br />
└────────────────────────────────────────┘<br />
<br />
- ''"Alteração da Porta Serial"''<br />
┌──────────────────────────────────────────────────────────┐<br />
│ A – Dispositivo Serial : /dev/ttSy0 <br />
│ B – Localização do Arquivo de Travamento : /var/lock<br />
│ C – Programa de Entrada :<br />
│ D – Programa de Saída :<br />
│ E – Bps/Paridade/Bits : 9600 8N1 <br />
│ F – Controle de Fluxo por Hardware : Não<br />
│ G – Controle de Fluxo por Software : Não<br />
│<br />
│ Alterar qual configuração?<br />
└──────────────────────────────────────────────────────────┘<br />
<br />
- ''"Salvar configuração com dfl"''<br />
<br />
- ''Configurando a Interface Serial do Roteador:''<br />
<br />
enable;<br />
configure terminal;<br />
<br />
#Para configurar a interface serial:<br />
interface serial 0;<br />
ip address 10.0.0.1/30;<br />
encapsulation ppp;<br />
exit;<br />
<br />
#Para configurar a interface ethernet:<br />
interface fastethernet 0;<br />
ip address 172.18.0.1/24;<br />
exit;<br />
exit;<br />
<br />
#Para salvar as configurações:<br />
wr;<br />
<br />
'''Radius'''<br />
<br />
Para ter acesso a rede aDSL ou pela rede sem fio será usado Radius para que os usuários sejam autenticados. O RADIUS é um sistema utilizado para prover uma autenticação centralizada em redes dial-up, VPN's (Virtual Private Network) e redes sem fio. Ele tem um modelo cliente-servidor, onde o cliente é o Network Access Server (NAS). Esse servidor é responsável por obter a informação sobre o cliente e repassá-la para o servidor RADIUS, além de interpretar a resposta, dando ou não acesso ao cliente. O servidor RADIUS é responsável por receber pedidos de conexão, autenticar o usuário e repassar ao NAS as informações necessárias para esse dar acesso ao usuário na rede. <br />
<br />
'''Arquivos configurados:''' <br />
<br />
Configurar login e senha para o cliente Radius ( /etc/freeradius<br />
/users ):<br />
<br />
“Usúario” Cleartext-Password := "senha"<br />
“Usúario” User-Password := "senha"<br />
<br />
Teste antes se seu servidor Radius está autenticando usuáriosfaça o seguinte comando no AC PPPoE (que fica em Ac-server): <br />
<br />
radtest seu_usuario sua_senha IP_do_seu_servidor_Radius 1 segredo_do_seu_servidor_Radius<br />
<br />
Configurando o Servidor PPPoe (/etc/ppp/pppoe-servers-options): <br />
<br />
require-chap<br />
auth<br />
lcp-echo-interval 10<br />
lcp-echo-failure 2<br />
ms-dns IP do seu servidor DNS<br />
netmask 255.255.255.0<br />
noipdefault<br />
debug<br />
kdebug 4<br />
plugin radius.so<br />
plugin radattr.so<br />
radius-config-file /etc/radiusclient/teletec.conf<br />
mru 1492<br />
mtu 1492<br />
<br />
Configuração do Cliente Radius ( etc/radiusclient/teletec.conf ):<br />
<br />
auth_order radius<br />
login_tries 4<br />
login_timeout 60<br />
nologin /etc/nologin<br />
issue /etc/radiusclient/issue<br />
authserver 200.135.37.100<br />
acctserver 200.135.37.100<br />
servers /etc/radiusclient/servers<br />
dictionary /etc/radiusclient/dictionary<br />
login_radius /usr/sbin/login.radius<br />
seqfile /var/run/radius.seq<br />
mapfile /etc/radiusclient/port-id-map<br />
default_realm<br />
radius_timeout 10<br />
radius_retries 3<br />
login_local /bin/login<br />
<br />
Configurando o IP do Servidor Radius ( /etc/radiusclient/servers ):<br />
<br />
200.135.37.100 testing123<br />
<br />
Integrando Radius ao Banco de Dados<br />
<br />
Primeiro procedimento, instale o pacote. <br />
<br />
apt-get install freeradius-mysql<br />
Edite o arquivo de configuração do freeradius, e descomente a seguinte linha <br />
( /etc/freeradius/radiusd.conf ): <br />
<br />
$INCLUDE sql.conf<br />
<br />
Para entrar no MySQL execute o comando: <br />
<br />
mysql -u root -p <br />
<br />
Crie uma base de dados somente para o Radius e dê ao usuário Radius a devida permissão para acesso a esta base. No shell do MySQL, execute os comandos: <br />
<br />
CREATE DATABASE radius;<br />
GRANT ALL ON radius.* TO freerad@localhost IDENTIFIED BY "senha_do_usuário_freeradius";<br />
exit;<br />
<br />
Inserindo informações na base de dados: <br />
<br />
mysql -u “usuário” -p “senha do usuário radius” “database” < /etc/freeradius/sql/mysql/schema.sql<br />
mysql -u “usuário” -p “senha do usuário radius” “database” < /etc/freeradius/sql/mysql/nas.sql<br />
<br />
Editar o arquivo /etc/freeradius/sql.conf, colocando a senha do usuário Radius: <br />
<br />
passwrod = "senha do usuário radius"<br />
<br />
E descomente a linha do mesmo arquivo ( /etc/freeradius/sql.conf ) : <br />
<br />
readclients = yes<br />
<br />
Reinicie o FreeRadius: <br />
<br />
service freeradius restart<br />
<br />
== Cabeamento Estruturado ==<br />
<br />
Atividades Concluídas:<br />
<br />
- o A central telefônica ao DSLAM<br />
- o O DSLAM ao armário de telecom da equipe, através de uma linha telefone + DSL<br />
- o armário da equipe a uma área de trabalho. <br />
- O cabeamento permitiu a conexão do modem DSL no armário de telecom.<br />
- As tomadas da área de trabalho para conexão com Telefone e o Modem ADSL.<br />
<br />
== Programação para Redes de Computadores ==<br />
<br />
'''Os Arquivos PHP (pagina Web) Encontram-se dentro da pasta: ''/var/www/teletec'''''<br />
<br />
- Edição do Arquivo '''Verificação.php''':<br />
Esta pagina PHP verifica se o login e a senha do administrador esta correto.<br />
Se estiver correto vai para a pagina "principal.php" se não volta para "login.php".<br />
<br />
<?<br />
session_start();<br />
$login = $_POST['login'];<br />
$senha = $_POST['senha'];<br />
if ( ( $login == "LOGIN-DO-ADMIN" ) && ( $senha == "SENHA-DO-ADMIN" ) ){<br />
$_SESSION['autorizado'] = $login;<br />
Header ("Location: principal.php");<br />
}else{<br />
Header ("Location: login.php");<br />
}<br />
?><br />
<br />
- Edição do Arquivo '''sair.php''':<br />
Esta pagina PHP faz o administrador "deslogar" ("logoff") e depois volta para pagina "login.php"<br />
<br />
<?<br />
session_start();<br />
session_destroy();<br />
Header ("Location: login.php");<br />
?><br />
<br />
- Edição do arquivo '''principal.php''': <br />
Esta é a principal pagina PHP do site, nela verificamos os clientes criados e armazenados no banco de dados, redirecionamos para pagina que modifica os dominios (alterar.php), redirecionamos para pagina que remover os dominios (excluir.php)e tambem redirecionamos para a pagina que adiciona os dominios (adicionar.php).<br />
Quando é redirecionado para pagina de modificação e remoção tambem é enviado uma variavel com o dominio do cliente para saber qual usuario deve ser modificado ou alterado.<br />
<.?<br />
.session_start();<br />
.if (!isset($_SESSION['autorizado'])){<br />
.header ("Location: login.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Administrcao de Dominios</title><br />
<./head><br />
<.body><br />
<.p><a href="sair.php">Sair</a></p><br />
<.p></p><br />
<.p style="text-align:center;margin-left:auto;margin-right:auto;">Cliente Dominio Acao </p><br />
<br />
<.?<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$consulta = "SELECT * from clientes";<br />
$resultado = mysql_query($consulta,$conexao);<br />
while($linha = mysql_fetch_array($resultado)){<br />
$cliente = $linha['cliente'];<br />
$dominio = $linha['dominio'];<br />
.?><br />
<.form><br />
<.p style="text-align:center;margin-left:auto;margin-right:auto;"><br />
<.a name="cliente" id="cliente" href="alterar.php?id=<? echo $linha['dominio'];?>"> <?echo $.linha['cliente'];?></a> <br />
<.? echo $linha['dominio'];?> <a href="excluir.php?id=<? echo $linha['dominio'];?>"> Excluir</a></p><br />
<./form><br />
<.?<br />
.}<br />
.mysql_free_result($resultado);<br />
.mysql_close($conexao);<br />
.}<br />
.?><br />
<.p style="text-align:right;margin-left:auto;margin-right:0;"><br />
<.a href="adicionar.php"><span style="color:#ff0000">Adicionar novo dominio</span></a></p><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''mod-domínio.php''':<br />
Esta pagina PHP recebe três variaveis com o dominio antigo do clinete, o novo dominio e o novo nome do cliente, estas variaveis são repassadas para o script "mod-dominio.sh" e este é executado modificando o dominio e o nome do cliente, depois de executar o script as informações do banco de dados tambem são modificadas e o serviço APACHE2 é reiniciado.<br />
Após todo este processamento a pagina é redirecionada para 'principal.php".<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$cliente = $_POST['cliente'];<br />
$dominio = $_POST['dominio'];<br />
$antigo = $_POST['antigo'];;<br />
if (empty($dominio)) {<br />
$dominio = "invalido";<br />
} <br />
<br />
if (preg_match('/^[a-z0-9]+/', $dominio)){<br />
}else{<br />
$dominio = "invalido";<br />
} <br />
<br />
$arquivo = '/etc/bind/named.conf';<br />
$linhas = array();<br />
exec("cat $arquivo",$linhas);<br />
for ($i = 0 ; $i < sizeof($linhas); $i++){<br />
if ($linhas[$i] == "include \"/etc/bind/$dominio.conf\";"){<br />
$dominio = "invalido";<br />
}<br />
}<br />
if ($dominio == "invalido"){<br />
header ("Location: alterar.php");<br />
}else{ <br />
<br />
$script = "/etc/teletec/mod-dominio.sh $antigo '$cliente' $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$deletar = "DELETE FROM clientes WHERE dominio='$antigo.teletec.sj.ifsc.edu.br'";<br />
mysql_query($deletar,$conexao);<br />
mysql_close($conexao); <br />
<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$inserir = "INSERT INTO clientes (cliente,dominio) VALUES ('$cliente','$dominio.teletec.sj.ifsc.edu.br')";<br />
mysql_query($inserir,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php"); <br />
<br />
}<br />
.}<br />
?.><br />
<br />
- Edição do Arquivo '''login.php''': <br />
Esta pagina PHP recolhe o login e a senha fornecidas pelo administrador atraves de um formulario e manda para a pagina PHP de processamento que verifica se esta correto.<br />
.<?<br />
.session_start();<br />
.if (isset($_SESSION['autorizado'])){<br />
.Header ("Location: principal.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Hospedagem Web</title><br />
<./head><br />
<br />
<.body><br />
<.p></p><br />
<.p>Sistemas de Hospedagem de Sitios Web</p><br />
<.p></p><br />
<.form name="formTeste" action="verificacao.php" method="post"><br />
<.p>Usu&#xe1;rio:<br><br />
<.input type="text" name="login"> <br />
<.p>Senha:<br> <br />
<.input type="password" name="senha"> <br />
<.input type="submit" name="b_enviar" value="Entrar"><br />
<./form><br />
<.p></p><br />
<.?<br />
}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''Index.php''':<br />
Esta pagina apenas redireciona para "login.php"<br />
<.?<br />
Header ("Location: login.php");<br />
.?><br />
<br />
- Edição do Arquivo '''excluir.php''':<br />
Esta pagina PHP faz uma verificação, se o administrador realmente querer excluir o dominio é mandado o dominio do clinete em uma variavel para a pagina PHP de processamento "del-dominio.php" e a pagina é redirecionada para la, mais se o usuario não quiser escluir é mandado novamente para p pagina "principal.php".<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){ <br />
header ("Location: login.php");<br />
}else{<br />
$id=$_GET['id'];<br />
$parte1 = explode(".", $id);<br />
$antigo = $parte1[0];<br />
?.><br />
<.html><br />
<head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Excluir o cliente</title><br />
<./head><br />
<.body><br />
<.p>Voce realmente deseja excluir o cliente?</p><br />
<br />
<.p><a href="del-dominio.php?id=<?echo $antigo;?>">Sim</a> <a<br />
.href="principal.php">Nao</a></p><br />
<.p></p><br />
<?<br />
}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''del-dominio.php''':<br />
Esta pagina PHP é uma pagina de processamento que recebe em uma variavel o nome do dominio que sera removido e transfere esta variavel para o script em bash "del-dominio.sh" ja executa o script, depois este dominio é removido do banco de dados e o serviço APACHE2 é reiniciado.<br />
Após todo o processamento a pagina é redirecionada para "principal.php".<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$dominio = $_GET['id'];<br />
$script = "/etc/teletec/del-dominio.sh $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$deletar = "DELETE FROM clientes WHERE dominio='$dominio.teletec.sj.ifsc.edu.br'";<br />
mysql_query($deletar,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php");<br />
}<br />
?.><br />
<br />
- Edição do '''Arquivo alterar.php''': <br />
Nesta pagina PHP o administrador informa o novo nome do cliente e o novo dominio, estas informações são gravadas em uma variavel que será mandada para a pagina PHP que vai fazer todo o trabalho de processamento (mod-dominio.php).<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){ <br />
header ("Location: login.php");<br />
}else{<br />
$id=$_GET['id'];<br />
$parte1 = explode(".", $id);<br />
$antigo = $parte1[0];<br />
?.><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Alterar Dominio</title><br />
</.head><br />
<.body><br />
<.p><.a href="principal.php">Voltar </a></p><br />
<.form name="formTeste" action="mod-dominio.php" method="post"><br />
<.p>Novo nome do cliente: <br><br />
<.input type="text" name="cliente"><br />
<.p>Novo dominio: <br><br />
<.input type="text" name="dominio"><br />
<.input type="hidden" name="antigo" value="<?echo $antigo;?>"> <br />
<.input type="submit" name="b_enviar" value="Alterar"><br />
<./form><br />
<.?<br />
}<br />
?.><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''adicionar.php''':<br />
Esta pagina PHP recolhe duas variaveis atraves do formulrios, em uma esta o nome do clinete e na outra o dominio escolhido, estas variaveis são repassadas para a pagina de processamento que vai adicionar este novo subdominio (add-dominio.php).Depois ela é redirecionada para a pagina de processamento "add-dominio.php".<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Adicionar Cliente</title><br />
<./head><br />
<.body><br />
<.p><.a href="principal.php">Voltar </a></p><br />
<.form name="formTeste" action="add-dominio.php" method="post"><br />
<.p>Nome do cliente: <br><br />
<.input type="text" name="cliente"><br />
<.p>Dominio: <br><br />
<.input type="text" name="dominio"><br />
<.input type="submit" name="b_enviar" value="Criar"><br />
<./form><br />
<.?<br />
.}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''add-dominio.php''':<br />
Esta pagina PHP é uma pagina de processamento que recebe duas variaveis, na primeira esta o nome do dominio que sera removido e na segunda está o dominio do cliente, estas variaveis são transferidas para o script em bash "add-dominio.sh" que é executado, depois este dominio é adicionado no banco de dados e o serviço APACHE2 é reiniciado.<br />
Após todo o processamento a pagina é redirecionada para "principal.php".<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$cliente = $_POST['cliente'];<br />
$dominio = $_POST['dominio']; <br />
<br />
if (empty($dominio)) {<br />
$dominio = "invalido";<br />
} <br />
<br />
if (preg_match('/^[a-z0-9]+/', $dominio)){<br />
}else{<br />
$dominio = "invalido";<br />
} <br />
<br />
$arquivo = '/etc/bind/named.conf';<br />
$linhas = array();<br />
exec("cat $arquivo",$linhas);<br />
for ($i = 0 ; $i < sizeof($linhas); $i++){<br />
if ($linhas[$i] == "include \"/etc/bind/$dominio.conf\";"){<br />
$dominio = "invalido";<br />
}<br />
}<br />
if ($dominio == "invalido"){<br />
header ("Location: adicionar.php");<br />
}else{<br />
$script = "/etc/teletec/add-dominio.sh '$cliente' $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$inserir = "INSERT INTO clientes (cliente,dominio) VALUES ('$cliente','$dominio.teletec.sj.ifsc.edu.br')";<br />
mysql_query($inserir,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php");<br />
}<br />
}<br />
?.><br />
<br />
'''Os Arquivos .sh (scripts que adicionam, removem ou alteram os usuários no servidor) Encontram-se dentro da pasta: ''/etc/teletec''''' <br />
<br />
- Edição do Arquivo '''mod-dominio.sh''':<br />
Script em bash que altera o dominio do cliente (Subdominio, E-mail e Pagina WEB):<br />
<br />
O script de modificação na verdade exclui o dominio criado e cria um novo, os scripts de remover e adicionar estão juntos neste script.<br />
<br />
#!/bin/bash<br />
#Leonardo<br />
#echo -n "Dominio: "<br />
#read antigo<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$antigo'.conf";' ];then<br />
# valido=sim<br />
# break<br />
# else<br />
# valido=nao<br />
# fi<br />
#done<br />
#if [ $valido = nao ];then<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio não existe ou esta em branco.\n"<br />
# exit<br />
#fi<br />
#echo -n "Novo nome para o cliente: "<br />
#read nome<br />
#echo -n "Novo dominio: "<br />
#read dominio<br />
#echo=${dominio:=nulo}<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$dominio'.conf";' ];then<br />
# dominio=existe<br />
# break<br />
# fi<br />
#done<br />
#if [ $dominio != nulo ] && [ $dominio != existe ];then<br />
antigo=$1<br />
nome=$2<br />
dominio=$3<br />
sudo sed -i '/\/etc\/bind\/'$antigo'\.conf/Id' /etc/bind/named.conf<br />
sudo rm /etc/bind/$antigo.conf<br />
sudo rm /etc/bind/$antigo.zone<br />
sudo rm /etc/apache2/sites-enabled/$antigo-default<br />
sudo rm -r /var/www/$antigo<br />
sudo sed -i '/'$antigo'\.teletec\.sj\.ifsc\.edu\.br Subdominio-'$antigo'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$antigo'@teletec\.sj\.ifsc\.edu\.br '$antigo'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$antigo'\.teletec\.sj\.ifsc\.edu\.br OK/Id' /etc/postfix/mydomains <br />
<br />
sudo echo 'include "/etc/bind/'$dominio'.conf";' >> /etc/bind/named.conf<br />
numero=`date | cut -d ":" -f 3 | cut -d " " -f 1`<br />
novoserial=$((1000000000+$numero))<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.conf > /etc/bind/$dominio.conf<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.zone | sed s/2011061504/$novoserial/g > /etc/bind/$dominio.zone<br />
sudo /etc/init.d/bind9 restart<br />
sudo sed s/padrao/$dominio/g /etc/apache2/sites-available/padrao-default > /etc/apache2/sites-enabled/$dominio-default<br />
mkdir /var/www/$dominio<br />
sed s/dominio/$dominio/g /var/www/padrao/index.html | sed s/nome/"$nome"/g > /var/www/$dominio/index.html<br />
sudo echo ' ' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br Subdominio-'$dominio'' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'@teletec.sj.ifsc.edu.br '$dominio'' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br OK' >> /etc/postfix/mydomains<br />
sudo postmap /etc/postfix/virtual<br />
sudo postmap /etc/postfix/mydomains<br />
sudo /etc/init.d/postfix restart<br />
# echo -e " * Dominio modificado com sucesso!\t\t\t\t[ OK ]\n"<br />
# else<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio ja existe ou esta em branco.\n"<br />
#fi<br />
<br />
- Edição do Arquivo '''del-dominio.sh''':<br />
Script em bash que remove o cliente (Subdominio, E-mail e Pagina WEB):<br />
<br />
Exclui todos os arquivos de configuração criados para este cliente e retira as linhas de configuração adicionadas em arquivos como o "named.conf", "virtual" e "mydomains", por ultimo os serviçoes DNS e POSTFIX são reiniciados ( o APACHE2 é reiniciado na pagina PHP).<br />
<br />
#!/bin/bash<br />
#Leonardo<br />
#echo -n "Dominio: "<br />
#read dominio<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$dominio'.conf";' ];then<br />
dominio=$1<br />
sudo sed -i '/\/etc\/bind\/'$dominio'\.conf/Id' /etc/bind/named.conf<br />
sudo rm /etc/bind/$dominio.conf<br />
sudo rm /etc/bind/$dominio.zone<br />
sudo /etc/init.d/bind9 restart<br />
sudo rm /etc/apache2/sites-enabled/$dominio-default<br />
sudo rm -r /var/www/$dominio<br />
sudo sed -i '/'$dominio'\.teletec\.sj\.ifsc\.edu\.br Subdominio-'$dominio'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$dominio'@teletec\.sj\.ifsc\.edu\.br '$dominio'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$dominio'\.teletec\.sj\.ifsc\.edu\.br OK/Id' /etc/postfix/mydomains<br />
sudo postmap /etc/postfix/virtual<br />
sudo postmap /etc/postfix/mydomains<br />
sudo /etc/init.d/postfix restart<br />
# echo -e " * Dominio removido com sucesso!\t\t\t\t[ OK ]\n"<br />
# exit<br />
# fi<br />
#done<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio não existe ou esta em branco.\n"<br />
<br />
- Edição do Arquivo '''add-dominio.sh''': <br />
Script em bash que adiciona o cliente (Subdominio, E-mail e Pagina WEB):<br />
<br />
Sub-dominio: O script pega como base arquivos padrões ja criados e configurados ( padrao.conf e padrao.zone ), altera todas as palavras "padrao" destes arvivos pelo dominio escolhido pelo usuario e salva como "dominio-escolhido".zone e "dominio-escolhido".conf. Alem disso ele tambem inclui o caminho do arquivo de configuração ".conf" no "named.conf".<br />
<br />
Pagina-Web: Assim como no sub-dominio, o script troca as palavras "padrao" que estão em um arquivo padrao de configuração ( padrao-default) pelo dominio escolhido pelo cliente, criando um novo arquivo de configuração com nome "dominio-escolhido"-default. Tambem cria uma pagina web html padrao.<br />
<br />
E-mail: O script adiciona as linhas de configuração do e-mail do cliente nos arquivos "virtual" e "mydomains".<br />
<br />
Após fazer as confgurações o script reinicia o DNS e o POSTFIX. (o APACHE2 é reiniciado na pagina PHP).<br />
<br />
#!/bin/bash<br />
# Leonardo<br />
#echo -n "Nome do cliente: "<br />
#read nome<br />
#echo -n "Dominio: " <br />
#read dominio<br />
#echo=${dominio:=nulo}<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$dominio'.conf";' ];then<br />
# dominio=existe<br />
# break<br />
# fi <br />
#done<br />
#<br />
#if [ $dominio != nulo ] && [ $dominio != existe ];then<br />
nome=$1<br />
dominio=$2<br />
sudo echo 'include "/etc/bind/'$dominio'.conf";' >> /etc/bind/named.conf<br />
numero=`date | cut -d ":" -f 3 | cut -d " " -f 1`<br />
novoserial=$((1000000000+$numero))<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.conf > /etc/bind/$dominio.conf<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.zone | sed s/2011061504/$novoserial/g > /etc/bind/$dominio.zone<br />
sudo /etc/init.d/bind9 restart<br />
sudo sed s/padrao/$dominio/g /etc/apache2/sites-available/padrao-default > /etc/apache2/sites-enabled/$dominio-default<br />
mkdir /var/www/$dominio<br />
sed s/dominio/$dominio/g /var/www/padrao/index.html | sed s/nome/"$nome"/g > /var/www/$dominio/index.html<br />
sudo echo ' ' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br Subdominio-'$dominio'' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'@teletec.sj.ifsc.edu.br '$dominio'' >> /etc/postfix/virtual <br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br OK' >> /etc/postfix/mydomains<br />
sudo postmap /etc/postfix/virtual<br />
sudo postmap /etc/postfix/mydomains<br />
sudo /etc/init.d/postfix restart<br />
# echo -e " * Dominio criado com sucesso!\t\t\t\t[ OK ]\n"<br />
# else<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio ja existe ou esta em branco.\n"<br />
#fi</div>Vagner.chttps://wiki.sj.ifsc.edu.br/index.php?title=Projeto_Integrador_-_2011.1_-_Teletec&diff=34799Projeto Integrador - 2011.1 - Teletec2011-07-09T19:10:19Z<p>Vagner.c: </p>
<hr />
<div>== * '''Equipe 2 : TELETEC''' ==<br />
<br />
----<br />
<br />
== INTEGRANTES TELETEC ==<br />
<br />
* '''Daniel Estefano'''; estefano.daniel@gmail.com <br />
* '''Denis Teixeira'''; denisteixeira3@gmail.com <br />
* '''Leonardo Oliveira P.'''; leonardo-op@live.com <br />
* '''Odair de Moraes'''; odairdmoraes@hotmail.com<br />
* '''Robson de Carvalho'''; rob_carvalho12@hotmail.com<br />
* '''Vagner Cordeiro.''' cordeirotelecom@gmail.com<br />
<br />
----<br />
<br />
== '''SOBRE A EMPRESA TELETEC - PROVEDORA DE ACESSO Á INTERNET:''' == <br />
<br />
A Empresa Oferece os seguintes serviços: <br />
<br />
# Conta de Usuário para cada cliente;<br />
# Conta de E-mail para cada cliente;<br />
# Uma página Web Padrão;<br />
# Instalação do Modem ADSL e do Cabeamento Estrurado;<br />
# Acesso Wirelles;<br />
<br />
== Etapas Iniciais de Configurações da Rede ==<br />
<br />
<br />
# Instalação do Sistema Operacional:Ubuntu-Server;<br />
# Definido Sistema de Arquivo, Dividido em 3 Partições: ''1 Partição Primátia, 1 Partição Secundária e uma Partição para Swap;'' <br />
# Definido nome do Domínio: teletec.sj.ifsc.edu.br;<br />
# Criado um Usuário: Tecnico;<br />
# Acesso via SSH ao Servidor Teletec.<br />
<br />
----<br />
<br />
== Gerencia de Redes: Apache, Postfix e DNS ==<br />
<br />
'''Configurações do servidor DNS:''' <br />
<br />
- Edição do Arquivo para IP Estático: '''/etc/network/interfaces''' <br />
<br />
# This file describes the network interfaces available on your system<br />
# and how to activate them. For more information, see interfaces(5).<br />
# The loopback network interface<br />
auto lo<br />
iface lo inet loopback<br />
# The primary network interface<br />
auto eth0<br />
iface eth0 inet static<br />
address 200.135.37.100<br />
netmask 255.255.255.192<br />
gateway 200.135.37.126 <br />
<br />
- Edição do Arquivo do servidor DNS '''/etc/bind/named.conf''' <br />
<br />
Indica todos os arquivos que vai fazer a configuração dele<br />
<br />
// This is the primary configuration file for the BIND DNS server named.<br />
//<br />
// Please read /usr/share/doc/bind9/README.Debian.gz for information on the <br />
// structure of BIND configuration files in Debian, *BEFORE* you customize <br />
// this configuration file.<br />
//<br />
// If you are just adding zones, please do that in /etc/bind/named.conf.local<br />
include "/etc/bind/named.conf.options";<br />
include "/etc/bind/named.conf.local";<br />
include "/etc/bind/named.conf.default-zones";<br />
include "/etc/bind/servidor.conf";<br />
include "/etc/bind/tecnico.conf";<br />
include "/etc/bind/daniel.conf";<br />
<br />
- Edição do Arquivo de servidor DNS: named.conf.local '''/etc/bind/named.conf.local'''<br />
É um arquivo padrão do BIND onde foi configurado o o nosso dominino TELETEC.<br />
<br />
//<br />
// Do any local configuration here<br />
//<br />
<br />
// Consider adding the 1918 zones here, if they are not used in your<br />
// organization<br />
//include "/etc/bind/zones.rfc1918"8;<br />
zone "teletec.sj.ifsc.edu.br." IN {<br />
type master;<br />
file "/etc/bind/teletec.zone";<br />
allow-update { none; };<br />
};<br />
<br />
- Edição do Arquivo de DNS Reverso: '''/etc/bind/37.135.200.in-addr.arpa'''<br />
O DNS Reverso resolve um endereço IP para um nome de servidor – por exemplo, ele poderia resolver 200.176.3.142 para exemplo.hipotetico.com.br.<br />
<br />
$TTL 86400<br />
@ IN SOA servidor.teletec.sj.ifsc.edu.br. root (<br />
2011061500 ;<br />
1d ;<br />
1h ;<br />
1w ; <br />
1d ;<br />
)<br />
IN NS servidor.teletec.sj.ifsc.edu.br.<br />
100 IN PTR servidor.teletec.sj.ifsc.edu.br.<br />
<br />
- Edição do Arquivo para criar um subdomínio:'''/etc/bind/teletec.zone'''<br />
Arquivo que traz todas as configurações de cada subdomínio. <br />
<br />
$TTL 86400<br />
@ IN SOA teletec.teletec.sj.ifsc.edu.br root (<br />
2011062901;<br />
3H;<br />
15M;<br />
1W;<br />
1D );<br />
IN NS teletec.teletec.sj.ifsc.edu.br.<br />
IN MX 0 mail.teletec.sj.ifsc.edu.br.<br />
localhost IN A 127.0.0.1<br />
$ORIGIN teletec.sj.ifsc.edu.br.<br />
teletec A 200.135.37.100<br />
www A 200.135.37.100<br />
mail A 200.135.37.100<br />
<br />
- '''Configuração do servidor Apache'''<br />
<br />
No servidor Apache foi feito a instalação com o comando:<br />
apt-get install apache2<br />
E nele não foi preciso fazer configuraçoẽs, nele vai ser criado uma nova nova pagina web para cada novo cliente na pasta:'' /etc/apache2/sites-enabled''' essas paginas web serão adicionadas automaticamente pelo script <br />
<br />
- '''Configuração do servidor POSTFIX'''<br />
<br />
*Primeiro foi feito a instalação com o comando:<br />
<br />
apt-get install postfix<br />
<br />
Em seguida o programa de instalação vai fazer algumas perguntas sobre a localização dos arquivos e alguns parametros <br />
<br />
== Instalação de Equipamento de Redes (Modem, Switch e Roteadores) ==<br />
<br />
'''Configurações:''' <br />
<br />
Instalação:<br />
<br />
minicom -s<br />
<br />
Configuração do Roteador Cisco 1700: <br />
<br />
* Configuração dos Dois Roteadores Utilizando a ferramenta "Minicon" (Se fosse Windows seria Hyperterminal)<br />
* Configuração dos dispositivos: Serial e Ethernet<br />
* Configuração como Protocolo PPP<br />
<br />
- ''"Configuração da porta serial":''<br />
<br />
┌─────────────[configuração]──────────────┐<br />
│ Nomes de arquivos e rotas<br />
│ Protocolos de transferência de arquivos<br />
│ Configuração da porta serial<br />
│ Modem e discagem<br />
│ Tela e teclado<br />
│ Salvar configuração como dfl<br />
│ Salvar configuração como<br />
│ Sair<br />
│ Sair do Minicom<br />
└────────────────────────────────────────┘<br />
<br />
- ''"Alteração da Porta Serial"''<br />
┌──────────────────────────────────────────────────────────┐<br />
│ A – Dispositivo Serial : /dev/ttSy0 <br />
│ B – Localização do Arquivo de Travamento : /var/lock<br />
│ C – Programa de Entrada :<br />
│ D – Programa de Saída :<br />
│ E – Bps/Paridade/Bits : 9600 8N1 <br />
│ F – Controle de Fluxo por Hardware : Não<br />
│ G – Controle de Fluxo por Software : Não<br />
│<br />
│ Alterar qual configuração?<br />
└──────────────────────────────────────────────────────────┘<br />
<br />
- ''"Salvar configuração com dfl"''<br />
<br />
- ''Configurando a Interface Serial do Roteador:''<br />
<br />
enable;<br />
configure terminal;<br />
<br />
#Para configurar a interface serial:<br />
interface serial 0;<br />
ip address 10.0.0.1/30;<br />
encapsulation ppp;<br />
exit;<br />
<br />
#Para configurar a interface ethernet:<br />
interface fastethernet 0;<br />
ip address 172.18.0.1/24;<br />
exit;<br />
exit;<br />
<br />
#Para salvar as configurações:<br />
wr;<br />
<br />
'''Radius'''<br />
<br />
Para ter acesso a rede aDSL ou pela rede sem fio será usado Radius para que os usuários sejam autenticados. O RADIUS é um sistema utilizado para prover uma autenticação centralizada em redes dial-up, VPN's (Virtual Private Network) e redes sem fio. Ele tem um modelo cliente-servidor, onde o cliente é o Network Access Server (NAS). Esse servidor é responsável por obter a informação sobre o cliente e repassá-la para o servidor RADIUS, além de interpretar a resposta, dando ou não acesso ao cliente. O servidor RADIUS é responsável por receber pedidos de conexão, autenticar o usuário e repassar ao NAS as informações necessárias para esse dar acesso ao usuário na rede. <br />
<br />
'''Arquivos configurados:''' <br />
<br />
Configurar login e senha para o cliente Radius ( /etc/freeradius<br />
/users ):<br />
<br />
“Usúario” Cleartext-Password := "senha"<br />
“Usúario” User-Password := "senha"<br />
<br />
Teste antes se seu servidor Radius está autenticando usuáriosfaça o seguinte comando no AC PPPoE (que fica em Ac-server): <br />
<br />
radtest seu_usuario sua_senha IP_do_seu_servidor_Radius 1 segredo_do_seu_servidor_Radius<br />
<br />
Configurando o Servidor PPPoe (/etc/ppp/pppoe-servers-options): <br />
<br />
require-chap<br />
auth<br />
lcp-echo-interval 10<br />
lcp-echo-failure 2<br />
ms-dns IP do seu servidor DNS<br />
netmask 255.255.255.0<br />
noipdefault<br />
debug<br />
kdebug 4<br />
plugin radius.so<br />
plugin radattr.so<br />
radius-config-file /etc/radiusclient/teletec.conf<br />
mru 1492<br />
mtu 1492<br />
<br />
Configuração do Cliente Radius ( etc/radiusclient/teletec.conf ):<br />
<br />
auth_order radius<br />
login_tries 4<br />
login_timeout 60<br />
nologin /etc/nologin<br />
issue /etc/radiusclient/issue<br />
authserver 200.135.37.100<br />
acctserver 200.135.37.100<br />
servers /etc/radiusclient/servers<br />
dictionary /etc/radiusclient/dictionary<br />
login_radius /usr/sbin/login.radius<br />
seqfile /var/run/radius.seq<br />
mapfile /etc/radiusclient/port-id-map<br />
default_realm<br />
radius_timeout 10<br />
radius_retries 3<br />
login_local /bin/login<br />
<br />
Configurando o IP do Servidor Radius ( /etc/radiusclient/servers ):<br />
<br />
200.135.37.100 testing123<br />
<br />
Integrando Radius ao Banco de Dados<br />
<br />
Primeiro procedimento, instale o pacote. <br />
<br />
apt-get install freeradius-mysql<br />
Edite o arquivo de configuração do freeradius, e descomente a seguinte linha <br />
( /etc/freeradius/radiusd.conf ): <br />
<br />
$INCLUDE sql.conf<br />
<br />
Para entrar no MySQL execute o comando: <br />
<br />
mysql -u root -p <br />
<br />
Crie uma base de dados somente para o Radius e dê ao usuário Radius a devida permissão para acesso a esta base. No shell do MySQL, execute os comandos: <br />
<br />
CREATE DATABASE radius;<br />
GRANT ALL ON radius.* TO freerad@localhost IDENTIFIED BY "senha_do_usuário_freeradius";<br />
exit;<br />
<br />
Inserindo informações na base de dados: <br />
<br />
mysql -u “usuário” -p “senha do usuário radius” “database” < /etc/freeradius/sql/mysql/schema.sql<br />
mysql -u “usuário” -p “senha do usuário radius” “database” < /etc/freeradius/sql/mysql/nas.sql<br />
<br />
Editar o arquivo /etc/freeradius/sql.conf, colocando a senha do usuário Radius: <br />
<br />
passwrod = "senha do usuário radius"<br />
<br />
E descomente a linha do mesmo arquivo ( /etc/freeradius/sql.conf ) : <br />
<br />
readclients = yes<br />
<br />
Reinicie o FreeRadius: <br />
<br />
service freeradius restart<br />
<br />
== Cabeamento Estruturado ==<br />
<br />
Atividades Concluídas:<br />
<br />
- o A central telefônica ao DSLAM<br />
- o O DSLAM ao armário de telecom da equipe, através de uma linha telefone + DSL<br />
- o armário da equipe a uma área de trabalho. <br />
- O cabeamento permitiu a conexão do modem DSL no armário de telecom.<br />
- As tomadas da área de trabalho para conexão com Telefone e o Modem ADSL.<br />
<br />
== Programação para Redes de Computadores ==<br />
<br />
'''Os Arquivos PHP (pagina Web) Encontram-se dentro da pasta: ''/var/www/teletec'''''<br />
<br />
- Edição do Arquivo '''Verificação.php''':<br />
Esta pagina PHP verifica se o login e a senha do administrador esta correto.<br />
Se estiver correto vai para a pagina "principal.php" se não volta para "login.php".<br />
<br />
<?<br />
session_start();<br />
$login = $_POST['login'];<br />
$senha = $_POST['senha'];<br />
if ( ( $login == "LOGIN-DO-ADMIN" ) && ( $senha == "SENHA-DO-ADMIN" ) ){<br />
$_SESSION['autorizado'] = $login;<br />
Header ("Location: principal.php");<br />
}else{<br />
Header ("Location: login.php");<br />
}<br />
?><br />
<br />
- Edição do Arquivo '''sair.php''':<br />
Esta pagina PHP faz o administrador "deslogar" ("logoff") e depois volta para pagina "login.php"<br />
<br />
<?<br />
session_start();<br />
session_destroy();<br />
Header ("Location: login.php");<br />
?><br />
<br />
- Edição do arquivo '''principal.php''': <br />
Esta é a principal pagina PHP do site, nela verificamos os clientes criados e armazenados no banco de dados, redirecionamos para pagina que modifica os dominios (alterar.php), redirecionamos para pagina que remover os dominios (excluir.php)e tambem redirecionamos para a pagina que adiciona os dominios (adicionar.php).<br />
Quando é redirecionado para pagina de modificação e remoção tambem é enviado uma variavel com o dominio do cliente para saber qual usuario deve ser modificado ou alterado.<br />
<.?<br />
.session_start();<br />
.if (!isset($_SESSION['autorizado'])){<br />
.header ("Location: login.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Administrcao de Dominios</title><br />
<./head><br />
<.body><br />
<.p><a href="sair.php">Sair</a></p><br />
<.p></p><br />
<.p style="text-align:center;margin-left:auto;margin-right:auto;">Cliente Dominio Acao </p><br />
<br />
<.?<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$consulta = "SELECT * from clientes";<br />
$resultado = mysql_query($consulta,$conexao);<br />
while($linha = mysql_fetch_array($resultado)){<br />
$cliente = $linha['cliente'];<br />
$dominio = $linha['dominio'];<br />
.?><br />
<.form><br />
<.p style="text-align:center;margin-left:auto;margin-right:auto;"><br />
<.a name="cliente" id="cliente" href="alterar.php?id=<? echo $linha['dominio'];?>"> <?echo $.linha['cliente'];?></a> <br />
<.? echo $linha['dominio'];?> <a href="excluir.php?id=<? echo $linha['dominio'];?>"> Excluir</a></p><br />
<./form><br />
<.?<br />
.}<br />
.mysql_free_result($resultado);<br />
.mysql_close($conexao);<br />
.}<br />
.?><br />
<.p style="text-align:right;margin-left:auto;margin-right:0;"><br />
<.a href="adicionar.php"><span style="color:#ff0000">Adicionar novo dominio</span></a></p><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''mod-domínio.php''':<br />
Esta pagina PHP recebe três variaveis com o dominio antigo do clinete, o novo dominio e o novo nome do cliente, estas variaveis são repassadas para o script "mod-dominio.sh" e este é executado modificando o dominio e o nome do cliente, depois de executar o script as informações do banco de dados tambem são modificadas e o serviço APACHE2 é reiniciado.<br />
Após todo este processamento a pagina é redirecionada para 'principal.php".<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$cliente = $_POST['cliente'];<br />
$dominio = $_POST['dominio'];<br />
$antigo = $_POST['antigo'];;<br />
if (empty($dominio)) {<br />
$dominio = "invalido";<br />
} <br />
<br />
if (preg_match('/^[a-z0-9]+/', $dominio)){<br />
}else{<br />
$dominio = "invalido";<br />
} <br />
<br />
$arquivo = '/etc/bind/named.conf';<br />
$linhas = array();<br />
exec("cat $arquivo",$linhas);<br />
for ($i = 0 ; $i < sizeof($linhas); $i++){<br />
if ($linhas[$i] == "include \"/etc/bind/$dominio.conf\";"){<br />
$dominio = "invalido";<br />
}<br />
}<br />
if ($dominio == "invalido"){<br />
header ("Location: alterar.php");<br />
}else{ <br />
<br />
$script = "/etc/teletec/mod-dominio.sh $antigo '$cliente' $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$deletar = "DELETE FROM clientes WHERE dominio='$antigo.teletec.sj.ifsc.edu.br'";<br />
mysql_query($deletar,$conexao);<br />
mysql_close($conexao); <br />
<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$inserir = "INSERT INTO clientes (cliente,dominio) VALUES ('$cliente','$dominio.teletec.sj.ifsc.edu.br')";<br />
mysql_query($inserir,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php"); <br />
<br />
}<br />
.}<br />
?.><br />
<br />
- Edição do Arquivo '''login.php''': <br />
Esta pagina PHP recolhe o login e a senha fornecidas pelo administrador atraves de um formulario e manda para a pagina PHP de processamento que verifica se esta correto.<br />
.<?<br />
.session_start();<br />
.if (isset($_SESSION['autorizado'])){<br />
.Header ("Location: principal.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Hospedagem Web</title><br />
<./head><br />
<br />
<.body><br />
<.p></p><br />
<.p>Sistemas de Hospedagem de Sitios Web</p><br />
<.p></p><br />
<.form name="formTeste" action="verificacao.php" method="post"><br />
<.p>Usu&#xe1;rio:<br><br />
<.input type="text" name="login"> <br />
<.p>Senha:<br> <br />
<.input type="password" name="senha"> <br />
<.input type="submit" name="b_enviar" value="Entrar"><br />
<./form><br />
<.p></p><br />
<.?<br />
}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''Index.php''':<br />
Esta pagina apenas redireciona para "login.php"<br />
<.?<br />
Header ("Location: login.php");<br />
.?><br />
<br />
- Edição do Arquivo '''excluir.php''':<br />
Esta pagina PHP faz uma verificação, se o administrador realmente querer excluir o dominio é mandado o dominio do clinete em uma variavel para a pagina PHP de processamento "del-dominio.php" e a pagina é redirecionada para la, mais se o usuario não quiser escluir é mandado novamente para p pagina "principal.php".<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){ <br />
header ("Location: login.php");<br />
}else{<br />
$id=$_GET['id'];<br />
$parte1 = explode(".", $id);<br />
$antigo = $parte1[0];<br />
?.><br />
<.html><br />
<head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Excluir o cliente</title><br />
<./head><br />
<.body><br />
<.p>Voce realmente deseja excluir o cliente?</p><br />
<br />
<.p><a href="del-dominio.php?id=<?echo $antigo;?>">Sim</a> <a<br />
.href="principal.php">Nao</a></p><br />
<.p></p><br />
<?<br />
}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''del-dominio.php''':<br />
Esta pagina PHP é uma pagina de processamento que recebe em uma variavel o nome do dominio que sera removido e transfere esta variavel para o script em bash "del-dominio-php" ja executa o script, depois este dominio é removido do banco de dados e o serviço APACHE2 é reiniciado.<br />
Após todo o processamento a pagina é redirecionada para "principal.php".<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$dominio = $_GET['id'];<br />
$script = "/etc/teletec/del-dominio.sh $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$deletar = "DELETE FROM clientes WHERE dominio='$dominio.teletec.sj.ifsc.edu.br'";<br />
mysql_query($deletar,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php");<br />
}<br />
?.><br />
<br />
- Edição do '''Arquivo alterar.php''': <br />
Nesta pagina PHP o administrador informa o novo nome do cliente e o novo dominio, estas informações são gravadas em uma variavel que será mandada para a pagina PHP que vai fazer todo o trabalho de processamento (add-dominio.php).<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){ <br />
header ("Location: login.php");<br />
}else{<br />
$id=$_GET['id'];<br />
$parte1 = explode(".", $id);<br />
$antigo = $parte1[0];<br />
?.><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Alterar Dominio</title><br />
</.head><br />
<.body><br />
<.p><.a href="principal.php">Voltar </a></p><br />
<.form name="formTeste" action="mod-dominio.php" method="post"><br />
<.p>Novo nome do cliente: <br><br />
<.input type="text" name="cliente"><br />
<.p>Novo dominio: <br><br />
<.input type="text" name="dominio"><br />
<.input type="hidden" name="antigo" value="<?echo $antigo;?>"> <br />
<.input type="submit" name="b_enviar" value="Alterar"><br />
<./form><br />
<.?<br />
}<br />
?.><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''adicionar.php''':<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Adicionar Cliente</title><br />
<./head><br />
<.body><br />
<.p><.a href="principal.php">Voltar </a></p><br />
<.form name="formTeste" action="add-dominio.php" method="post"><br />
<.p>Nome do cliente: <br><br />
<.input type="text" name="cliente"><br />
<.p>Dominio: <br><br />
<.input type="text" name="dominio"><br />
<.input type="submit" name="b_enviar" value="Criar"><br />
<./form><br />
<.?<br />
.}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''add-dominio.php''':<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$cliente = $_POST['cliente'];<br />
$dominio = $_POST['dominio']; <br />
<br />
if (empty($dominio)) {<br />
$dominio = "invalido";<br />
} <br />
<br />
if (preg_match('/^[a-z0-9]+/', $dominio)){<br />
}else{<br />
$dominio = "invalido";<br />
} <br />
<br />
$arquivo = '/etc/bind/named.conf';<br />
$linhas = array();<br />
exec("cat $arquivo",$linhas);<br />
for ($i = 0 ; $i < sizeof($linhas); $i++){<br />
if ($linhas[$i] == "include \"/etc/bind/$dominio.conf\";"){<br />
$dominio = "invalido";<br />
}<br />
}<br />
if ($dominio == "invalido"){<br />
header ("Location: adicionar.php");<br />
}else{<br />
$script = "/etc/teletec/add-dominio.sh '$cliente' $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$inserir = "INSERT INTO clientes (cliente,dominio) VALUES ('$cliente','$dominio.teletec.sj.ifsc.edu.br')";<br />
mysql_query($inserir,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php");<br />
}<br />
}<br />
?.><br />
<br />
'''Os Arquivos .sh (scripts que adicionam, removem ou alteram os usuários no servidor) Encontram-se dentro da pasta: ''/etc/teletec''''' <br />
<br />
- Edição do Arquivo '''mod-dominio.sh''':<br />
Script em bash que altera o dominio do cliente (Subdominio, E-mail e Pagina WEB):<br />
<br />
O script de modificação na verdade exclui o dominio criado e cria um novo, os scripts de remover e adicionar estão juntos neste script.<br />
<br />
#!/bin/bash<br />
#Leonardo<br />
#echo -n "Dominio: "<br />
#read antigo<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$antigo'.conf";' ];then<br />
# valido=sim<br />
# break<br />
# else<br />
# valido=nao<br />
# fi<br />
#done<br />
#if [ $valido = nao ];then<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio não existe ou esta em branco.\n"<br />
# exit<br />
#fi<br />
#echo -n "Novo nome para o cliente: "<br />
#read nome<br />
#echo -n "Novo dominio: "<br />
#read dominio<br />
#echo=${dominio:=nulo}<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$dominio'.conf";' ];then<br />
# dominio=existe<br />
# break<br />
# fi<br />
#done<br />
#if [ $dominio != nulo ] && [ $dominio != existe ];then<br />
antigo=$1<br />
nome=$2<br />
dominio=$3<br />
sudo sed -i '/\/etc\/bind\/'$antigo'\.conf/Id' /etc/bind/named.conf<br />
sudo rm /etc/bind/$antigo.conf<br />
sudo rm /etc/bind/$antigo.zone<br />
sudo rm /etc/apache2/sites-enabled/$antigo-default<br />
sudo rm -r /var/www/$antigo<br />
sudo sed -i '/'$antigo'\.teletec\.sj\.ifsc\.edu\.br Subdominio-'$antigo'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$antigo'@teletec\.sj\.ifsc\.edu\.br '$antigo'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$antigo'\.teletec\.sj\.ifsc\.edu\.br OK/Id' /etc/postfix/mydomains <br />
<br />
sudo echo 'include "/etc/bind/'$dominio'.conf";' >> /etc/bind/named.conf<br />
numero=`date | cut -d ":" -f 3 | cut -d " " -f 1`<br />
novoserial=$((1000000000+$numero))<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.conf > /etc/bind/$dominio.conf<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.zone | sed s/2011061504/$novoserial/g > /etc/bind/$dominio.zone<br />
sudo /etc/init.d/bind9 restart<br />
sudo sed s/padrao/$dominio/g /etc/apache2/sites-available/padrao-default > /etc/apache2/sites-enabled/$dominio-default<br />
mkdir /var/www/$dominio<br />
sed s/dominio/$dominio/g /var/www/padrao/index.html | sed s/nome/"$nome"/g > /var/www/$dominio/index.html<br />
sudo echo ' ' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br Subdominio-'$dominio'' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'@teletec.sj.ifsc.edu.br '$dominio'' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br OK' >> /etc/postfix/mydomains<br />
sudo postmap /etc/postfix/virtual<br />
sudo postmap /etc/postfix/mydomains<br />
sudo /etc/init.d/postfix restart<br />
# echo -e " * Dominio modificado com sucesso!\t\t\t\t[ OK ]\n"<br />
# else<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio ja existe ou esta em branco.\n"<br />
#fi<br />
<br />
- Edição do Arquivo '''del-dominio.sh''':<br />
Script em bash que remove o cliente (Subdominio, E-mail e Pagina WEB):<br />
<br />
Exclui todos os arquivos de configuração criados para este cliente e retira as linhas de configuração adicionadas em arquivos como o "named.conf", "virtual" e "mydomains", por ultimo os serviçoes DNS e POSTFIX são reiniciados ( o APACHE2 é reiniciado na pagina PHP).<br />
<br />
#!/bin/bash<br />
#Leonardo<br />
#echo -n "Dominio: "<br />
#read dominio<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$dominio'.conf";' ];then<br />
dominio=$1<br />
sudo sed -i '/\/etc\/bind\/'$dominio'\.conf/Id' /etc/bind/named.conf<br />
sudo rm /etc/bind/$dominio.conf<br />
sudo rm /etc/bind/$dominio.zone<br />
sudo /etc/init.d/bind9 restart<br />
sudo rm /etc/apache2/sites-enabled/$dominio-default<br />
sudo rm -r /var/www/$dominio<br />
sudo sed -i '/'$dominio'\.teletec\.sj\.ifsc\.edu\.br Subdominio-'$dominio'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$dominio'@teletec\.sj\.ifsc\.edu\.br '$dominio'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$dominio'\.teletec\.sj\.ifsc\.edu\.br OK/Id' /etc/postfix/mydomains<br />
sudo postmap /etc/postfix/virtual<br />
sudo postmap /etc/postfix/mydomains<br />
sudo /etc/init.d/postfix restart<br />
# echo -e " * Dominio removido com sucesso!\t\t\t\t[ OK ]\n"<br />
# exit<br />
# fi<br />
#done<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio não existe ou esta em branco.\n"<br />
<br />
- Edição do Arquivo '''add-dominio.sh''': <br />
Script em bash que adiciona o cliente (Subdominio, E-mail e Pagina WEB):<br />
<br />
Sub-dominio: O script pega como base arquivos padrões ja criados e configurados ( padrao.conf e padrao.zone ), altera todas as palavras "padrao" destes arvivos pelo dominio escolhido pelo usuario e salva como "dominio-escolhido".zone e "dominio-escolhido".conf. Alem disso ele tambem inclui o caminho do arquivo de configuração ".conf" no "named.conf".<br />
<br />
Pagina-Web: Assim como no sub-dominio, o script troca as palavras "padrao" que estão em um arquivo padrao de configuração ( padrao-default) pelo dominio escolhido pelo cliente, criando um novo arquivo de configuração com nome "dominio-escolhido"-default. Tambem cria uma pagina web html padrao.<br />
<br />
E-mail: O script adiciona as linhas de configuração do e-mail do cliente nos arquivos "virtual" e "mydomains".<br />
<br />
Após fazer as confgurações o script reinicia o DNS e o POSTFIX. (o APACHE2 é reiniciado na pagina PHP).<br />
<br />
#!/bin/bash<br />
# Leonardo<br />
#echo -n "Nome do cliente: "<br />
#read nome<br />
#echo -n "Dominio: " <br />
#read dominio<br />
#echo=${dominio:=nulo}<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$dominio'.conf";' ];then<br />
# dominio=existe<br />
# break<br />
# fi <br />
#done<br />
#<br />
#if [ $dominio != nulo ] && [ $dominio != existe ];then<br />
nome=$1<br />
dominio=$2<br />
sudo echo 'include "/etc/bind/'$dominio'.conf";' >> /etc/bind/named.conf<br />
numero=`date | cut -d ":" -f 3 | cut -d " " -f 1`<br />
novoserial=$((1000000000+$numero))<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.conf > /etc/bind/$dominio.conf<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.zone | sed s/2011061504/$novoserial/g > /etc/bind/$dominio.zone<br />
sudo /etc/init.d/bind9 restart<br />
sudo sed s/padrao/$dominio/g /etc/apache2/sites-available/padrao-default > /etc/apache2/sites-enabled/$dominio-default<br />
mkdir /var/www/$dominio<br />
sed s/dominio/$dominio/g /var/www/padrao/index.html | sed s/nome/"$nome"/g > /var/www/$dominio/index.html<br />
sudo echo ' ' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br Subdominio-'$dominio'' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'@teletec.sj.ifsc.edu.br '$dominio'' >> /etc/postfix/virtual <br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br OK' >> /etc/postfix/mydomains<br />
sudo postmap /etc/postfix/virtual<br />
sudo postmap /etc/postfix/mydomains<br />
sudo /etc/init.d/postfix restart<br />
# echo -e " * Dominio criado com sucesso!\t\t\t\t[ OK ]\n"<br />
# else<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio ja existe ou esta em branco.\n"<br />
#fi</div>Vagner.chttps://wiki.sj.ifsc.edu.br/index.php?title=Projeto_Integrador_-_2011.1_-_Teletec&diff=34798Projeto Integrador - 2011.1 - Teletec2011-07-09T18:39:28Z<p>Vagner.c: </p>
<hr />
<div>== * '''Equipe 2 : TELETEC''' ==<br />
<br />
----<br />
<br />
== INTEGRANTES TELETEC ==<br />
<br />
* '''Daniel Estefano'''; estefano.daniel@gmail.com <br />
* '''Denis Teixeira'''; denisteixeira3@gmail.com <br />
* '''Leonardo Oliveira P.'''; leonardo-op@live.com <br />
* '''Odair de Moraes'''; odairdmoraes@hotmail.com<br />
* '''Robson de Carvalho'''; rob_carvalho12@hotmail.com<br />
* '''Vagner Cordeiro.''' cordeirotelecom@gmail.com<br />
<br />
----<br />
<br />
== '''SOBRE A EMPRESA TELETEC - PROVEDORA DE ACESSO Á INTERNET:''' == <br />
<br />
A Empresa Oferece os seguintes serviços: <br />
<br />
# Conta de Usuário para cada cliente;<br />
# Conta de E-mail para cada cliente;<br />
# Uma página Web Padrão;<br />
# Instalação do Modem ADSL e do Cabeamento Estrurado;<br />
# Acesso Wirelles;<br />
<br />
== Etapas Iniciais de Configurações da Rede ==<br />
<br />
<br />
# Instalação do Sistema Operacional:Ubuntu-Server;<br />
# Definido Sistema de Arquivo, Dividido em 3 Partições: ''1 Partição Primátia, 1 Partição Secundária e uma Partição para Swap;'' <br />
# Definido nome do Domínio: teletec.sj.ifsc.edu.br;<br />
# Criado um Usuário: Tecnico;<br />
# Acesso via SSH ao Servidor Teletec.<br />
<br />
----<br />
<br />
== Gerencia de Redes: Apache, Postfix e DNS ==<br />
<br />
'''Configurações do servidor DNS:''' <br />
<br />
- Edição do Arquivo para IP Estático: '''/etc/network/interfaces''' <br />
<br />
# This file describes the network interfaces available on your system<br />
# and how to activate them. For more information, see interfaces(5).<br />
# The loopback network interface<br />
auto lo<br />
iface lo inet loopback<br />
# The primary network interface<br />
auto eth0<br />
iface eth0 inet static<br />
address 200.135.37.100<br />
netmask 255.255.255.192<br />
gateway 200.135.37.126 <br />
<br />
- Edição do Arquivo do servidor DNS '''/etc/bind/named.conf''' <br />
<br />
Indica todos os arquivos que vai fazer a configuração dele<br />
<br />
// This is the primary configuration file for the BIND DNS server named.<br />
//<br />
// Please read /usr/share/doc/bind9/README.Debian.gz for information on the <br />
// structure of BIND configuration files in Debian, *BEFORE* you customize <br />
// this configuration file.<br />
//<br />
// If you are just adding zones, please do that in /etc/bind/named.conf.local<br />
include "/etc/bind/named.conf.options";<br />
include "/etc/bind/named.conf.local";<br />
include "/etc/bind/named.conf.default-zones";<br />
include "/etc/bind/servidor.conf";<br />
include "/etc/bind/tecnico.conf";<br />
include "/etc/bind/daniel.conf";<br />
<br />
- Edição do Arquivo de servidor DNS: named.conf.local '''/etc/bind/named.conf.local'''<br />
É um arquivo padrão do BIND onde foi configurado o o nosso dominino TELETEC.<br />
<br />
//<br />
// Do any local configuration here<br />
//<br />
<br />
// Consider adding the 1918 zones here, if they are not used in your<br />
// organization<br />
//include "/etc/bind/zones.rfc1918"8;<br />
zone "teletec.sj.ifsc.edu.br." IN {<br />
type master;<br />
file "/etc/bind/teletec.zone";<br />
allow-update { none; };<br />
};<br />
<br />
- Edição do Arquivo de DNS Reverso: '''/etc/bind/37.135.200.in-addr.arpa'''<br />
O DNS Reverso resolve um endereço IP para um nome de servidor – por exemplo, ele poderia resolver 200.176.3.142 para exemplo.hipotetico.com.br.<br />
<br />
$TTL 86400<br />
@ IN SOA servidor.teletec.sj.ifsc.edu.br. root (<br />
2011061500 ;<br />
1d ;<br />
1h ;<br />
1w ; <br />
1d ;<br />
)<br />
IN NS servidor.teletec.sj.ifsc.edu.br.<br />
100 IN PTR servidor.teletec.sj.ifsc.edu.br.<br />
<br />
- Edição do Arquivo para criar um subdomínio:'''/etc/bind/teletec.zone'''<br />
Arquivo que traz todas as configurações de cada subdomínio. <br />
<br />
$TTL 86400<br />
@ IN SOA teletec.teletec.sj.ifsc.edu.br root (<br />
2011062901;<br />
3H;<br />
15M;<br />
1W;<br />
1D );<br />
IN NS teletec.teletec.sj.ifsc.edu.br.<br />
IN MX 0 mail.teletec.sj.ifsc.edu.br.<br />
localhost IN A 127.0.0.1<br />
$ORIGIN teletec.sj.ifsc.edu.br.<br />
teletec A 200.135.37.100<br />
www A 200.135.37.100<br />
mail A 200.135.37.100<br />
<br />
- '''Configuração do servidor Apache'''<br />
<br />
No servidor Apache foi feito a instalação com o comando:<br />
apt-get install apache2<br />
E nele não foi preciso fazer configuraçoẽs, nele vai ser criado uma nova nova pagina web para cada novo cliente na pasta:'' /etc/apache2/sites-enabled''' essas paginas web serão adicionadas automaticamente pelo script <br />
<br />
- '''Configuração do servidor POSTFIX'''<br />
<br />
*Primeiro foi feito a instalação com o comando:<br />
<br />
apt-get install postfix<br />
<br />
Em seguida o programa de instalação vai fazer algumas perguntas sobre a localização dos arquivos e alguns parametros <br />
<br />
== Instalação de Equipamento de Redes (Modem, Switch e Roteadores) ==<br />
<br />
'''Configurações:''' <br />
<br />
Instalação:<br />
<br />
minicom -s<br />
<br />
Configuração do Roteador Cisco 1700: <br />
<br />
* Configuração dos Dois Roteadores Utilizando a ferramenta "Minicon" (Se fosse Windows seria Hyperterminal)<br />
* Configuração dos dispositivos: Serial e Ethernet<br />
* Configuração como Protocolo PPP<br />
<br />
- ''"Configuração da porta serial":''<br />
<br />
┌─────────────[configuração]──────────────┐<br />
│ Nomes de arquivos e rotas<br />
│ Protocolos de transferência de arquivos<br />
│ Configuração da porta serial<br />
│ Modem e discagem<br />
│ Tela e teclado<br />
│ Salvar configuração como dfl<br />
│ Salvar configuração como<br />
│ Sair<br />
│ Sair do Minicom<br />
└────────────────────────────────────────┘<br />
<br />
- ''"Alteração da Porta Serial"''<br />
┌──────────────────────────────────────────────────────────┐<br />
│ A – Dispositivo Serial : /dev/ttSy0 <br />
│ B – Localização do Arquivo de Travamento : /var/lock<br />
│ C – Programa de Entrada :<br />
│ D – Programa de Saída :<br />
│ E – Bps/Paridade/Bits : 9600 8N1 <br />
│ F – Controle de Fluxo por Hardware : Não<br />
│ G – Controle de Fluxo por Software : Não<br />
│<br />
│ Alterar qual configuração?<br />
└──────────────────────────────────────────────────────────┘<br />
<br />
- ''"Salvar configuração com dfl"''<br />
<br />
- ''Configurando a Interface Serial do Roteador:''<br />
<br />
enable;<br />
configure terminal;<br />
<br />
#Para configurar a interface serial:<br />
interface serial 0;<br />
ip address 10.0.0.1/30;<br />
encapsulation ppp;<br />
exit;<br />
<br />
#Para configurar a interface ethernet:<br />
interface fastethernet 0;<br />
ip address 172.18.0.1/24;<br />
exit;<br />
exit;<br />
<br />
#Para salvar as configurações:<br />
wr;<br />
<br />
'''Radius'''<br />
<br />
Para ter acesso a rede aDSL ou pela rede sem fio será usado Radius para que os usuários sejam autenticados. O RADIUS é um sistema utilizado para prover uma autenticação centralizada em redes dial-up, VPN's (Virtual Private Network) e redes sem fio. Ele tem um modelo cliente-servidor, onde o cliente é o Network Access Server (NAS). Esse servidor é responsável por obter a informação sobre o cliente e repassá-la para o servidor RADIUS, além de interpretar a resposta, dando ou não acesso ao cliente. O servidor RADIUS é responsável por receber pedidos de conexão, autenticar o usuário e repassar ao NAS as informações necessárias para esse dar acesso ao usuário na rede. <br />
<br />
'''Arquivos configurados:''' <br />
<br />
Configurar login e senha para o cliente Radius ( /etc/freeradius<br />
/users ):<br />
<br />
“Usúario” Cleartext-Password := "senha"<br />
“Usúario” User-Password := "senha"<br />
<br />
Teste antes se seu servidor Radius está autenticando usuáriosfaça o seguinte comando no AC PPPoE (que fica em Ac-server): <br />
<br />
radtest seu_usuario sua_senha IP_do_seu_servidor_Radius 1 segredo_do_seu_servidor_Radius<br />
<br />
Configurando o Servidor PPPoe (/etc/ppp/pppoe-servers-options): <br />
<br />
require-chap<br />
auth<br />
lcp-echo-interval 10<br />
lcp-echo-failure 2<br />
ms-dns IP do seu servidor DNS<br />
netmask 255.255.255.0<br />
noipdefault<br />
debug<br />
kdebug 4<br />
plugin radius.so<br />
plugin radattr.so<br />
radius-config-file /etc/radiusclient/teletec.conf<br />
mru 1492<br />
mtu 1492<br />
<br />
Configuração do Cliente Radius ( etc/radiusclient/teletec.conf ):<br />
<br />
auth_order radius<br />
login_tries 4<br />
login_timeout 60<br />
nologin /etc/nologin<br />
issue /etc/radiusclient/issue<br />
authserver 200.135.37.100<br />
acctserver 200.135.37.100<br />
servers /etc/radiusclient/servers<br />
dictionary /etc/radiusclient/dictionary<br />
login_radius /usr/sbin/login.radius<br />
seqfile /var/run/radius.seq<br />
mapfile /etc/radiusclient/port-id-map<br />
default_realm<br />
radius_timeout 10<br />
radius_retries 3<br />
login_local /bin/login<br />
<br />
Configurando o IP do Servidor Radius ( /etc/radiusclient/servers ):<br />
<br />
200.135.37.100 testing123<br />
<br />
Integrando Radius ao Banco de Dados<br />
<br />
Primeiro procedimento, instale o pacote. <br />
<br />
apt-get install freeradius-mysql<br />
Edite o arquivo de configuração do freeradius, e descomente a seguinte linha <br />
( /etc/freeradius/radiusd.conf ): <br />
<br />
$INCLUDE sql.conf<br />
<br />
Para entrar no MySQL execute o comando: <br />
<br />
mysql -u root -p <br />
<br />
Crie uma base de dados somente para o Radius e dê ao usuário Radius a devida permissão para acesso a esta base. No shell do MySQL, execute os comandos: <br />
<br />
CREATE DATABASE radius;<br />
GRANT ALL ON radius.* TO freerad@localhost IDENTIFIED BY "senha_do_usuário_freeradius";<br />
exit;<br />
<br />
Inserindo informações na base de dados: <br />
<br />
mysql -u “usuário” -p “senha do usuário radius” “database” < /etc/freeradius/sql/mysql/schema.sql<br />
mysql -u “usuário” -p “senha do usuário radius” “database” < /etc/freeradius/sql/mysql/nas.sql<br />
<br />
Editar o arquivo /etc/freeradius/sql.conf, colocando a senha do usuário Radius: <br />
<br />
passwrod = "senha do usuário radius"<br />
<br />
E descomente a linha do mesmo arquivo ( /etc/freeradius/sql.conf ) : <br />
<br />
readclients = yes<br />
<br />
Reinicie o FreeRadius: <br />
<br />
service freeradius restart<br />
<br />
== Cabeamento Estruturado ==<br />
<br />
Atividades Concluídas:<br />
<br />
- o A central telefônica ao DSLAM<br />
- o O DSLAM ao armário de telecom da equipe, através de uma linha telefone + DSL<br />
- o armário da equipe a uma área de trabalho. <br />
- O cabeamento permitiu a conexão do modem DSL no armário de telecom.<br />
- As tomadas da área de trabalho para conexão com Telefone e o Modem ADSL.<br />
<br />
== Programação para Redes de Computadores ==<br />
<br />
'''Os Arquivos PHP (pagina Web) Encontram-se dentro da pasta: ''/var/www/teletec'''''<br />
<br />
- Edição do Arquivo '''Verificação.php''':<br />
<br />
<?<br />
session_start();<br />
$login = $_POST['login'];<br />
$senha = $_POST['senha'];<br />
if ( ( $login == "Administrador" ) && ( $senha == "orelha1234" ) ){<br />
$_SESSION['autorizado'] = $login;<br />
Header ("Location: principal.php");<br />
}else{<br />
Header ("Location: login.php");<br />
}<br />
?><br />
<br />
- Edição do Arquivo '''sair.php''':<br />
<br />
<?<br />
session_start();<br />
session_destroy();<br />
Header ("Location: login.php");<br />
?><br />
<br />
- Edição do arquivo '''principal.php''': <br />
<br />
<.?<br />
.session_start();<br />
.if (!isset($_SESSION['autorizado'])){<br />
.header ("Location: login.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Administrcao de Dominios</title><br />
<./head><br />
<.body><br />
<.p><a href="sair.php">Sair</a></p><br />
<.p></p><br />
<.p style="text-align:center;margin-left:auto;margin-right:auto;">Cliente Dominio Acao </p><br />
<br />
<.?<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$consulta = "SELECT * from clientes";<br />
$resultado = mysql_query($consulta,$conexao);<br />
while($linha = mysql_fetch_array($resultado)){<br />
$cliente = $linha['cliente'];<br />
$dominio = $linha['dominio'];<br />
.?><br />
<.form><br />
<.p style="text-align:center;margin-left:auto;margin-right:auto;"><br />
<.a name="cliente" id="cliente" href="alterar.php?id=<? echo $linha['dominio'];?>"> <?echo $.linha['cliente'];?></a> <br />
<.? echo $linha['dominio'];?> <a href="excluir.php?id=<? echo $linha['dominio'];?>"> Excluir</a></p><br />
<./form><br />
<.?<br />
.}<br />
.mysql_free_result($resultado);<br />
.mysql_close($conexao);<br />
.}<br />
.?><br />
<.p style="text-align:right;margin-left:auto;margin-right:0;"><br />
<.a href="adicionar.php"><span style="color:#ff0000">Adicionar novo dominio</span></a></p><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''mod-domínio.php''':<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$cliente = $_POST['cliente'];<br />
$dominio = $_POST['dominio'];<br />
$antigo = $_POST['antigo'];;<br />
if (empty($dominio)) {<br />
$dominio = "invalido";<br />
} <br />
<br />
if (preg_match('/^[a-z0-9]+/', $dominio)){<br />
}else{<br />
$dominio = "invalido";<br />
} <br />
<br />
$arquivo = '/etc/bind/named.conf';<br />
$linhas = array();<br />
exec("cat $arquivo",$linhas);<br />
for ($i = 0 ; $i < sizeof($linhas); $i++){<br />
if ($linhas[$i] == "include \"/etc/bind/$dominio.conf\";"){<br />
$dominio = "invalido";<br />
}<br />
}<br />
if ($dominio == "invalido"){<br />
header ("Location: alterar.php");<br />
}else{ <br />
<br />
$script = "/etc/teletec/mod-dominio.sh $antigo '$cliente' $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$deletar = "DELETE FROM clientes WHERE dominio='$antigo.teletec.sj.ifsc.edu.br'";<br />
mysql_query($deletar,$conexao);<br />
mysql_close($conexao); <br />
<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$inserir = "INSERT INTO clientes (cliente,dominio) VALUES ('$cliente','$dominio.teletec.sj.ifsc.edu.br')";<br />
mysql_query($inserir,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php"); <br />
<br />
}<br />
.}<br />
?.><br />
<br />
- Edição do Arquivo '''login.php''': <br />
<br />
.<?<br />
.session_start();<br />
.if (isset($_SESSION['autorizado'])){<br />
.Header ("Location: principal.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Hospedagem Web</title><br />
<./head><br />
<br />
<.body><br />
<.p></p><br />
<.p>Sistemas de Hospedagem de Sitios Web</p><br />
<.p></p><br />
<.form name="formTeste" action="verificacao.php" method="post"><br />
<.p>Usu&#xe1;rio:<br><br />
<.input type="text" name="login"> <br />
<.p>Senha:<br> <br />
<.input type="password" name="senha"> <br />
<.input type="submit" name="b_enviar" value="Entrar"><br />
<./form><br />
<.p></p><br />
<.?<br />
}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''Index.php''':<br />
<br />
<.?<br />
Header ("Location: login.php");<br />
.?><br />
<br />
- Edição do Arquivo '''excluir.php''':<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){ <br />
header ("Location: login.php");<br />
}else{<br />
$id=$_GET['id'];<br />
$parte1 = explode(".", $id);<br />
$antigo = $parte1[0];<br />
?.><br />
<.html><br />
<head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Excluir o cliente</title><br />
<./head><br />
<.body><br />
<.p>Voce realmente deseja excluir o cliente?</p><br />
<br />
<.p><a href="del-dominio.php?id=<?echo $antigo;?>">Sim</a> <a<br />
.href="principal.php">Nao</a></p><br />
<.p></p><br />
<?<br />
}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''del-dominio.php''':<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$dominio = $_GET['id'];<br />
$script = "/etc/teletec/del-dominio.sh $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$deletar = "DELETE FROM clientes WHERE dominio='$dominio.teletec.sj.ifsc.edu.br'";<br />
mysql_query($deletar,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php");<br />
}<br />
?.><br />
<br />
- Edição do '''Arquivo alterar.php''': <br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){ <br />
header ("Location: login.php");<br />
}else{<br />
$id=$_GET['id'];<br />
$parte1 = explode(".", $id);<br />
$antigo = $parte1[0];<br />
?.><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Alterar Dominio</title><br />
</.head><br />
<.body><br />
<.p><.a href="principal.php">Voltar </a></p><br />
<.form name="formTeste" action="mod-dominio.php" method="post"><br />
<.p>Novo nome do cliente: <br><br />
<.input type="text" name="cliente"><br />
<.p>Novo dominio: <br><br />
<.input type="text" name="dominio"><br />
<.input type="hidden" name="antigo" value="<?echo $antigo;?>"> <br />
<.input type="submit" name="b_enviar" value="Alterar"><br />
<./form><br />
<.?<br />
}<br />
?.><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''adicionar.php''':<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Adicionar Cliente</title><br />
<./head><br />
<.body><br />
<.p><.a href="principal.php">Voltar </a></p><br />
<.form name="formTeste" action="add-dominio.php" method="post"><br />
<.p>Nome do cliente: <br><br />
<.input type="text" name="cliente"><br />
<.p>Dominio: <br><br />
<.input type="text" name="dominio"><br />
<.input type="submit" name="b_enviar" value="Criar"><br />
<./form><br />
<.?<br />
.}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''add-dominio.php''':<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$cliente = $_POST['cliente'];<br />
$dominio = $_POST['dominio']; <br />
<br />
if (empty($dominio)) {<br />
$dominio = "invalido";<br />
} <br />
<br />
if (preg_match('/^[a-z0-9]+/', $dominio)){<br />
}else{<br />
$dominio = "invalido";<br />
} <br />
<br />
$arquivo = '/etc/bind/named.conf';<br />
$linhas = array();<br />
exec("cat $arquivo",$linhas);<br />
for ($i = 0 ; $i < sizeof($linhas); $i++){<br />
if ($linhas[$i] == "include \"/etc/bind/$dominio.conf\";"){<br />
$dominio = "invalido";<br />
}<br />
}<br />
if ($dominio == "invalido"){<br />
header ("Location: adicionar.php");<br />
}else{<br />
$script = "/etc/teletec/add-dominio.sh '$cliente' $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$inserir = "INSERT INTO clientes (cliente,dominio) VALUES ('$cliente','$dominio.teletec.sj.ifsc.edu.br')";<br />
mysql_query($inserir,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php");<br />
}<br />
}<br />
?.><br />
<br />
'''Os Arquivos .sh (scripts que adicionam, removem ou alteram os usuários no servidor) Encontram-se dentro da pasta: ''/etc/teletec''''' <br />
<br />
- Edição do Arquivo '''mod-dominio.sh''':<br />
Script em bash que altera o dominio do cliente (Subdominio, E-mail e Pagina WEB):<br />
<br />
O script de modificação na verdade exclui o dominio criado e cria um novo, os scripts de remover e adicionar estão juntos neste script.<br />
<br />
#!/bin/bash<br />
#Leonardo<br />
#echo -n "Dominio: "<br />
#read antigo<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$antigo'.conf";' ];then<br />
# valido=sim<br />
# break<br />
# else<br />
# valido=nao<br />
# fi<br />
#done<br />
#if [ $valido = nao ];then<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio não existe ou esta em branco.\n"<br />
# exit<br />
#fi<br />
#echo -n "Novo nome para o cliente: "<br />
#read nome<br />
#echo -n "Novo dominio: "<br />
#read dominio<br />
#echo=${dominio:=nulo}<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$dominio'.conf";' ];then<br />
# dominio=existe<br />
# break<br />
# fi<br />
#done<br />
#if [ $dominio != nulo ] && [ $dominio != existe ];then<br />
antigo=$1<br />
nome=$2<br />
dominio=$3<br />
sudo sed -i '/\/etc\/bind\/'$antigo'\.conf/Id' /etc/bind/named.conf<br />
sudo rm /etc/bind/$antigo.conf<br />
sudo rm /etc/bind/$antigo.zone<br />
sudo rm /etc/apache2/sites-enabled/$antigo-default<br />
sudo rm -r /var/www/$antigo<br />
sudo sed -i '/'$antigo'\.teletec\.sj\.ifsc\.edu\.br Subdominio-'$antigo'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$antigo'@teletec\.sj\.ifsc\.edu\.br '$antigo'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$antigo'\.teletec\.sj\.ifsc\.edu\.br OK/Id' /etc/postfix/mydomains <br />
<br />
sudo echo 'include "/etc/bind/'$dominio'.conf";' >> /etc/bind/named.conf<br />
numero=`date | cut -d ":" -f 3 | cut -d " " -f 1`<br />
novoserial=$((1000000000+$numero))<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.conf > /etc/bind/$dominio.conf<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.zone | sed s/2011061504/$novoserial/g > /etc/bind/$dominio.zone<br />
sudo /etc/init.d/bind9 restart<br />
sudo sed s/padrao/$dominio/g /etc/apache2/sites-available/padrao-default > /etc/apache2/sites-enabled/$dominio-default<br />
mkdir /var/www/$dominio<br />
sed s/dominio/$dominio/g /var/www/padrao/index.html | sed s/nome/"$nome"/g > /var/www/$dominio/index.html<br />
sudo echo ' ' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br Subdominio-'$dominio'' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'@teletec.sj.ifsc.edu.br '$dominio'' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br OK' >> /etc/postfix/mydomains<br />
sudo postmap /etc/postfix/virtual<br />
sudo postmap /etc/postfix/mydomains<br />
sudo /etc/init.d/postfix restart<br />
# echo -e " * Dominio modificado com sucesso!\t\t\t\t[ OK ]\n"<br />
# else<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio ja existe ou esta em branco.\n"<br />
#fi<br />
<br />
- Edição do Arquivo '''del-dominio.sh''':<br />
Script em bash que remove o cliente (Subdominio, E-mail e Pagina WEB):<br />
<br />
Exclui todos os arquivos de configuração criados para este cliente e retira as linhas de configuração adicionadas em arquivos como o "named.conf", "virtual" e "mydomains", por ultimo os serviçoes DNS e POSTFIX são reiniciados ( o APACHE2 é reiniciado na pagina PHP).<br />
<br />
#!/bin/bash<br />
#Leonardo<br />
#echo -n "Dominio: "<br />
#read dominio<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$dominio'.conf";' ];then<br />
dominio=$1<br />
sudo sed -i '/\/etc\/bind\/'$dominio'\.conf/Id' /etc/bind/named.conf<br />
sudo rm /etc/bind/$dominio.conf<br />
sudo rm /etc/bind/$dominio.zone<br />
sudo /etc/init.d/bind9 restart<br />
sudo rm /etc/apache2/sites-enabled/$dominio-default<br />
sudo rm -r /var/www/$dominio<br />
sudo sed -i '/'$dominio'\.teletec\.sj\.ifsc\.edu\.br Subdominio-'$dominio'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$dominio'@teletec\.sj\.ifsc\.edu\.br '$dominio'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$dominio'\.teletec\.sj\.ifsc\.edu\.br OK/Id' /etc/postfix/mydomains<br />
sudo postmap /etc/postfix/virtual<br />
sudo postmap /etc/postfix/mydomains<br />
sudo /etc/init.d/postfix restart<br />
# echo -e " * Dominio removido com sucesso!\t\t\t\t[ OK ]\n"<br />
# exit<br />
# fi<br />
#done<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio não existe ou esta em branco.\n"<br />
<br />
- Edição do Arquivo '''add-dominio.sh''': <br />
Script em bash que adiciona o cliente (Subdominio, E-mail e Pagina WEB):<br />
<br />
Sub-dominio: O script pega como base arquivos padrões ja criados e configurados ( padrao.conf e padrao.zone ), altera todas as palavras "padrao" destes arvivos pelo dominio escolhido pelo usuario e salva como "dominio-escolhido".zone e "dominio-escolhido".conf. Alem disso ele tambem inclui o caminho do arquivo de configuração ".conf" no "named.conf".<br />
<br />
Pagina-Web: Assim como no sub-dominio, o script troca as palavras "padrao" que estão em um arquivo padrao de configuração ( padrao-default) pelo dominio escolhido pelo cliente, criando um novo arquivo de configuração com nome "dominio-escolhido"-default. Tambem cria uma pagina web html padrao.<br />
<br />
E-mail: O script adiciona as linhas de configuração do e-mail do cliente nos arquivos "virtual" e "mydomains".<br />
<br />
Após fazer as confgurações o script reinicia o DNS e o POSTFIX. (o APACHE2 é reiniciado na pagina PHP).<br />
<br />
#!/bin/bash<br />
# Leonardo<br />
#echo -n "Nome do cliente: "<br />
#read nome<br />
#echo -n "Dominio: " <br />
#read dominio<br />
#echo=${dominio:=nulo}<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$dominio'.conf";' ];then<br />
# dominio=existe<br />
# break<br />
# fi <br />
#done<br />
#<br />
#if [ $dominio != nulo ] && [ $dominio != existe ];then<br />
nome=$1<br />
dominio=$2<br />
sudo echo 'include "/etc/bind/'$dominio'.conf";' >> /etc/bind/named.conf<br />
numero=`date | cut -d ":" -f 3 | cut -d " " -f 1`<br />
novoserial=$((1000000000+$numero))<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.conf > /etc/bind/$dominio.conf<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.zone | sed s/2011061504/$novoserial/g > /etc/bind/$dominio.zone<br />
sudo /etc/init.d/bind9 restart<br />
sudo sed s/padrao/$dominio/g /etc/apache2/sites-available/padrao-default > /etc/apache2/sites-enabled/$dominio-default<br />
mkdir /var/www/$dominio<br />
sed s/dominio/$dominio/g /var/www/padrao/index.html | sed s/nome/"$nome"/g > /var/www/$dominio/index.html<br />
sudo echo ' ' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br Subdominio-'$dominio'' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'@teletec.sj.ifsc.edu.br '$dominio'' >> /etc/postfix/virtual <br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br OK' >> /etc/postfix/mydomains<br />
sudo postmap /etc/postfix/virtual<br />
sudo postmap /etc/postfix/mydomains<br />
sudo /etc/init.d/postfix restart<br />
# echo -e " * Dominio criado com sucesso!\t\t\t\t[ OK ]\n"<br />
# else<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio ja existe ou esta em branco.\n"<br />
#fi</div>Vagner.chttps://wiki.sj.ifsc.edu.br/index.php?title=Projeto_Integrador_-_2011.1_-_Teletec&diff=34797Projeto Integrador - 2011.1 - Teletec2011-07-09T18:34:22Z<p>Vagner.c: </p>
<hr />
<div>== * '''Equipe 2 : TELETEC''' ==<br />
<br />
----<br />
<br />
== INTEGRANTES TELETEC ==<br />
<br />
* '''Daniel Estefano'''; estefano.daniel@gmail.com <br />
* '''Denis Teixeira'''; denisteixeira3@gmail.com <br />
* '''Leonardo Oliveira P.'''; leonardo-op@live.com <br />
* '''Odair de Moraes'''; odairdmoraes@hotmail.com<br />
* '''Robson de Carvalho'''; rob_carvalho12@hotmail.com<br />
* '''Vagner Cordeiro.''' cordeirotelecom@gmail.com<br />
<br />
----<br />
<br />
== '''SOBRE A EMPRESA TELETEC - PROVEDORA DE ACESSO Á INTERNET:''' == <br />
<br />
A Empresa Oferece os seguintes serviços: <br />
<br />
# Conta de Usuário para cada cliente;<br />
# Conta de E-mail para cada cliente;<br />
# Uma página Web Padrão;<br />
# Instalação do Modem ADSL e do Cabeamento Estrurado;<br />
# Acesso Wirelles;<br />
<br />
== Etapas Iniciais de Configurações da Rede ==<br />
<br />
<br />
# Instalação do Sistema Operacional:Ubuntu-Server;<br />
# Definido Sistema de Arquivo, Dividido em 3 Partições: ''1 Partição Primátia, 1 Partição Secundária e uma Partição para Swap;'' <br />
# Definido nome do Domínio: teletec.sj.ifsc.edu.br;<br />
# Criado um Usuário: Tecnico;<br />
# Acesso via SSH ao Servidor Teletec.<br />
<br />
----<br />
<br />
== Gerencia de Redes: Apache, Postfix e DNS ==<br />
<br />
'''Configurações do servidor DNS:''' <br />
<br />
- Edição do Arquivo para IP Estático: '''/etc/network/interfaces''' <br />
<br />
# This file describes the network interfaces available on your system<br />
# and how to activate them. For more information, see interfaces(5).<br />
# The loopback network interface<br />
auto lo<br />
iface lo inet loopback<br />
# The primary network interface<br />
auto eth0<br />
iface eth0 inet static<br />
address 200.135.37.100<br />
netmask 255.255.255.192<br />
gateway 200.135.37.126 <br />
<br />
- Edição do Arquivo do servidor DNS '''/etc/bind/named.conf''' <br />
<br />
Indica todos os arquivos que vai fazer a configuração dele<br />
<br />
// This is the primary configuration file for the BIND DNS server named.<br />
//<br />
// Please read /usr/share/doc/bind9/README.Debian.gz for information on the <br />
// structure of BIND configuration files in Debian, *BEFORE* you customize <br />
// this configuration file.<br />
//<br />
// If you are just adding zones, please do that in /etc/bind/named.conf.local<br />
include "/etc/bind/named.conf.options";<br />
include "/etc/bind/named.conf.local";<br />
include "/etc/bind/named.conf.default-zones";<br />
include "/etc/bind/servidor.conf";<br />
include "/etc/bind/tecnico.conf";<br />
include "/etc/bind/daniel.conf";<br />
<br />
- Edição do Arquivo de servidor DNS: named.conf.local '''/etc/bind/named.conf.local'''<br />
É um arquivo padrão do BIND onde foi configurado o o nosso dominino TELETEC.<br />
<br />
//<br />
// Do any local configuration here<br />
//<br />
<br />
// Consider adding the 1918 zones here, if they are not used in your<br />
// organization<br />
//include "/etc/bind/zones.rfc1918"8;<br />
zone "teletec.sj.ifsc.edu.br." IN {<br />
type master;<br />
file "/etc/bind/teletec.zone";<br />
allow-update { none; };<br />
};<br />
<br />
- Edição do Arquivo de DNS Reverso: '''/etc/bind/37.135.200.in-addr.arpa'''<br />
O DNS Reverso resolve um endereço IP para um nome de servidor – por exemplo, ele poderia resolver 200.176.3.142 para exemplo.hipotetico.com.br.<br />
<br />
$TTL 86400<br />
@ IN SOA servidor.teletec.sj.ifsc.edu.br. root (<br />
2011061500 ;<br />
1d ;<br />
1h ;<br />
1w ; <br />
1d ;<br />
)<br />
IN NS servidor.teletec.sj.ifsc.edu.br.<br />
100 IN PTR servidor.teletec.sj.ifsc.edu.br.<br />
<br />
- Edição do Arquivo para criar um subdomínio:'''/etc/bind/teletec.zone'''<br />
Arquivo que traz todas as configurações de cada subdomínio. <br />
<br />
$TTL 86400<br />
@ IN SOA teletec.teletec.sj.ifsc.edu.br root (<br />
2011062901;<br />
3H;<br />
15M;<br />
1W;<br />
1D );<br />
IN NS teletec.teletec.sj.ifsc.edu.br.<br />
IN MX 0 mail.teletec.sj.ifsc.edu.br.<br />
localhost IN A 127.0.0.1<br />
$ORIGIN teletec.sj.ifsc.edu.br.<br />
teletec A 200.135.37.100<br />
www A 200.135.37.100<br />
mail A 200.135.37.100<br />
<br />
- '''Configuração do servidor Apache'''<br />
<br />
No servidor Apache foi feito a instalação com o comando:<br />
apt-get install apache2<br />
E nele não foi preciso fazer configuraçoẽs, nele vai ser criado uma nova nova pagina web para cada novo cliente na pasta:'' /etc/apache2/sites-enabled''' essas paginas web serão adicionadas automaticamente pelo script <br />
<br />
- '''Configuração do servidor POSTFIX'''<br />
<br />
*Primeiro foi feito a instalação com o comando:<br />
<br />
apt-get install postfix<br />
<br />
Em seguida o programa de instalação vai fazer algumas perguntas sobre a localização dos arquivos e alguns parametros <br />
<br />
== Instalação de Equipamento de Redes (Modem, Switch e Roteadores) ==<br />
<br />
'''Configurações:''' <br />
<br />
Instalação:<br />
<br />
minicom -s<br />
<br />
Configuração do Roteador Cisco 1700: <br />
<br />
* Configuração dos Dois Roteadores Utilizando a ferramenta "Minicon" (Se fosse Windows seria Hyperterminal)<br />
* Configuração dos dispositivos: Serial e Ethernet<br />
* Configuração como Protocolo PPP<br />
<br />
- ''"Configuração da porta serial":''<br />
<br />
┌─────────────[configuração]──────────────┐<br />
│ Nomes de arquivos e rotas<br />
│ Protocolos de transferência de arquivos<br />
│ Configuração da porta serial<br />
│ Modem e discagem<br />
│ Tela e teclado<br />
│ Salvar configuração como dfl<br />
│ Salvar configuração como<br />
│ Sair<br />
│ Sair do Minicom<br />
└────────────────────────────────────────┘<br />
<br />
- ''"Alteração da Porta Serial"''<br />
┌──────────────────────────────────────────────────────────┐<br />
│ A – Dispositivo Serial : /dev/ttSy0 <br />
│ B – Localização do Arquivo de Travamento : /var/lock<br />
│ C – Programa de Entrada :<br />
│ D – Programa de Saída :<br />
│ E – Bps/Paridade/Bits : 9600 8N1 <br />
│ F – Controle de Fluxo por Hardware : Não<br />
│ G – Controle de Fluxo por Software : Não<br />
│<br />
│ Alterar qual configuração?<br />
└──────────────────────────────────────────────────────────┘<br />
<br />
- ''"Salvar configuração com dfl"''<br />
<br />
- ''Configurando a Interface Serial do Roteador:''<br />
<br />
enable;<br />
configure terminal;<br />
<br />
#Para configurar a interface serial:<br />
interface serial 0;<br />
ip address 10.0.0.1/30;<br />
encapsulation ppp;<br />
exit;<br />
<br />
#Para configurar a interface ethernet:<br />
interface fastethernet 0;<br />
ip address 172.18.0.1/24;<br />
exit;<br />
exit;<br />
<br />
#Para salvar as configurações:<br />
wr;<br />
<br />
'''Radius'''<br />
<br />
Para ter acesso a rede aDSL ou pela rede sem fio será usado Radius para que os usuários sejam autenticados. O RADIUS é um sistema utilizado para prover uma autenticação centralizada em redes dial-up, VPN's (Virtual Private Network) e redes sem fio. Ele tem um modelo cliente-servidor, onde o cliente é o Network Access Server (NAS). Esse servidor é responsável por obter a informação sobre o cliente e repassá-la para o servidor RADIUS, além de interpretar a resposta, dando ou não acesso ao cliente. O servidor RADIUS é responsável por receber pedidos de conexão, autenticar o usuário e repassar ao NAS as informações necessárias para esse dar acesso ao usuário na rede. <br />
<br />
'''Arquivos configurados:''' <br />
<br />
Configurar login e senha para o cliente Radius ( /etc/freeradius<br />
/users ):<br />
<br />
“Usúario” Cleartext-Password := "senha"<br />
“Usúario” User-Password := "senha"<br />
<br />
Teste antes se seu servidor Radius está autenticando usuáriosfaça o seguinte comando no AC PPPoE (que fica em Ac-server): <br />
<br />
radtest seu_usuario sua_senha IP_do_seu_servidor_Radius 1 segredo_do_seu_servidor_Radius<br />
<br />
Configurando o Servidor PPPoe (/etc/ppp/pppoe-servers-options): <br />
<br />
require-chap<br />
auth<br />
lcp-echo-interval 10<br />
lcp-echo-failure 2<br />
ms-dns IP do seu servidor DNS<br />
netmask 255.255.255.0<br />
noipdefault<br />
debug<br />
kdebug 4<br />
plugin radius.so<br />
plugin radattr.so<br />
radius-config-file /etc/radiusclient/teletec.conf<br />
mru 1492<br />
mtu 1492<br />
<br />
Configuração do Cliente Radius ( etc/radiusclient/teletec.conf ):<br />
<br />
auth_order radius<br />
login_tries 4<br />
login_timeout 60<br />
nologin /etc/nologin<br />
issue /etc/radiusclient/issue<br />
authserver 200.135.37.100<br />
acctserver 200.135.37.100<br />
servers /etc/radiusclient/servers<br />
dictionary /etc/radiusclient/dictionary<br />
login_radius /usr/sbin/login.radius<br />
seqfile /var/run/radius.seq<br />
mapfile /etc/radiusclient/port-id-map<br />
default_realm<br />
radius_timeout 10<br />
radius_retries 3<br />
login_local /bin/login<br />
<br />
Configurando o IP do Servidor Radius ( /etc/radiusclient/servers ):<br />
<br />
200.135.37.100 testing123<br />
<br />
Integrando Radius ao Banco de Dados<br />
<br />
Primeiro procedimento, instale o pacote. <br />
<br />
apt-get install freeradius-mysql<br />
Edite o arquivo de configuração do freeradius, e descomente a seguinte linha <br />
( /etc/freeradius/radiusd.conf ): <br />
<br />
$INCLUDE sql.conf<br />
<br />
Para entrar no MySQL execute o comando: <br />
<br />
mysql -u root -p <br />
<br />
Crie uma base de dados somente para o Radius e dê ao usuário Radius a devida permissão para acesso a esta base. No shell do MySQL, execute os comandos: <br />
<br />
CREATE DATABASE radius;<br />
GRANT ALL ON radius.* TO freerad@localhost IDENTIFIED BY "senha_do_usuário_freeradius";<br />
exit;<br />
<br />
Inserindo informações na base de dados: <br />
<br />
mysql -u “usuário” -p “senha do usuário radius” “database” < /etc/freeradius/sql/mysql/schema.sql<br />
mysql -u “usuário” -p “senha do usuário radius” “database” < /etc/freeradius/sql/mysql/nas.sql<br />
<br />
Editar o arquivo /etc/freeradius/sql.conf, colocando a senha do usuário Radius: <br />
<br />
passwrod = "senha do usuário radius"<br />
<br />
E descomente a linha do mesmo arquivo ( /etc/freeradius/sql.conf ) : <br />
<br />
readclients = yes<br />
<br />
Reinicie o FreeRadius: <br />
<br />
service freeradius restart<br />
<br />
== Cabeamento Estruturado ==<br />
<br />
Atividades Concluídas:<br />
<br />
- o A central telefônica ao DSLAM<br />
- o O DSLAM ao armário de telecom da equipe, através de uma linha telefone + DSL<br />
- o armário da equipe a uma área de trabalho. <br />
- O cabeamento permitiu a conexão do modem DSL no armário de telecom.<br />
- As tomadas da área de trabalho para conexão com Telefone e o Modem ADSL.<br />
<br />
== Programação para Redes de Computadores ==<br />
<br />
'''Os Arquivos PHP (pagina Web) Encontram-se dentro da pasta: ''/var/www/teletec'''''<br />
<br />
- Edição do Arquivo '''Verificação.php''':<br />
<br />
<?<br />
session_start();<br />
$login = $_POST['login'];<br />
$senha = $_POST['senha'];<br />
if ( ( $login == "Administrador" ) && ( $senha == "orelha1234" ) ){<br />
$_SESSION['autorizado'] = $login;<br />
Header ("Location: principal.php");<br />
}else{<br />
Header ("Location: login.php");<br />
}<br />
?><br />
<br />
- Edição do Arquivo '''sair.php''':<br />
<br />
<?<br />
session_start();<br />
session_destroy();<br />
Header ("Location: login.php");<br />
?><br />
<br />
- Edição do arquivo '''principal.php''': <br />
<br />
<.?<br />
.session_start();<br />
.if (!isset($_SESSION['autorizado'])){<br />
.header ("Location: login.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Administrcao de Dominios</title><br />
<./head><br />
<.body><br />
<.p><a href="sair.php">Sair</a></p><br />
<.p></p><br />
<.p style="text-align:center;margin-left:auto;margin-right:auto;">Cliente Dominio Acao </p><br />
<br />
<.?<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$consulta = "SELECT * from clientes";<br />
$resultado = mysql_query($consulta,$conexao);<br />
while($linha = mysql_fetch_array($resultado)){<br />
$cliente = $linha['cliente'];<br />
$dominio = $linha['dominio'];<br />
.?><br />
<.form><br />
<.p style="text-align:center;margin-left:auto;margin-right:auto;"><br />
<.a name="cliente" id="cliente" href="alterar.php?id=<? echo $linha['dominio'];?>"> <?echo $.linha['cliente'];?></a> <br />
<.? echo $linha['dominio'];?> <a href="excluir.php?id=<? echo $linha['dominio'];?>"> Excluir</a></p><br />
<./form><br />
<.?<br />
.}<br />
.mysql_free_result($resultado);<br />
.mysql_close($conexao);<br />
.}<br />
.?><br />
<.p style="text-align:right;margin-left:auto;margin-right:0;"><br />
<.a href="adicionar.php"><span style="color:#ff0000">Adicionar novo dominio</span></a></p><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''mod-domínio.php''':<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$cliente = $_POST['cliente'];<br />
$dominio = $_POST['dominio'];<br />
$antigo = $_POST['antigo'];;<br />
if (empty($dominio)) {<br />
$dominio = "invalido";<br />
} <br />
<br />
if (preg_match('/^[a-z0-9]+/', $dominio)){<br />
}else{<br />
$dominio = "invalido";<br />
} <br />
<br />
$arquivo = '/etc/bind/named.conf';<br />
$linhas = array();<br />
exec("cat $arquivo",$linhas);<br />
for ($i = 0 ; $i < sizeof($linhas); $i++){<br />
if ($linhas[$i] == "include \"/etc/bind/$dominio.conf\";"){<br />
$dominio = "invalido";<br />
}<br />
}<br />
if ($dominio == "invalido"){<br />
header ("Location: alterar.php");<br />
}else{ <br />
<br />
$script = "/etc/teletec/mod-dominio.sh $antigo '$cliente' $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$deletar = "DELETE FROM clientes WHERE dominio='$antigo.teletec.sj.ifsc.edu.br'";<br />
mysql_query($deletar,$conexao);<br />
mysql_close($conexao); <br />
<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$inserir = "INSERT INTO clientes (cliente,dominio) VALUES ('$cliente','$dominio.teletec.sj.ifsc.edu.br')";<br />
mysql_query($inserir,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php"); <br />
<br />
}<br />
.}<br />
?.><br />
<br />
- Edição do Arquivo '''login.php''': <br />
<br />
.<?<br />
.session_start();<br />
.if (isset($_SESSION['autorizado'])){<br />
.Header ("Location: principal.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Hospedagem Web</title><br />
<./head><br />
<br />
<.body><br />
<.p></p><br />
<.p>Sistemas de Hospedagem de Sitios Web</p><br />
<.p></p><br />
<.form name="formTeste" action="verificacao.php" method="post"><br />
<.p>Usu&#xe1;rio:<br><br />
<.input type="text" name="login"> <br />
<.p>Senha:<br> <br />
<.input type="password" name="senha"> <br />
<.input type="submit" name="b_enviar" value="Entrar"><br />
<./form><br />
<.p></p><br />
<.?<br />
}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''Index.php''':<br />
<br />
<.?<br />
Header ("Location: login.php");<br />
.?><br />
<br />
- Edição do Arquivo '''excluir.php''':<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){ <br />
header ("Location: login.php");<br />
}else{<br />
$id=$_GET['id'];<br />
$parte1 = explode(".", $id);<br />
$antigo = $parte1[0];<br />
?.><br />
<.html><br />
<head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Excluir o cliente</title><br />
<./head><br />
<.body><br />
<.p>Voce realmente deseja excluir o cliente?</p><br />
<br />
<.p><a href="del-dominio.php?id=<?echo $antigo;?>">Sim</a> <a<br />
.href="principal.php">Nao</a></p><br />
<.p></p><br />
<?<br />
}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''del-dominio.php''':<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$dominio = $_GET['id'];<br />
$script = "/etc/teletec/del-dominio.sh $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$deletar = "DELETE FROM clientes WHERE dominio='$dominio.teletec.sj.ifsc.edu.br'";<br />
mysql_query($deletar,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php");<br />
}<br />
?.><br />
<br />
- Edição do '''Arquivo alterar.php''': <br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){ <br />
header ("Location: login.php");<br />
}else{<br />
$id=$_GET['id'];<br />
$parte1 = explode(".", $id);<br />
$antigo = $parte1[0];<br />
?.><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Alterar Dominio</title><br />
</.head><br />
<.body><br />
<.p><.a href="principal.php">Voltar </a></p><br />
<.form name="formTeste" action="mod-dominio.php" method="post"><br />
<.p>Novo nome do cliente: <br><br />
<.input type="text" name="cliente"><br />
<.p>Novo dominio: <br><br />
<.input type="text" name="dominio"><br />
<.input type="hidden" name="antigo" value="<?echo $antigo;?>"> <br />
<.input type="submit" name="b_enviar" value="Alterar"><br />
<./form><br />
<.?<br />
}<br />
?.><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''adicionar.php''':<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Adicionar Cliente</title><br />
<./head><br />
<.body><br />
<.p><.a href="principal.php">Voltar </a></p><br />
<.form name="formTeste" action="add-dominio.php" method="post"><br />
<.p>Nome do cliente: <br><br />
<.input type="text" name="cliente"><br />
<.p>Dominio: <br><br />
<.input type="text" name="dominio"><br />
<.input type="submit" name="b_enviar" value="Criar"><br />
<./form><br />
<.?<br />
.}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''add-dominio.php''':<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$cliente = $_POST['cliente'];<br />
$dominio = $_POST['dominio']; <br />
<br />
if (empty($dominio)) {<br />
$dominio = "invalido";<br />
} <br />
<br />
if (preg_match('/^[a-z0-9]+/', $dominio)){<br />
}else{<br />
$dominio = "invalido";<br />
} <br />
<br />
$arquivo = '/etc/bind/named.conf';<br />
$linhas = array();<br />
exec("cat $arquivo",$linhas);<br />
for ($i = 0 ; $i < sizeof($linhas); $i++){<br />
if ($linhas[$i] == "include \"/etc/bind/$dominio.conf\";"){<br />
$dominio = "invalido";<br />
}<br />
}<br />
if ($dominio == "invalido"){<br />
header ("Location: adicionar.php");<br />
}else{<br />
$script = "/etc/teletec/add-dominio.sh '$cliente' $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$inserir = "INSERT INTO clientes (cliente,dominio) VALUES ('$cliente','$dominio.teletec.sj.ifsc.edu.br')";<br />
mysql_query($inserir,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php");<br />
}<br />
}<br />
?.><br />
<br />
'''Os Arquivos .sh (scripts que adicionam, removem ou alteram os usuários no servidor) Encontram-se dentro da pasta: ''/etc/teletec''''' <br />
<br />
- Edição do Arquivo '''mod-dominio.sh''':<br />
<br />
#!/bin/bash<br />
#Leonardo<br />
#echo -n "Dominio: "<br />
#read antigo<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$antigo'.conf";' ];then<br />
# valido=sim<br />
# break<br />
# else<br />
# valido=nao<br />
# fi<br />
#done<br />
#if [ $valido = nao ];then<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio não existe ou esta em branco.\n"<br />
# exit<br />
#fi<br />
#echo -n "Novo nome para o cliente: "<br />
#read nome<br />
#echo -n "Novo dominio: "<br />
#read dominio<br />
#echo=${dominio:=nulo}<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$dominio'.conf";' ];then<br />
# dominio=existe<br />
# break<br />
# fi<br />
#done<br />
#if [ $dominio != nulo ] && [ $dominio != existe ];then<br />
antigo=$1<br />
nome=$2<br />
dominio=$3<br />
sudo sed -i '/\/etc\/bind\/'$antigo'\.conf/Id' /etc/bind/named.conf<br />
sudo rm /etc/bind/$antigo.conf<br />
sudo rm /etc/bind/$antigo.zone<br />
sudo rm /etc/apache2/sites-enabled/$antigo-default<br />
sudo rm -r /var/www/$antigo<br />
sudo sed -i '/'$antigo'\.teletec\.sj\.ifsc\.edu\.br Subdominio-'$antigo'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$antigo'@teletec\.sj\.ifsc\.edu\.br '$antigo'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$antigo'\.teletec\.sj\.ifsc\.edu\.br OK/Id' /etc/postfix/mydomains <br />
<br />
sudo echo 'include "/etc/bind/'$dominio'.conf";' >> /etc/bind/named.conf<br />
numero=`date | cut -d ":" -f 3 | cut -d " " -f 1`<br />
novoserial=$((1000000000+$numero))<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.conf > /etc/bind/$dominio.conf<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.zone | sed s/2011061504/$novoserial/g > /etc/bind/$dominio.zone<br />
sudo /etc/init.d/bind9 restart<br />
sudo sed s/padrao/$dominio/g /etc/apache2/sites-available/padrao-default > /etc/apache2/sites-enabled/$dominio-default<br />
mkdir /var/www/$dominio<br />
sed s/dominio/$dominio/g /var/www/padrao/index.html | sed s/nome/"$nome"/g > /var/www/$dominio/index.html<br />
sudo echo ' ' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br Subdominio-'$dominio'' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'@teletec.sj.ifsc.edu.br '$dominio'' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br OK' >> /etc/postfix/mydomains<br />
sudo postmap /etc/postfix/virtual<br />
sudo postmap /etc/postfix/mydomains<br />
sudo /etc/init.d/postfix restart<br />
# echo -e " * Dominio modificado com sucesso!\t\t\t\t[ OK ]\n"<br />
# else<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio ja existe ou esta em branco.\n"<br />
#fi<br />
<br />
- Edição do Arquivo '''del-dominio.sh''':<br />
Script em bash que remove o cliente (Subdominio, E-mail e Pagina WEB):<br />
<br />
Exclui todos os arquivos de configuração criados para este cliente e retira as linhas de configuração adicionadas em arquivos como o "named.conf", "virtual" e "mydomains", por ultimo os serviçoes DNS e POSTFIX são reiniciados ( o APACHE2 é reiniciado na pagina PHP).<br />
<br />
#!/bin/bash<br />
#Leonardo<br />
#echo -n "Dominio: "<br />
#read dominio<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$dominio'.conf";' ];then<br />
dominio=$1<br />
sudo sed -i '/\/etc\/bind\/'$dominio'\.conf/Id' /etc/bind/named.conf<br />
sudo rm /etc/bind/$dominio.conf<br />
sudo rm /etc/bind/$dominio.zone<br />
sudo /etc/init.d/bind9 restart<br />
sudo rm /etc/apache2/sites-enabled/$dominio-default<br />
sudo rm -r /var/www/$dominio<br />
sudo sed -i '/'$dominio'\.teletec\.sj\.ifsc\.edu\.br Subdominio-'$dominio'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$dominio'@teletec\.sj\.ifsc\.edu\.br '$dominio'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$dominio'\.teletec\.sj\.ifsc\.edu\.br OK/Id' /etc/postfix/mydomains<br />
sudo postmap /etc/postfix/virtual<br />
sudo postmap /etc/postfix/mydomains<br />
sudo /etc/init.d/postfix restart<br />
# echo -e " * Dominio removido com sucesso!\t\t\t\t[ OK ]\n"<br />
# exit<br />
# fi<br />
#done<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio não existe ou esta em branco.\n"<br />
<br />
- Edição do Arquivo '''add-dominio.sh''': <br />
Script em bash que adiciona o cliente (Subdominio, E-mail e Pagina WEB):<br />
<br />
Sub-dominio: O script pega como base arquivos padrões ja criados e configurados ( padrao.conf e padrao.zone ), altera todas as palavras "padrao" destes arvivos pelo dominio escolhido pelo usuario e salva como "dominio-escolhido".zone e "dominio-escolhido".conf. Alem disso ele tambem inclui o caminho do arquivo de configuração ".conf" no "named.conf".<br />
<br />
Pagina-Web: Assim como no sub-dominio, o script troca as palavras "padrao" que estão em um arquivo padrao de configuração ( padrao-default) pelo dominio escolhido pelo cliente, criando um novo arquivo de configuração com nome "dominio-escolhido"-default. Tambem cria uma pagina web html padrao.<br />
<br />
E-mail: O script adiciona as linhas de configuração do e-mail do cliente nos arquivos "virtual" e "mydomains".<br />
<br />
Após fazer as confgurações o script reinicia o DNS e o POSTFIX. (o APACHE2 é reiniciado na pagina PHP).<br />
<br />
#!/bin/bash<br />
# Leonardo<br />
#echo -n "Nome do cliente: "<br />
#read nome<br />
#echo -n "Dominio: " <br />
#read dominio<br />
#echo=${dominio:=nulo}<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$dominio'.conf";' ];then<br />
# dominio=existe<br />
# break<br />
# fi <br />
#done<br />
#<br />
#if [ $dominio != nulo ] && [ $dominio != existe ];then<br />
nome=$1<br />
dominio=$2<br />
sudo echo 'include "/etc/bind/'$dominio'.conf";' >> /etc/bind/named.conf<br />
numero=`date | cut -d ":" -f 3 | cut -d " " -f 1`<br />
novoserial=$((1000000000+$numero))<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.conf > /etc/bind/$dominio.conf<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.zone | sed s/2011061504/$novoserial/g > /etc/bind/$dominio.zone<br />
sudo /etc/init.d/bind9 restart<br />
sudo sed s/padrao/$dominio/g /etc/apache2/sites-available/padrao-default > /etc/apache2/sites-enabled/$dominio-default<br />
mkdir /var/www/$dominio<br />
sed s/dominio/$dominio/g /var/www/padrao/index.html | sed s/nome/"$nome"/g > /var/www/$dominio/index.html<br />
sudo echo ' ' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br Subdominio-'$dominio'' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'@teletec.sj.ifsc.edu.br '$dominio'' >> /etc/postfix/virtual <br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br OK' >> /etc/postfix/mydomains<br />
sudo postmap /etc/postfix/virtual<br />
sudo postmap /etc/postfix/mydomains<br />
sudo /etc/init.d/postfix restart<br />
# echo -e " * Dominio criado com sucesso!\t\t\t\t[ OK ]\n"<br />
# else<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio ja existe ou esta em branco.\n"<br />
#fi</div>Vagner.chttps://wiki.sj.ifsc.edu.br/index.php?title=Projeto_Integrador_-_2011.1_-_Teletec&diff=34793Projeto Integrador - 2011.1 - Teletec2011-07-09T00:45:57Z<p>Vagner.c: /* INTEGRANTES TELETEC */</p>
<hr />
<div>== * '''Equipe 2 : TELETEC''' ==<br />
<br />
----<br />
<br />
== INTEGRANTES TELETEC ==<br />
<br />
* '''Daniel Estefano'''; estefano.daniel@gmail.com <br />
* '''Denis Teixeira'''; denisteixeira3@gmail.com <br />
* '''Leonardo Oliveira P.'''; leonardo-op@live.com <br />
* '''Odair de Moraes'''; odairdmoraes@hotmail.com<br />
* '''Robson de Carvalho'''; rob_carvalho12@hotmail.com<br />
* '''Vagner Cordeiro.''' cordeirotelecom@gmail.com<br />
<br />
----<br />
<br />
== '''SOBRE A EMPRESA TELETEC - PROVEDORA DE ACESSO Á INTERNET:''' == <br />
<br />
A Empresa Oferece os seguintes serviços: <br />
<br />
# Conta de Usuário para cada cliente;<br />
# Conta de E-mail para cada cliente;<br />
# Uma página Web Padrão;<br />
# Instalação do Modem ADSL e do Cabeamento Estrurado;<br />
# Acesso Wirelles;<br />
<br />
== Etapas Iniciais de Configurações da Rede ==<br />
<br />
<br />
# Instalação do Sistema Operacional:Ubuntu-Server;<br />
# Definido Sistema de Arquivo, Dividido em 3 Partições: ''1 Partição Primátia, 1 Partição Secundária e uma Partição para Swap;'' <br />
# Definido nome do Domínio: teletec.sj.ifsc.edu.br;<br />
# Criado um Usuário: Tecnico;<br />
# Acesso via SSH ao Servidor Teletec.<br />
<br />
----<br />
<br />
== Gerencia de Redes: Apache, Postfix e DNS ==<br />
<br />
'''Configurações do servidor DNS:''' <br />
<br />
- Edição do Arquivo para IP Estático: '''/etc/network/interfaces''' <br />
<br />
# This file describes the network interfaces available on your system<br />
# and how to activate them. For more information, see interfaces(5).<br />
# The loopback network interface<br />
auto lo<br />
iface lo inet loopback<br />
# The primary network interface<br />
auto eth0<br />
iface eth0 inet static<br />
address 200.135.37.100<br />
netmask 255.255.255.192<br />
gateway 200.135.37.126 <br />
<br />
- Edição do Arquivo do servidor DNS '''/etc/bind/named.conf''' <br />
<br />
Indica todos os arquivos que vai fazer a configuração dele<br />
<br />
// This is the primary configuration file for the BIND DNS server named.<br />
//<br />
// Please read /usr/share/doc/bind9/README.Debian.gz for information on the <br />
// structure of BIND configuration files in Debian, *BEFORE* you customize <br />
// this configuration file.<br />
//<br />
// If you are just adding zones, please do that in /etc/bind/named.conf.local<br />
include "/etc/bind/named.conf.options";<br />
include "/etc/bind/named.conf.local";<br />
include "/etc/bind/named.conf.default-zones";<br />
include "/etc/bind/servidor.conf";<br />
include "/etc/bind/tecnico.conf";<br />
include "/etc/bind/daniel.conf";<br />
<br />
- Edição do Arquivo de servidor DNS: named.conf.local '''/etc/bind/named.conf.local'''<br />
É um arquivo padrão do BIND onde foi configurado o o nosso dominino TELETEC.<br />
<br />
//<br />
// Do any local configuration here<br />
//<br />
<br />
// Consider adding the 1918 zones here, if they are not used in your<br />
// organization<br />
//include "/etc/bind/zones.rfc1918"8;<br />
zone "teletec.sj.ifsc.edu.br." IN {<br />
type master;<br />
file "/etc/bind/teletec.zone";<br />
allow-update { none; };<br />
};<br />
<br />
- Edição do Arquivo de DNS Reverso: '''/etc/bind/37.135.200.in-addr.arpa'''<br />
O DNS Reverso resolve um endereço IP para um nome de servidor – por exemplo, ele poderia resolver 200.176.3.142 para exemplo.hipotetico.com.br.<br />
<br />
$TTL 86400<br />
@ IN SOA servidor.teletec.sj.ifsc.edu.br. root (<br />
2011061500 ;<br />
1d ;<br />
1h ;<br />
1w ; <br />
1d ;<br />
)<br />
IN NS servidor.teletec.sj.ifsc.edu.br.<br />
100 IN PTR servidor.teletec.sj.ifsc.edu.br.<br />
<br />
- Edição do Arquivo para criar um subdomínio:'''/etc/bind/teletec.zone'''<br />
Arquivo que traz todas as configurações de cada subdomínio. <br />
<br />
$TTL 86400<br />
@ IN SOA teletec.teletec.sj.ifsc.edu.br root (<br />
2011062901;<br />
3H;<br />
15M;<br />
1W;<br />
1D );<br />
IN NS teletec.teletec.sj.ifsc.edu.br.<br />
IN MX 0 mail.teletec.sj.ifsc.edu.br.<br />
localhost IN A 127.0.0.1<br />
$ORIGIN teletec.sj.ifsc.edu.br.<br />
teletec A 200.135.37.100<br />
www A 200.135.37.100<br />
mail A 200.135.37.100<br />
<br />
- '''Configuração do servidor Apache'''<br />
<br />
No servidor Apache foi feito a instalação com o comando:<br />
apt-get install apache2<br />
E nele não foi preciso fazer configuraçoẽs, nele vai ser criado uma nova nova pagina web para cada novo cliente na pasta:'' /etc/apache2/sites-enabled''' essas paginas web serão adicionadas automaticamente pelo script <br />
<br />
== Instalação de Equipamento de Redes (Modem, Switch e Roteadores) ==<br />
<br />
'''Configurações:''' <br />
<br />
Instalação:<br />
<br />
minicom -s<br />
<br />
Configuração do Roteador Cisco 1700: <br />
<br />
* Configuração dos Dois Roteadores Utilizando a ferramenta "Minicon" (Se fosse Windows seria Hyperterminal)<br />
* Configuração dos dispositivos: Serial e Ethernet<br />
* Configuração como Protocolo PPP<br />
<br />
- ''"Configuração da porta serial":''<br />
<br />
┌─────────────[configuração]──────────────┐<br />
│ Nomes de arquivos e rotas<br />
│ Protocolos de transferência de arquivos<br />
│ Configuração da porta serial<br />
│ Modem e discagem<br />
│ Tela e teclado<br />
│ Salvar configuração como dfl<br />
│ Salvar configuração como<br />
│ Sair<br />
│ Sair do Minicom<br />
└────────────────────────────────────────┘<br />
<br />
- ''"Alteração da Porta Serial"''<br />
┌──────────────────────────────────────────────────────────┐<br />
│ A – Dispositivo Serial : /dev/ttSy0 <br />
│ B – Localização do Arquivo de Travamento : /var/lock<br />
│ C – Programa de Entrada :<br />
│ D – Programa de Saída :<br />
│ E – Bps/Paridade/Bits : 9600 8N1 <br />
│ F – Controle de Fluxo por Hardware : Não<br />
│ G – Controle de Fluxo por Software : Não<br />
│<br />
│ Alterar qual configuração?<br />
└──────────────────────────────────────────────────────────┘<br />
<br />
- ''"Salvar configuração com dfl"''<br />
<br />
- ''Configurando a Interface Serial do Roteador:''<br />
<br />
enable;<br />
configure terminal;<br />
<br />
#Para configurar a interface serial:<br />
interface serial 0;<br />
ip address 10.0.0.1/30;<br />
encapsulation ppp;<br />
exit;<br />
<br />
#Para configurar a interface ethernet:<br />
interface fastethernet 0;<br />
ip address 172.18.0.1/24;<br />
exit;<br />
exit;<br />
<br />
#Para salvar as configurações:<br />
wr;<br />
<br />
'''Radius'''<br />
<br />
Para ter acesso a rede aDSL ou pela rede sem fio será usado Radius para que os usuários sejam autenticados. O RADIUS é um sistema utilizado para prover uma autenticação centralizada em redes dial-up, VPN's (Virtual Private Network) e redes sem fio. Ele tem um modelo cliente-servidor, onde o cliente é o Network Access Server (NAS). Esse servidor é responsável por obter a informação sobre o cliente e repassá-la para o servidor RADIUS, além de interpretar a resposta, dando ou não acesso ao cliente. O servidor RADIUS é responsável por receber pedidos de conexão, autenticar o usuário e repassar ao NAS as informações necessárias para esse dar acesso ao usuário na rede. <br />
<br />
'''Arquivos configurados:''' <br />
<br />
Configurar login e senha para o cliente Radius ( /etc/freeradius<br />
/users ):<br />
<br />
“Usúario” Cleartext-Password := "senha"<br />
“Usúario” User-Password := "senha"<br />
<br />
Teste antes se seu servidor Radius está autenticando usuáriosfaça o seguinte comando no AC PPPoE (que fica em Ac-server): <br />
<br />
radtest seu_usuario sua_senha IP_do_seu_servidor_Radius 1 segredo_do_seu_servidor_Radius<br />
<br />
Configurando o Servidor PPPoe (/etc/ppp/pppoe-servers-options): <br />
<br />
require-chap<br />
auth<br />
lcp-echo-interval 10<br />
lcp-echo-failure 2<br />
ms-dns IP do seu servidor DNS<br />
netmask 255.255.255.0<br />
noipdefault<br />
debug<br />
kdebug 4<br />
plugin radius.so<br />
plugin radattr.so<br />
radius-config-file /etc/radiusclient/teletec.conf<br />
mru 1492<br />
mtu 1492<br />
<br />
Configuração do Cliente Radius ( etc/radiusclient/teletec.conf ):<br />
<br />
auth_order radius<br />
login_tries 4<br />
login_timeout 60<br />
nologin /etc/nologin<br />
issue /etc/radiusclient/issue<br />
authserver 200.135.37.100<br />
acctserver 200.135.37.100<br />
servers /etc/radiusclient/servers<br />
dictionary /etc/radiusclient/dictionary<br />
login_radius /usr/sbin/login.radius<br />
seqfile /var/run/radius.seq<br />
mapfile /etc/radiusclient/port-id-map<br />
default_realm<br />
radius_timeout 10<br />
radius_retries 3<br />
login_local /bin/login<br />
<br />
Configurando o IP do Servidor Radius ( /etc/radiusclient/servers ):<br />
<br />
200.135.37.100 testing123<br />
<br />
Integrando Radius ao Banco de Dados<br />
<br />
Primeiro procedimento, instale o pacote. <br />
<br />
apt-get install freeradius-mysql<br />
Edite o arquivo de configuração do freeradius, e descomente a seguinte linha <br />
( /etc/freeradius/radiusd.conf ): <br />
<br />
$INCLUDE sql.conf<br />
<br />
Para entrar no MySQL execute o comando: <br />
<br />
mysql -u root -p <br />
<br />
Crie uma base de dados somente para o Radius e dê ao usuário Radius a devida permissão para acesso a esta base. No shell do MySQL, execute os comandos: <br />
<br />
CREATE DATABASE radius;<br />
GRANT ALL ON radius.* TO freerad@localhost IDENTIFIED BY "senha_do_usuário_freeradius";<br />
exit;<br />
<br />
Inserindo informações na base de dados: <br />
<br />
mysql -u “usuário” -p “senha do usuário radius” “database” < /etc/freeradius/sql/mysql/schema.sql<br />
mysql -u “usuário” -p “senha do usuário radius” “database” < /etc/freeradius/sql/mysql/nas.sql<br />
<br />
Editar o arquivo /etc/freeradius/sql.conf, colocando a senha do usuário Radius: <br />
<br />
passwrod = "senha do usuário radius"<br />
<br />
E descomente a linha do mesmo arquivo ( /etc/freeradius/sql.conf ) : <br />
<br />
readclients = yes<br />
<br />
Reinicie o FreeRadius: <br />
<br />
service freeradius restart<br />
<br />
== Cabeamento Estruturado ==<br />
<br />
Atividades Concluídas:<br />
<br />
- o A central telefônica ao DSLAM<br />
- o O DSLAM ao armário de telecom da equipe, através de uma linha telefone + DSL<br />
- o armário da equipe a uma área de trabalho. <br />
- O cabeamento permitiu a conexão do modem DSL no armário de telecom.<br />
- As tomadas da área de trabalho para conexão com Telefone e o Modem ADSL.<br />
<br />
== Programação para Redes de Computadores ==<br />
<br />
'''Os Arquivos PHP (pagina Web) Encontram-se dentro da pasta: ''/var/www/teletec'''''<br />
<br />
- Edição do Arquivo '''Verificação.php''':<br />
<br />
<?<br />
session_start();<br />
$login = $_POST['login'];<br />
$senha = $_POST['senha'];<br />
if ( ( $login == "Administrador" ) && ( $senha == "orelha1234" ) ){<br />
$_SESSION['autorizado'] = $login;<br />
Header ("Location: principal.php");<br />
}else{<br />
Header ("Location: login.php");<br />
}<br />
?><br />
<br />
- Edição do Arquivo '''sair.php''':<br />
<br />
<?<br />
session_start();<br />
session_destroy();<br />
Header ("Location: login.php");<br />
?><br />
<br />
- Edição do arquivo '''principal.php''': <br />
<br />
<.?<br />
.session_start();<br />
.if (!isset($_SESSION['autorizado'])){<br />
.header ("Location: login.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Administrcao de Dominios</title><br />
<./head><br />
<.body><br />
<.p><a href="sair.php">Sair</a></p><br />
<.p></p><br />
<.p style="text-align:center;margin-left:auto;margin-right:auto;">Cliente Dominio Acao </p><br />
<br />
<.?<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$consulta = "SELECT * from clientes";<br />
$resultado = mysql_query($consulta,$conexao);<br />
while($linha = mysql_fetch_array($resultado)){<br />
$cliente = $linha['cliente'];<br />
$dominio = $linha['dominio'];<br />
.?><br />
<.form><br />
<.p style="text-align:center;margin-left:auto;margin-right:auto;"><br />
<.a name="cliente" id="cliente" href="alterar.php?id=<? echo $linha['dominio'];?>"> <?echo $.linha['cliente'];?></a> <br />
<.? echo $linha['dominio'];?> <a href="excluir.php?id=<? echo $linha['dominio'];?>"> Excluir</a></p><br />
<./form><br />
<.?<br />
.}<br />
.mysql_free_result($resultado);<br />
.mysql_close($conexao);<br />
.}<br />
.?><br />
<.p style="text-align:right;margin-left:auto;margin-right:0;"><br />
<.a href="adicionar.php"><span style="color:#ff0000">Adicionar novo dominio</span></a></p><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''mod-domínio.php''':<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$cliente = $_POST['cliente'];<br />
$dominio = $_POST['dominio'];<br />
$antigo = $_POST['antigo'];;<br />
if (empty($dominio)) {<br />
$dominio = "invalido";<br />
} <br />
<br />
if (preg_match('/^[a-z0-9]+/', $dominio)){<br />
}else{<br />
$dominio = "invalido";<br />
} <br />
<br />
$arquivo = '/etc/bind/named.conf';<br />
$linhas = array();<br />
exec("cat $arquivo",$linhas);<br />
for ($i = 0 ; $i < sizeof($linhas); $i++){<br />
if ($linhas[$i] == "include \"/etc/bind/$dominio.conf\";"){<br />
$dominio = "invalido";<br />
}<br />
}<br />
if ($dominio == "invalido"){<br />
header ("Location: alterar.php");<br />
}else{ <br />
<br />
$script = "/etc/teletec/mod-dominio.sh $antigo '$cliente' $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$deletar = "DELETE FROM clientes WHERE dominio='$antigo.teletec.sj.ifsc.edu.br'";<br />
mysql_query($deletar,$conexao);<br />
mysql_close($conexao); <br />
<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$inserir = "INSERT INTO clientes (cliente,dominio) VALUES ('$cliente','$dominio.teletec.sj.ifsc.edu.br')";<br />
mysql_query($inserir,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php"); <br />
<br />
}<br />
.}<br />
?.><br />
<br />
- Edição do Arquivo '''login.php''': <br />
<br />
.<?<br />
.session_start();<br />
.if (isset($_SESSION['autorizado'])){<br />
.Header ("Location: principal.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Hospedagem Web</title><br />
<./head><br />
<br />
<.body><br />
<.p></p><br />
<.p>Sistemas de Hospedagem de Sitios Web</p><br />
<.p></p><br />
<.form name="formTeste" action="verificacao.php" method="post"><br />
<.p>Usu&#xe1;rio:<br><br />
<.input type="text" name="login"> <br />
<.p>Senha:<br> <br />
<.input type="password" name="senha"> <br />
<.input type="submit" name="b_enviar" value="Entrar"><br />
<./form><br />
<.p></p><br />
<.?<br />
}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''Index.php''':<br />
<br />
<.?<br />
Header ("Location: login.php");<br />
.?><br />
<br />
- Edição do Arquivo '''excluir.php''':<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){ <br />
header ("Location: login.php");<br />
}else{<br />
$id=$_GET['id'];<br />
$parte1 = explode(".", $id);<br />
$antigo = $parte1[0];<br />
?.><br />
<.html><br />
<head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Excluir o cliente</title><br />
<./head><br />
<.body><br />
<.p>Voce realmente deseja excluir o cliente?</p><br />
<br />
<.p><a href="del-dominio.php?id=<?echo $antigo;?>">Sim</a> <a<br />
.href="principal.php">Nao</a></p><br />
<.p></p><br />
<?<br />
}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''del-dominio.php''':<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$dominio = $_GET['id'];<br />
$script = "/etc/teletec/del-dominio.sh $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$deletar = "DELETE FROM clientes WHERE dominio='$dominio.teletec.sj.ifsc.edu.br'";<br />
mysql_query($deletar,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php");<br />
}<br />
?.><br />
<br />
- Edição do '''Arquivo alterar.php''': <br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){ <br />
header ("Location: login.php");<br />
}else{<br />
$id=$_GET['id'];<br />
$parte1 = explode(".", $id);<br />
$antigo = $parte1[0];<br />
?.><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Alterar Dominio</title><br />
</.head><br />
<.body><br />
<.p><.a href="principal.php">Voltar </a></p><br />
<.form name="formTeste" action="mod-dominio.php" method="post"><br />
<.p>Novo nome do cliente: <br><br />
<.input type="text" name="cliente"><br />
<.p>Novo dominio: <br><br />
<.input type="text" name="dominio"><br />
<.input type="hidden" name="antigo" value="<?echo $antigo;?>"> <br />
<.input type="submit" name="b_enviar" value="Alterar"><br />
<./form><br />
<.?<br />
}<br />
?.><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''adicionar.php''':<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Adicionar Cliente</title><br />
<./head><br />
<.body><br />
<.p><.a href="principal.php">Voltar </a></p><br />
<.form name="formTeste" action="add-dominio.php" method="post"><br />
<.p>Nome do cliente: <br><br />
<.input type="text" name="cliente"><br />
<.p>Dominio: <br><br />
<.input type="text" name="dominio"><br />
<.input type="submit" name="b_enviar" value="Criar"><br />
<./form><br />
<.?<br />
.}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''add-dominio.php''':<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$cliente = $_POST['cliente'];<br />
$dominio = $_POST['dominio']; <br />
<br />
if (empty($dominio)) {<br />
$dominio = "invalido";<br />
} <br />
<br />
if (preg_match('/^[a-z0-9]+/', $dominio)){<br />
}else{<br />
$dominio = "invalido";<br />
} <br />
<br />
$arquivo = '/etc/bind/named.conf';<br />
$linhas = array();<br />
exec("cat $arquivo",$linhas);<br />
for ($i = 0 ; $i < sizeof($linhas); $i++){<br />
if ($linhas[$i] == "include \"/etc/bind/$dominio.conf\";"){<br />
$dominio = "invalido";<br />
}<br />
}<br />
if ($dominio == "invalido"){<br />
header ("Location: adicionar.php");<br />
}else{<br />
$script = "/etc/teletec/add-dominio.sh '$cliente' $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$inserir = "INSERT INTO clientes (cliente,dominio) VALUES ('$cliente','$dominio.teletec.sj.ifsc.edu.br')";<br />
mysql_query($inserir,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php");<br />
}<br />
}<br />
?.><br />
<br />
'''Os Arquivos .sh (scripts que adicionam, removem ou alteram os usuários no servidor) Encontram-se dentro da pasta: ''/etc/teletec''''' <br />
<br />
- Edição do Arquivo '''mod-dominio.sh''':<br />
<br />
#!/bin/bash<br />
#Leonardo<br />
#echo -n "Dominio: "<br />
#read antigo<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$antigo'.conf";' ];then<br />
# valido=sim<br />
# break<br />
# else<br />
# valido=nao<br />
# fi<br />
#done<br />
#if [ $valido = nao ];then<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio não existe ou esta em branco.\n"<br />
# exit<br />
#fi<br />
#echo -n "Novo nome para o cliente: "<br />
#read nome<br />
#echo -n "Novo dominio: "<br />
#read dominio<br />
#echo=${dominio:=nulo}<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$dominio'.conf";' ];then<br />
# dominio=existe<br />
# break<br />
# fi<br />
#done<br />
#if [ $dominio != nulo ] && [ $dominio != existe ];then<br />
antigo=$1<br />
nome=$2<br />
dominio=$3<br />
sudo sed -i '/\/etc\/bind\/'$antigo'\.conf/Id' /etc/bind/named.conf<br />
sudo rm /etc/bind/$antigo.conf<br />
sudo rm /etc/bind/$antigo.zone<br />
sudo rm /etc/apache2/sites-enabled/$antigo-default<br />
sudo rm -r /var/www/$antigo<br />
sudo sed -i '/'$antigo'\.teletec\.sj\.ifsc\.edu\.br Subdominio-'$antigo'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$antigo'@teletec\.sj\.ifsc\.edu\.br '$antigo'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$antigo'\.teletec\.sj\.ifsc\.edu\.br OK/Id' /etc/postfix/mydomains <br />
<br />
sudo echo 'include "/etc/bind/'$dominio'.conf";' >> /etc/bind/named.conf<br />
numero=`date | cut -d ":" -f 3 | cut -d " " -f 1`<br />
novoserial=$((1000000000+$numero))<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.conf > /etc/bind/$dominio.conf<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.zone | sed s/2011061504/$novoserial/g > /etc/bind/$dominio.zone<br />
sudo /etc/init.d/bind9 restart<br />
sudo sed s/padrao/$dominio/g /etc/apache2/sites-available/padrao-default > /etc/apache2/sites-enabled/$dominio-default<br />
mkdir /var/www/$dominio<br />
sed s/dominio/$dominio/g /var/www/padrao/index.html | sed s/nome/"$nome"/g > /var/www/$dominio/index.html<br />
sudo echo ' ' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br Subdominio-'$dominio'' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'@teletec.sj.ifsc.edu.br '$dominio'' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br OK' >> /etc/postfix/mydomains<br />
sudo postmap /etc/postfix/virtual<br />
sudo postmap /etc/postfix/mydomains<br />
sudo /etc/init.d/postfix restart<br />
# echo -e " * Dominio modificado com sucesso!\t\t\t\t[ OK ]\n"<br />
# else<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio ja existe ou esta em branco.\n"<br />
#fi<br />
<br />
- Edição do Arquivo '''del-dominio.sh''':<br />
Script em bash que remove o cliente (Subdominio, E-mail e Pagina WEB):<br />
<br />
Exclui todos os arquivos de configuração criados para este cliente e retira as linhas de configuração adicionadas em arquivos como o "named.conf", "virtual" e "mydomains", por ultimo os serviçoes DNS e POSTFIX são reiniciados ( o APACHE2 é reiniciado na pagina PHP).<br />
<br />
#!/bin/bash<br />
#Leonardo<br />
#echo -n "Dominio: "<br />
#read dominio<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$dominio'.conf";' ];then<br />
dominio=$1<br />
sudo sed -i '/\/etc\/bind\/'$dominio'\.conf/Id' /etc/bind/named.conf<br />
sudo rm /etc/bind/$dominio.conf<br />
sudo rm /etc/bind/$dominio.zone<br />
sudo /etc/init.d/bind9 restart<br />
sudo rm /etc/apache2/sites-enabled/$dominio-default<br />
sudo rm -r /var/www/$dominio<br />
sudo sed -i '/'$dominio'\.teletec\.sj\.ifsc\.edu\.br Subdominio-'$dominio'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$dominio'@teletec\.sj\.ifsc\.edu\.br '$dominio'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$dominio'\.teletec\.sj\.ifsc\.edu\.br OK/Id' /etc/postfix/mydomains<br />
sudo postmap /etc/postfix/virtual<br />
sudo postmap /etc/postfix/mydomains<br />
sudo /etc/init.d/postfix restart<br />
# echo -e " * Dominio removido com sucesso!\t\t\t\t[ OK ]\n"<br />
# exit<br />
# fi<br />
#done<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio não existe ou esta em branco.\n"<br />
<br />
- Edição do Arquivo '''add-dominio.sh''': <br />
<br />
#!/bin/bash<br />
# Leonardo<br />
#echo -n "Nome do cliente: "<br />
#read nome<br />
#echo -n "Dominio: " <br />
#read dominio<br />
#echo=${dominio:=nulo}<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$dominio'.conf";' ];then<br />
# dominio=existe<br />
# break<br />
# fi <br />
#done<br />
#<br />
#if [ $dominio != nulo ] && [ $dominio != existe ];then<br />
nome=$1<br />
dominio=$2<br />
sudo echo 'include "/etc/bind/'$dominio'.conf";' >> /etc/bind/named.conf<br />
numero=`date | cut -d ":" -f 3 | cut -d " " -f 1`<br />
novoserial=$((1000000000+$numero))<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.conf > /etc/bind/$dominio.conf<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.zone | sed s/2011061504/$novoserial/g > /etc/bind/$dominio.zone<br />
sudo /etc/init.d/bind9 restart<br />
sudo sed s/padrao/$dominio/g /etc/apache2/sites-available/padrao-default > /etc/apache2/sites-enabled/$dominio-default<br />
mkdir /var/www/$dominio<br />
sed s/dominio/$dominio/g /var/www/padrao/index.html | sed s/nome/"$nome"/g > /var/www/$dominio/index.html<br />
sudo echo ' ' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br Subdominio-'$dominio'' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'@teletec.sj.ifsc.edu.br '$dominio'' >> /etc/postfix/virtual <br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br OK' >> /etc/postfix/mydomains<br />
sudo postmap /etc/postfix/virtual<br />
sudo postmap /etc/postfix/mydomains<br />
sudo /etc/init.d/postfix restart<br />
# echo -e " * Dominio criado com sucesso!\t\t\t\t[ OK ]\n"<br />
# else<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio ja existe ou esta em branco.\n"<br />
#fi</div>Vagner.chttps://wiki.sj.ifsc.edu.br/index.php?title=Projeto_Integrador_-_2011.1_-_Teletec&diff=34792Projeto Integrador - 2011.1 - Teletec2011-07-09T00:44:16Z<p>Vagner.c: /* Instalação de Equipamento de Redes (Modem, Switch e Roteadores) */</p>
<hr />
<div>== * '''Equipe 2 : TELETEC''' ==<br />
<br />
----<br />
<br />
== INTEGRANTES TELETEC ==<br />
<br />
* '''Daniel Estefano'''; estefano.daniel@gmail.com <br />
* '''Denis Teixeira'''; denisteixeira3@gmail.com <br />
* '''Leonardo Oliveira P.'''; leonardo-op@live.com <br />
* '''Odair de Moraes'''; odairdmoraes@hotmail.com<br />
* '''Robson de Carvalho'''; rob_carvalho12@hotmail.com<br />
* '''Vagner Cordeiro.''' cordeirotelecom@gmail.com<br />
<br />
----<br />
<br />
'''EMPRESA TELETEC - PROVEDOR DE ACESSO Á INTERNET:'''<br />
<br />
A Empresa Oferece os seguintes serviços: <br />
<br />
# Conta de Usuário para cada cliente;<br />
# Conta de E-mail para cada cliente;<br />
# Uma página Web Padrão;<br />
# Instalação do Modem ADSL e do Cabeamento Estrurado;<br />
# Acesso Wirelles;<br />
<br />
<br />
== Etapas Iniciais de Configurações da Rede ==<br />
<br />
<br />
# Instalação do Sistema Operacional:Ubuntu-Server;<br />
# Definido Sistema de Arquivo, Dividido em 3 Partições: ''1 Partição Primátia, 1 Partição Secundária e uma Partição para Swap;'' <br />
# Definido nome do Domínio: teletec.sj.ifsc.edu.br;<br />
# Criado um Usuário: Tecnico;<br />
# Acesso via SSH ao Servidor Teletec.<br />
<br />
----<br />
<br />
== Gerencia de Redes: Apache, Postfix e DNS ==<br />
<br />
'''Configurações do servidor DNS:''' <br />
<br />
- Edição do Arquivo para IP Estático: '''/etc/network/interfaces''' <br />
<br />
# This file describes the network interfaces available on your system<br />
# and how to activate them. For more information, see interfaces(5).<br />
# The loopback network interface<br />
auto lo<br />
iface lo inet loopback<br />
# The primary network interface<br />
auto eth0<br />
iface eth0 inet static<br />
address 200.135.37.100<br />
netmask 255.255.255.192<br />
gateway 200.135.37.126 <br />
<br />
- Edição do Arquivo do servidor DNS '''/etc/bind/named.conf''' <br />
<br />
Indica todos os arquivos que vai fazer a configuração dele<br />
<br />
// This is the primary configuration file for the BIND DNS server named.<br />
//<br />
// Please read /usr/share/doc/bind9/README.Debian.gz for information on the <br />
// structure of BIND configuration files in Debian, *BEFORE* you customize <br />
// this configuration file.<br />
//<br />
// If you are just adding zones, please do that in /etc/bind/named.conf.local<br />
include "/etc/bind/named.conf.options";<br />
include "/etc/bind/named.conf.local";<br />
include "/etc/bind/named.conf.default-zones";<br />
include "/etc/bind/servidor.conf";<br />
include "/etc/bind/tecnico.conf";<br />
include "/etc/bind/daniel.conf";<br />
<br />
- Edição do Arquivo de servidor DNS: named.conf.local '''/etc/bind/named.conf.local'''<br />
É um arquivo padrão do BIND onde foi configurado o o nosso dominino TELETEC.<br />
<br />
//<br />
// Do any local configuration here<br />
//<br />
<br />
// Consider adding the 1918 zones here, if they are not used in your<br />
// organization<br />
//include "/etc/bind/zones.rfc1918"8;<br />
zone "teletec.sj.ifsc.edu.br." IN {<br />
type master;<br />
file "/etc/bind/teletec.zone";<br />
allow-update { none; };<br />
};<br />
<br />
- Edição do Arquivo de DNS Reverso: '''/etc/bind/37.135.200.in-addr.arpa'''<br />
O DNS Reverso resolve um endereço IP para um nome de servidor – por exemplo, ele poderia resolver 200.176.3.142 para exemplo.hipotetico.com.br.<br />
<br />
$TTL 86400<br />
@ IN SOA servidor.teletec.sj.ifsc.edu.br. root (<br />
2011061500 ;<br />
1d ;<br />
1h ;<br />
1w ; <br />
1d ;<br />
)<br />
IN NS servidor.teletec.sj.ifsc.edu.br.<br />
100 IN PTR servidor.teletec.sj.ifsc.edu.br.<br />
<br />
- Edição do Arquivo para criar um subdomínio:'''/etc/bind/teletec.zone'''<br />
Arquivo que traz todas as configurações de cada subdomínio. <br />
<br />
$TTL 86400<br />
@ IN SOA teletec.teletec.sj.ifsc.edu.br root (<br />
2011062901;<br />
3H;<br />
15M;<br />
1W;<br />
1D );<br />
IN NS teletec.teletec.sj.ifsc.edu.br.<br />
IN MX 0 mail.teletec.sj.ifsc.edu.br.<br />
localhost IN A 127.0.0.1<br />
$ORIGIN teletec.sj.ifsc.edu.br.<br />
teletec A 200.135.37.100<br />
www A 200.135.37.100<br />
mail A 200.135.37.100<br />
<br />
- '''Configuração do servidor Apache'''<br />
<br />
No servidor Apache foi feito a instalação com o comando:<br />
apt-get install apache2<br />
E nele não foi preciso fazer configuraçoẽs, nele vai ser criado uma nova nova pagina web para cada novo cliente na pasta:'' /etc/apache2/sites-enabled''' essas paginas web serão adicionadas automaticamente pelo script <br />
<br />
== Instalação de Equipamento de Redes (Modem, Switch e Roteadores) ==<br />
<br />
'''Configurações:''' <br />
<br />
Instalação:<br />
<br />
minicom -s<br />
<br />
Configuração do Roteador Cisco 1700: <br />
<br />
* Configuração dos Dois Roteadores Utilizando a ferramenta "Minicon" (Se fosse Windows seria Hyperterminal)<br />
* Configuração dos dispositivos: Serial e Ethernet<br />
* Configuração como Protocolo PPP<br />
<br />
- ''"Configuração da porta serial":''<br />
<br />
┌─────────────[configuração]──────────────┐<br />
│ Nomes de arquivos e rotas<br />
│ Protocolos de transferência de arquivos<br />
│ Configuração da porta serial<br />
│ Modem e discagem<br />
│ Tela e teclado<br />
│ Salvar configuração como dfl<br />
│ Salvar configuração como<br />
│ Sair<br />
│ Sair do Minicom<br />
└────────────────────────────────────────┘<br />
<br />
- ''"Alteração da Porta Serial"''<br />
┌──────────────────────────────────────────────────────────┐<br />
│ A – Dispositivo Serial : /dev/ttSy0 <br />
│ B – Localização do Arquivo de Travamento : /var/lock<br />
│ C – Programa de Entrada :<br />
│ D – Programa de Saída :<br />
│ E – Bps/Paridade/Bits : 9600 8N1 <br />
│ F – Controle de Fluxo por Hardware : Não<br />
│ G – Controle de Fluxo por Software : Não<br />
│<br />
│ Alterar qual configuração?<br />
└──────────────────────────────────────────────────────────┘<br />
<br />
- ''"Salvar configuração com dfl"''<br />
<br />
- ''Configurando a Interface Serial do Roteador:''<br />
<br />
enable;<br />
configure terminal;<br />
<br />
#Para configurar a interface serial:<br />
interface serial 0;<br />
ip address 10.0.0.1/30;<br />
encapsulation ppp;<br />
exit;<br />
<br />
#Para configurar a interface ethernet:<br />
interface fastethernet 0;<br />
ip address 172.18.0.1/24;<br />
exit;<br />
exit;<br />
<br />
#Para salvar as configurações:<br />
wr;<br />
<br />
'''Radius'''<br />
<br />
Para ter acesso a rede aDSL ou pela rede sem fio será usado Radius para que os usuários sejam autenticados. O RADIUS é um sistema utilizado para prover uma autenticação centralizada em redes dial-up, VPN's (Virtual Private Network) e redes sem fio. Ele tem um modelo cliente-servidor, onde o cliente é o Network Access Server (NAS). Esse servidor é responsável por obter a informação sobre o cliente e repassá-la para o servidor RADIUS, além de interpretar a resposta, dando ou não acesso ao cliente. O servidor RADIUS é responsável por receber pedidos de conexão, autenticar o usuário e repassar ao NAS as informações necessárias para esse dar acesso ao usuário na rede. <br />
<br />
'''Arquivos configurados:''' <br />
<br />
Configurar login e senha para o cliente Radius ( /etc/freeradius<br />
/users ):<br />
<br />
“Usúario” Cleartext-Password := "senha"<br />
“Usúario” User-Password := "senha"<br />
<br />
Teste antes se seu servidor Radius está autenticando usuáriosfaça o seguinte comando no AC PPPoE (que fica em Ac-server): <br />
<br />
radtest seu_usuario sua_senha IP_do_seu_servidor_Radius 1 segredo_do_seu_servidor_Radius<br />
<br />
Configurando o Servidor PPPoe (/etc/ppp/pppoe-servers-options): <br />
<br />
require-chap<br />
auth<br />
lcp-echo-interval 10<br />
lcp-echo-failure 2<br />
ms-dns IP do seu servidor DNS<br />
netmask 255.255.255.0<br />
noipdefault<br />
debug<br />
kdebug 4<br />
plugin radius.so<br />
plugin radattr.so<br />
radius-config-file /etc/radiusclient/teletec.conf<br />
mru 1492<br />
mtu 1492<br />
<br />
Configuração do Cliente Radius ( etc/radiusclient/teletec.conf ):<br />
<br />
auth_order radius<br />
login_tries 4<br />
login_timeout 60<br />
nologin /etc/nologin<br />
issue /etc/radiusclient/issue<br />
authserver 200.135.37.100<br />
acctserver 200.135.37.100<br />
servers /etc/radiusclient/servers<br />
dictionary /etc/radiusclient/dictionary<br />
login_radius /usr/sbin/login.radius<br />
seqfile /var/run/radius.seq<br />
mapfile /etc/radiusclient/port-id-map<br />
default_realm<br />
radius_timeout 10<br />
radius_retries 3<br />
login_local /bin/login<br />
<br />
Configurando o IP do Servidor Radius ( /etc/radiusclient/servers ):<br />
<br />
200.135.37.100 testing123<br />
<br />
Integrando Radius ao Banco de Dados<br />
<br />
Primeiro procedimento, instale o pacote. <br />
<br />
apt-get install freeradius-mysql<br />
Edite o arquivo de configuração do freeradius, e descomente a seguinte linha <br />
( /etc/freeradius/radiusd.conf ): <br />
<br />
$INCLUDE sql.conf<br />
<br />
Para entrar no MySQL execute o comando: <br />
<br />
mysql -u root -p <br />
<br />
Crie uma base de dados somente para o Radius e dê ao usuário Radius a devida permissão para acesso a esta base. No shell do MySQL, execute os comandos: <br />
<br />
CREATE DATABASE radius;<br />
GRANT ALL ON radius.* TO freerad@localhost IDENTIFIED BY "senha_do_usuário_freeradius";<br />
exit;<br />
<br />
Inserindo informações na base de dados: <br />
<br />
mysql -u “usuário” -p “senha do usuário radius” “database” < /etc/freeradius/sql/mysql/schema.sql<br />
mysql -u “usuário” -p “senha do usuário radius” “database” < /etc/freeradius/sql/mysql/nas.sql<br />
<br />
Editar o arquivo /etc/freeradius/sql.conf, colocando a senha do usuário Radius: <br />
<br />
passwrod = "senha do usuário radius"<br />
<br />
E descomente a linha do mesmo arquivo ( /etc/freeradius/sql.conf ) : <br />
<br />
readclients = yes<br />
<br />
Reinicie o FreeRadius: <br />
<br />
service freeradius restart<br />
<br />
== Cabeamento Estruturado ==<br />
<br />
Atividades Concluídas:<br />
<br />
- o A central telefônica ao DSLAM<br />
- o O DSLAM ao armário de telecom da equipe, através de uma linha telefone + DSL<br />
- o armário da equipe a uma área de trabalho. <br />
- O cabeamento permitiu a conexão do modem DSL no armário de telecom.<br />
- As tomadas da área de trabalho para conexão com Telefone e o Modem ADSL.<br />
<br />
== Programação para Redes de Computadores ==<br />
<br />
'''Os Arquivos PHP (pagina Web) Encontram-se dentro da pasta: ''/var/www/teletec'''''<br />
<br />
- Edição do Arquivo '''Verificação.php''':<br />
<br />
<?<br />
session_start();<br />
$login = $_POST['login'];<br />
$senha = $_POST['senha'];<br />
if ( ( $login == "Administrador" ) && ( $senha == "orelha1234" ) ){<br />
$_SESSION['autorizado'] = $login;<br />
Header ("Location: principal.php");<br />
}else{<br />
Header ("Location: login.php");<br />
}<br />
?><br />
<br />
- Edição do Arquivo '''sair.php''':<br />
<br />
<?<br />
session_start();<br />
session_destroy();<br />
Header ("Location: login.php");<br />
?><br />
<br />
- Edição do arquivo '''principal.php''': <br />
<br />
<.?<br />
.session_start();<br />
.if (!isset($_SESSION['autorizado'])){<br />
.header ("Location: login.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Administrcao de Dominios</title><br />
<./head><br />
<.body><br />
<.p><a href="sair.php">Sair</a></p><br />
<.p></p><br />
<.p style="text-align:center;margin-left:auto;margin-right:auto;">Cliente Dominio Acao </p><br />
<br />
<.?<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$consulta = "SELECT * from clientes";<br />
$resultado = mysql_query($consulta,$conexao);<br />
while($linha = mysql_fetch_array($resultado)){<br />
$cliente = $linha['cliente'];<br />
$dominio = $linha['dominio'];<br />
.?><br />
<.form><br />
<.p style="text-align:center;margin-left:auto;margin-right:auto;"><br />
<.a name="cliente" id="cliente" href="alterar.php?id=<? echo $linha['dominio'];?>"> <?echo $.linha['cliente'];?></a> <br />
<.? echo $linha['dominio'];?> <a href="excluir.php?id=<? echo $linha['dominio'];?>"> Excluir</a></p><br />
<./form><br />
<.?<br />
.}<br />
.mysql_free_result($resultado);<br />
.mysql_close($conexao);<br />
.}<br />
.?><br />
<.p style="text-align:right;margin-left:auto;margin-right:0;"><br />
<.a href="adicionar.php"><span style="color:#ff0000">Adicionar novo dominio</span></a></p><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''mod-domínio.php''':<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$cliente = $_POST['cliente'];<br />
$dominio = $_POST['dominio'];<br />
$antigo = $_POST['antigo'];;<br />
if (empty($dominio)) {<br />
$dominio = "invalido";<br />
} <br />
<br />
if (preg_match('/^[a-z0-9]+/', $dominio)){<br />
}else{<br />
$dominio = "invalido";<br />
} <br />
<br />
$arquivo = '/etc/bind/named.conf';<br />
$linhas = array();<br />
exec("cat $arquivo",$linhas);<br />
for ($i = 0 ; $i < sizeof($linhas); $i++){<br />
if ($linhas[$i] == "include \"/etc/bind/$dominio.conf\";"){<br />
$dominio = "invalido";<br />
}<br />
}<br />
if ($dominio == "invalido"){<br />
header ("Location: alterar.php");<br />
}else{ <br />
<br />
$script = "/etc/teletec/mod-dominio.sh $antigo '$cliente' $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$deletar = "DELETE FROM clientes WHERE dominio='$antigo.teletec.sj.ifsc.edu.br'";<br />
mysql_query($deletar,$conexao);<br />
mysql_close($conexao); <br />
<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$inserir = "INSERT INTO clientes (cliente,dominio) VALUES ('$cliente','$dominio.teletec.sj.ifsc.edu.br')";<br />
mysql_query($inserir,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php"); <br />
<br />
}<br />
.}<br />
?.><br />
<br />
- Edição do Arquivo '''login.php''': <br />
<br />
.<?<br />
.session_start();<br />
.if (isset($_SESSION['autorizado'])){<br />
.Header ("Location: principal.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Hospedagem Web</title><br />
<./head><br />
<br />
<.body><br />
<.p></p><br />
<.p>Sistemas de Hospedagem de Sitios Web</p><br />
<.p></p><br />
<.form name="formTeste" action="verificacao.php" method="post"><br />
<.p>Usu&#xe1;rio:<br><br />
<.input type="text" name="login"> <br />
<.p>Senha:<br> <br />
<.input type="password" name="senha"> <br />
<.input type="submit" name="b_enviar" value="Entrar"><br />
<./form><br />
<.p></p><br />
<.?<br />
}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''Index.php''':<br />
<br />
<.?<br />
Header ("Location: login.php");<br />
.?><br />
<br />
- Edição do Arquivo '''excluir.php''':<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){ <br />
header ("Location: login.php");<br />
}else{<br />
$id=$_GET['id'];<br />
$parte1 = explode(".", $id);<br />
$antigo = $parte1[0];<br />
?.><br />
<.html><br />
<head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Excluir o cliente</title><br />
<./head><br />
<.body><br />
<.p>Voce realmente deseja excluir o cliente?</p><br />
<br />
<.p><a href="del-dominio.php?id=<?echo $antigo;?>">Sim</a> <a<br />
.href="principal.php">Nao</a></p><br />
<.p></p><br />
<?<br />
}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''del-dominio.php''':<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$dominio = $_GET['id'];<br />
$script = "/etc/teletec/del-dominio.sh $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$deletar = "DELETE FROM clientes WHERE dominio='$dominio.teletec.sj.ifsc.edu.br'";<br />
mysql_query($deletar,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php");<br />
}<br />
?.><br />
<br />
- Edição do '''Arquivo alterar.php''': <br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){ <br />
header ("Location: login.php");<br />
}else{<br />
$id=$_GET['id'];<br />
$parte1 = explode(".", $id);<br />
$antigo = $parte1[0];<br />
?.><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Alterar Dominio</title><br />
</.head><br />
<.body><br />
<.p><.a href="principal.php">Voltar </a></p><br />
<.form name="formTeste" action="mod-dominio.php" method="post"><br />
<.p>Novo nome do cliente: <br><br />
<.input type="text" name="cliente"><br />
<.p>Novo dominio: <br><br />
<.input type="text" name="dominio"><br />
<.input type="hidden" name="antigo" value="<?echo $antigo;?>"> <br />
<.input type="submit" name="b_enviar" value="Alterar"><br />
<./form><br />
<.?<br />
}<br />
?.><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''adicionar.php''':<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Adicionar Cliente</title><br />
<./head><br />
<.body><br />
<.p><.a href="principal.php">Voltar </a></p><br />
<.form name="formTeste" action="add-dominio.php" method="post"><br />
<.p>Nome do cliente: <br><br />
<.input type="text" name="cliente"><br />
<.p>Dominio: <br><br />
<.input type="text" name="dominio"><br />
<.input type="submit" name="b_enviar" value="Criar"><br />
<./form><br />
<.?<br />
.}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''add-dominio.php''':<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$cliente = $_POST['cliente'];<br />
$dominio = $_POST['dominio']; <br />
<br />
if (empty($dominio)) {<br />
$dominio = "invalido";<br />
} <br />
<br />
if (preg_match('/^[a-z0-9]+/', $dominio)){<br />
}else{<br />
$dominio = "invalido";<br />
} <br />
<br />
$arquivo = '/etc/bind/named.conf';<br />
$linhas = array();<br />
exec("cat $arquivo",$linhas);<br />
for ($i = 0 ; $i < sizeof($linhas); $i++){<br />
if ($linhas[$i] == "include \"/etc/bind/$dominio.conf\";"){<br />
$dominio = "invalido";<br />
}<br />
}<br />
if ($dominio == "invalido"){<br />
header ("Location: adicionar.php");<br />
}else{<br />
$script = "/etc/teletec/add-dominio.sh '$cliente' $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$inserir = "INSERT INTO clientes (cliente,dominio) VALUES ('$cliente','$dominio.teletec.sj.ifsc.edu.br')";<br />
mysql_query($inserir,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php");<br />
}<br />
}<br />
?.><br />
<br />
'''Os Arquivos .sh (scripts que adicionam, removem ou alteram os usuários no servidor) Encontram-se dentro da pasta: ''/etc/teletec''''' <br />
<br />
- Edição do Arquivo '''mod-dominio.sh''':<br />
<br />
#!/bin/bash<br />
#Leonardo<br />
#echo -n "Dominio: "<br />
#read antigo<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$antigo'.conf";' ];then<br />
# valido=sim<br />
# break<br />
# else<br />
# valido=nao<br />
# fi<br />
#done<br />
#if [ $valido = nao ];then<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio não existe ou esta em branco.\n"<br />
# exit<br />
#fi<br />
#echo -n "Novo nome para o cliente: "<br />
#read nome<br />
#echo -n "Novo dominio: "<br />
#read dominio<br />
#echo=${dominio:=nulo}<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$dominio'.conf";' ];then<br />
# dominio=existe<br />
# break<br />
# fi<br />
#done<br />
#if [ $dominio != nulo ] && [ $dominio != existe ];then<br />
antigo=$1<br />
nome=$2<br />
dominio=$3<br />
sudo sed -i '/\/etc\/bind\/'$antigo'\.conf/Id' /etc/bind/named.conf<br />
sudo rm /etc/bind/$antigo.conf<br />
sudo rm /etc/bind/$antigo.zone<br />
sudo rm /etc/apache2/sites-enabled/$antigo-default<br />
sudo rm -r /var/www/$antigo<br />
sudo sed -i '/'$antigo'\.teletec\.sj\.ifsc\.edu\.br Subdominio-'$antigo'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$antigo'@teletec\.sj\.ifsc\.edu\.br '$antigo'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$antigo'\.teletec\.sj\.ifsc\.edu\.br OK/Id' /etc/postfix/mydomains <br />
<br />
sudo echo 'include "/etc/bind/'$dominio'.conf";' >> /etc/bind/named.conf<br />
numero=`date | cut -d ":" -f 3 | cut -d " " -f 1`<br />
novoserial=$((1000000000+$numero))<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.conf > /etc/bind/$dominio.conf<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.zone | sed s/2011061504/$novoserial/g > /etc/bind/$dominio.zone<br />
sudo /etc/init.d/bind9 restart<br />
sudo sed s/padrao/$dominio/g /etc/apache2/sites-available/padrao-default > /etc/apache2/sites-enabled/$dominio-default<br />
mkdir /var/www/$dominio<br />
sed s/dominio/$dominio/g /var/www/padrao/index.html | sed s/nome/"$nome"/g > /var/www/$dominio/index.html<br />
sudo echo ' ' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br Subdominio-'$dominio'' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'@teletec.sj.ifsc.edu.br '$dominio'' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br OK' >> /etc/postfix/mydomains<br />
sudo postmap /etc/postfix/virtual<br />
sudo postmap /etc/postfix/mydomains<br />
sudo /etc/init.d/postfix restart<br />
# echo -e " * Dominio modificado com sucesso!\t\t\t\t[ OK ]\n"<br />
# else<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio ja existe ou esta em branco.\n"<br />
#fi<br />
<br />
- Edição do Arquivo '''del-dominio.sh''':<br />
Script em bash que remove o cliente (Subdominio, E-mail e Pagina WEB):<br />
<br />
Exclui todos os arquivos de configuração criados para este cliente e retira as linhas de configuração adicionadas em arquivos como o "named.conf", "virtual" e "mydomains", por ultimo os serviçoes DNS e POSTFIX são reiniciados ( o APACHE2 é reiniciado na pagina PHP).<br />
<br />
#!/bin/bash<br />
#Leonardo<br />
#echo -n "Dominio: "<br />
#read dominio<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$dominio'.conf";' ];then<br />
dominio=$1<br />
sudo sed -i '/\/etc\/bind\/'$dominio'\.conf/Id' /etc/bind/named.conf<br />
sudo rm /etc/bind/$dominio.conf<br />
sudo rm /etc/bind/$dominio.zone<br />
sudo /etc/init.d/bind9 restart<br />
sudo rm /etc/apache2/sites-enabled/$dominio-default<br />
sudo rm -r /var/www/$dominio<br />
sudo sed -i '/'$dominio'\.teletec\.sj\.ifsc\.edu\.br Subdominio-'$dominio'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$dominio'@teletec\.sj\.ifsc\.edu\.br '$dominio'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$dominio'\.teletec\.sj\.ifsc\.edu\.br OK/Id' /etc/postfix/mydomains<br />
sudo postmap /etc/postfix/virtual<br />
sudo postmap /etc/postfix/mydomains<br />
sudo /etc/init.d/postfix restart<br />
# echo -e " * Dominio removido com sucesso!\t\t\t\t[ OK ]\n"<br />
# exit<br />
# fi<br />
#done<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio não existe ou esta em branco.\n"<br />
<br />
- Edição do Arquivo '''add-dominio.sh''': <br />
<br />
#!/bin/bash<br />
# Leonardo<br />
#echo -n "Nome do cliente: "<br />
#read nome<br />
#echo -n "Dominio: " <br />
#read dominio<br />
#echo=${dominio:=nulo}<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$dominio'.conf";' ];then<br />
# dominio=existe<br />
# break<br />
# fi <br />
#done<br />
#<br />
#if [ $dominio != nulo ] && [ $dominio != existe ];then<br />
nome=$1<br />
dominio=$2<br />
sudo echo 'include "/etc/bind/'$dominio'.conf";' >> /etc/bind/named.conf<br />
numero=`date | cut -d ":" -f 3 | cut -d " " -f 1`<br />
novoserial=$((1000000000+$numero))<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.conf > /etc/bind/$dominio.conf<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.zone | sed s/2011061504/$novoserial/g > /etc/bind/$dominio.zone<br />
sudo /etc/init.d/bind9 restart<br />
sudo sed s/padrao/$dominio/g /etc/apache2/sites-available/padrao-default > /etc/apache2/sites-enabled/$dominio-default<br />
mkdir /var/www/$dominio<br />
sed s/dominio/$dominio/g /var/www/padrao/index.html | sed s/nome/"$nome"/g > /var/www/$dominio/index.html<br />
sudo echo ' ' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br Subdominio-'$dominio'' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'@teletec.sj.ifsc.edu.br '$dominio'' >> /etc/postfix/virtual <br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br OK' >> /etc/postfix/mydomains<br />
sudo postmap /etc/postfix/virtual<br />
sudo postmap /etc/postfix/mydomains<br />
sudo /etc/init.d/postfix restart<br />
# echo -e " * Dominio criado com sucesso!\t\t\t\t[ OK ]\n"<br />
# else<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio ja existe ou esta em branco.\n"<br />
#fi</div>Vagner.chttps://wiki.sj.ifsc.edu.br/index.php?title=Projeto_Integrador_-_2011.1_-_Teletec&diff=34791Projeto Integrador - 2011.1 - Teletec2011-07-09T00:42:18Z<p>Vagner.c: /* Programação para Redes de Computadores */</p>
<hr />
<div>== * '''Equipe 2 : TELETEC''' ==<br />
<br />
----<br />
<br />
== INTEGRANTES TELETEC ==<br />
<br />
* '''Daniel Estefano'''; estefano.daniel@gmail.com <br />
* '''Denis Teixeira'''; denisteixeira3@gmail.com <br />
* '''Leonardo Oliveira P.'''; leonardo-op@live.com <br />
* '''Odair de Moraes'''; odairdmoraes@hotmail.com<br />
* '''Robson de Carvalho'''; rob_carvalho12@hotmail.com<br />
* '''Vagner Cordeiro.''' cordeirotelecom@gmail.com<br />
<br />
----<br />
<br />
'''EMPRESA TELETEC - PROVEDOR DE ACESSO Á INTERNET:'''<br />
<br />
A Empresa Oferece os seguintes serviços: <br />
<br />
# Conta de Usuário para cada cliente;<br />
# Conta de E-mail para cada cliente;<br />
# Uma página Web Padrão;<br />
# Instalação do Modem ADSL e do Cabeamento Estrurado;<br />
# Acesso Wirelles;<br />
<br />
<br />
== Etapas Iniciais de Configurações da Rede ==<br />
<br />
<br />
# Instalação do Sistema Operacional:Ubuntu-Server;<br />
# Definido Sistema de Arquivo, Dividido em 3 Partições: ''1 Partição Primátia, 1 Partição Secundária e uma Partição para Swap;'' <br />
# Definido nome do Domínio: teletec.sj.ifsc.edu.br;<br />
# Criado um Usuário: Tecnico;<br />
# Acesso via SSH ao Servidor Teletec.<br />
<br />
----<br />
<br />
== Gerencia de Redes: Apache, Postfix e DNS ==<br />
<br />
'''Configurações do servidor DNS:''' <br />
<br />
- Edição do Arquivo para IP Estático: '''/etc/network/interfaces''' <br />
<br />
# This file describes the network interfaces available on your system<br />
# and how to activate them. For more information, see interfaces(5).<br />
# The loopback network interface<br />
auto lo<br />
iface lo inet loopback<br />
# The primary network interface<br />
auto eth0<br />
iface eth0 inet static<br />
address 200.135.37.100<br />
netmask 255.255.255.192<br />
gateway 200.135.37.126 <br />
<br />
- Edição do Arquivo do servidor DNS '''/etc/bind/named.conf''' <br />
<br />
Indica todos os arquivos que vai fazer a configuração dele<br />
<br />
// This is the primary configuration file for the BIND DNS server named.<br />
//<br />
// Please read /usr/share/doc/bind9/README.Debian.gz for information on the <br />
// structure of BIND configuration files in Debian, *BEFORE* you customize <br />
// this configuration file.<br />
//<br />
// If you are just adding zones, please do that in /etc/bind/named.conf.local<br />
include "/etc/bind/named.conf.options";<br />
include "/etc/bind/named.conf.local";<br />
include "/etc/bind/named.conf.default-zones";<br />
include "/etc/bind/servidor.conf";<br />
include "/etc/bind/tecnico.conf";<br />
include "/etc/bind/daniel.conf";<br />
<br />
- Edição do Arquivo de servidor DNS: named.conf.local '''/etc/bind/named.conf.local'''<br />
É um arquivo padrão do BIND onde foi configurado o o nosso dominino TELETEC.<br />
<br />
//<br />
// Do any local configuration here<br />
//<br />
<br />
// Consider adding the 1918 zones here, if they are not used in your<br />
// organization<br />
//include "/etc/bind/zones.rfc1918"8;<br />
zone "teletec.sj.ifsc.edu.br." IN {<br />
type master;<br />
file "/etc/bind/teletec.zone";<br />
allow-update { none; };<br />
};<br />
<br />
- Edição do Arquivo de DNS Reverso: '''/etc/bind/37.135.200.in-addr.arpa'''<br />
O DNS Reverso resolve um endereço IP para um nome de servidor – por exemplo, ele poderia resolver 200.176.3.142 para exemplo.hipotetico.com.br.<br />
<br />
$TTL 86400<br />
@ IN SOA servidor.teletec.sj.ifsc.edu.br. root (<br />
2011061500 ;<br />
1d ;<br />
1h ;<br />
1w ; <br />
1d ;<br />
)<br />
IN NS servidor.teletec.sj.ifsc.edu.br.<br />
100 IN PTR servidor.teletec.sj.ifsc.edu.br.<br />
<br />
- Edição do Arquivo para criar um subdomínio:'''/etc/bind/teletec.zone'''<br />
Arquivo que traz todas as configurações de cada subdomínio. <br />
<br />
$TTL 86400<br />
@ IN SOA teletec.teletec.sj.ifsc.edu.br root (<br />
2011062901;<br />
3H;<br />
15M;<br />
1W;<br />
1D );<br />
IN NS teletec.teletec.sj.ifsc.edu.br.<br />
IN MX 0 mail.teletec.sj.ifsc.edu.br.<br />
localhost IN A 127.0.0.1<br />
$ORIGIN teletec.sj.ifsc.edu.br.<br />
teletec A 200.135.37.100<br />
www A 200.135.37.100<br />
mail A 200.135.37.100<br />
<br />
- '''Configuração do servidor Apache'''<br />
<br />
No servidor Apache foi feito a instalação com o comando:<br />
apt-get install apache2<br />
E nele não foi preciso fazer configuraçoẽs, nele vai ser criado uma nova nova pagina web para cada novo cliente na pasta:'' /etc/apache2/sites-enabled''' essas paginas web serão adicionadas automaticamente pelo script <br />
<br />
== Instalação de Equipamento de Redes (Modem, Switch e Roteadores) ==<br />
<br />
'''Configurações:''' <br />
<br />
Instalação:<br />
<br />
minicom -s<br />
<br />
Configuração do Roteador Cisco 1700: <br />
<br />
* Configuração dos Dois Roteadores Utilizando a ferramenta "Minicon" (Se fosse Windows seria Hyperterminal)<br />
* Configuração dos dispositivos: Serial e Ethernet<br />
* Configuração como Protocolo PPP<br />
<br />
- ''"Configuração da porta serial":''<br />
<br />
┌─────────────[configuração]──────────────┐<br />
│ Nomes de arquivos e rotas<br />
│ Protocolos de transferência de arquivos<br />
│ Configuração da porta serial<br />
│ Modem e discagem<br />
│ Tela e teclado<br />
│ Salvar configuração como dfl<br />
│ Salvar configuração como<br />
│ Sair<br />
│ Sair do Minicom<br />
└────────────────────────────────────────┘<br />
<br />
- ''"Alteração da Porta Serial"''<br />
┌──────────────────────────────────────────────────────────┐<br />
│ A – Dispositivo Serial : /dev/ttSy0 <br />
│ B – Localização do Arquivo de Travamento : /var/lock<br />
│ C – Programa de Entrada :<br />
│ D – Programa de Saída :<br />
│ E – Bps/Paridade/Bits : 9600 8N1 <br />
│ F – Controle de Fluxo por Hardware : Não<br />
│ G – Controle de Fluxo por Software : Não<br />
│<br />
│ Alterar qual configuração?<br />
└──────────────────────────────────────────────────────────┘<br />
<br />
- ''"Salvar configuração com dfl"''<br />
<br />
- ''Configurando a Interface Serial do Roteador:''<br />
<br />
enable;<br />
configure terminal;<br />
<br />
#Para configurar a interface serial:<br />
interface serial 0;<br />
ip address 10.0.0.1/30;<br />
encapsulation ppp;<br />
exit;<br />
<br />
#Para configurar a interface ethernet:<br />
interface fastethernet 0;<br />
ip address 172.18.0.1/24;<br />
exit;<br />
exit;<br />
<br />
#Para salvar as configurações:<br />
wr;<br />
<br />
'''Radius'''<br />
<br />
Para ter acesso a rede aDSL ou pela rede sem fio será usado Radius para que os usuários sejam autenticados. O RADIUS é um sistema utilizado para prover uma autenticação centralizada em redes dial-up, VPN's (Virtual Private Network) e redes sem fio. Ele tem um modelo cliente-servidor, onde o cliente é o Network Access Server (NAS). Esse servidor é responsável por obter a informação sobre o cliente e repassá-la para o servidor RADIUS, além de interpretar a resposta, dando ou não acesso ao cliente. O servidor RADIUS é responsável por receber pedidos de conexão, autenticar o usuário e repassar ao NAS as informações necessárias para esse dar acesso ao usuário na rede. <br />
<br />
'''Arquivos configurados:''' <br />
<br />
Configurar login e senha para o cliente Radius ( /etc/freeradius<br />
/users ):<br />
<br />
“Usúario” Cleartext-Password := "senha"<br />
“Usúario” User-Password := "senha"<br />
<br />
Configurando o Servidor PPPoe (/etc/ppp/pppoe-servers-options): <br />
<br />
require-chap<br />
auth<br />
lcp-echo-interval 10<br />
lcp-echo-failure 2<br />
ms-dns IP do seu servidor DNS<br />
netmask 255.255.255.0<br />
noipdefault<br />
debug<br />
kdebug 4<br />
plugin radius.so<br />
plugin radattr.so<br />
radius-config-file /etc/radiusclient/teletec.conf<br />
mru 1492<br />
mtu 1492<br />
<br />
Configuração do Cliente Radius ( etc/radiusclient/teletec.conf ):<br />
<br />
auth_order radius<br />
login_tries 4<br />
login_timeout 60<br />
nologin /etc/nologin<br />
issue /etc/radiusclient/issue<br />
authserver 200.135.37.100<br />
acctserver 200.135.37.100<br />
servers /etc/radiusclient/servers<br />
dictionary /etc/radiusclient/dictionary<br />
login_radius /usr/sbin/login.radius<br />
seqfile /var/run/radius.seq<br />
mapfile /etc/radiusclient/port-id-map<br />
default_realm<br />
radius_timeout 10<br />
radius_retries 3<br />
login_local /bin/login<br />
<br />
Configurando o IP do Servidor Radius ( /etc/radiusclient/servers ):<br />
<br />
200.135.37.100 testing123<br />
<br />
Integrando Radius ao Banco de Dados<br />
<br />
Primeiro procedimento, instale o pacote. <br />
<br />
apt-get install freeradius-mysql<br />
Edite o arquivo de configuração do freeradius, e descomente a seguinte linha <br />
( /etc/freeradius/radiusd.conf ): <br />
<br />
$INCLUDE sql.conf<br />
<br />
Para entrar no MySQL execute o comando: <br />
<br />
mysql -u root -p <br />
<br />
Crie uma base de dados somente para o Radius e dê ao usuário Radius a devida permissão para acesso a esta base. No shell do MySQL, execute os comandos: <br />
<br />
CREATE DATABASE radius;<br />
GRANT ALL ON radius.* TO freerad@localhost IDENTIFIED BY "senha_do_usuário_freeradius";<br />
exit;<br />
<br />
Inserindo informações na base de dados: <br />
<br />
mysql -u “usuário” -p “senha do usuário radius” “database” < /etc/freeradius/sql/mysql/schema.sql<br />
mysql -u “usuário” -p “senha do usuário radius” “database” < /etc/freeradius/sql/mysql/nas.sql<br />
<br />
Editar o arquivo /etc/freeradius/sql.conf, colocando a senha do usuário Radius: <br />
<br />
passwrod = "senha do usuário radius"<br />
<br />
E descomente a linha do mesmo arquivo ( /etc/freeradius/sql.conf ) : <br />
<br />
readclients = yes<br />
<br />
Reinicie o FreeRadius: <br />
<br />
service freeradius restart<br />
<br />
== Cabeamento Estruturado ==<br />
<br />
Atividades Concluídas:<br />
<br />
- o A central telefônica ao DSLAM<br />
- o O DSLAM ao armário de telecom da equipe, através de uma linha telefone + DSL<br />
- o armário da equipe a uma área de trabalho. <br />
- O cabeamento permitiu a conexão do modem DSL no armário de telecom.<br />
- As tomadas da área de trabalho para conexão com Telefone e o Modem ADSL.<br />
<br />
== Programação para Redes de Computadores ==<br />
<br />
'''Os Arquivos PHP (pagina Web) Encontram-se dentro da pasta: ''/var/www/teletec'''''<br />
<br />
- Edição do Arquivo '''Verificação.php''':<br />
<br />
<?<br />
session_start();<br />
$login = $_POST['login'];<br />
$senha = $_POST['senha'];<br />
if ( ( $login == "Administrador" ) && ( $senha == "orelha1234" ) ){<br />
$_SESSION['autorizado'] = $login;<br />
Header ("Location: principal.php");<br />
}else{<br />
Header ("Location: login.php");<br />
}<br />
?><br />
<br />
- Edição do Arquivo '''sair.php''':<br />
<br />
<?<br />
session_start();<br />
session_destroy();<br />
Header ("Location: login.php");<br />
?><br />
<br />
- Edição do arquivo '''principal.php''': <br />
<br />
<.?<br />
.session_start();<br />
.if (!isset($_SESSION['autorizado'])){<br />
.header ("Location: login.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Administrcao de Dominios</title><br />
<./head><br />
<.body><br />
<.p><a href="sair.php">Sair</a></p><br />
<.p></p><br />
<.p style="text-align:center;margin-left:auto;margin-right:auto;">Cliente Dominio Acao </p><br />
<br />
<.?<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$consulta = "SELECT * from clientes";<br />
$resultado = mysql_query($consulta,$conexao);<br />
while($linha = mysql_fetch_array($resultado)){<br />
$cliente = $linha['cliente'];<br />
$dominio = $linha['dominio'];<br />
.?><br />
<.form><br />
<.p style="text-align:center;margin-left:auto;margin-right:auto;"><br />
<.a name="cliente" id="cliente" href="alterar.php?id=<? echo $linha['dominio'];?>"> <?echo $.linha['cliente'];?></a> <br />
<.? echo $linha['dominio'];?> <a href="excluir.php?id=<? echo $linha['dominio'];?>"> Excluir</a></p><br />
<./form><br />
<.?<br />
.}<br />
.mysql_free_result($resultado);<br />
.mysql_close($conexao);<br />
.}<br />
.?><br />
<.p style="text-align:right;margin-left:auto;margin-right:0;"><br />
<.a href="adicionar.php"><span style="color:#ff0000">Adicionar novo dominio</span></a></p><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''mod-domínio.php''':<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$cliente = $_POST['cliente'];<br />
$dominio = $_POST['dominio'];<br />
$antigo = $_POST['antigo'];;<br />
if (empty($dominio)) {<br />
$dominio = "invalido";<br />
} <br />
<br />
if (preg_match('/^[a-z0-9]+/', $dominio)){<br />
}else{<br />
$dominio = "invalido";<br />
} <br />
<br />
$arquivo = '/etc/bind/named.conf';<br />
$linhas = array();<br />
exec("cat $arquivo",$linhas);<br />
for ($i = 0 ; $i < sizeof($linhas); $i++){<br />
if ($linhas[$i] == "include \"/etc/bind/$dominio.conf\";"){<br />
$dominio = "invalido";<br />
}<br />
}<br />
if ($dominio == "invalido"){<br />
header ("Location: alterar.php");<br />
}else{ <br />
<br />
$script = "/etc/teletec/mod-dominio.sh $antigo '$cliente' $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$deletar = "DELETE FROM clientes WHERE dominio='$antigo.teletec.sj.ifsc.edu.br'";<br />
mysql_query($deletar,$conexao);<br />
mysql_close($conexao); <br />
<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$inserir = "INSERT INTO clientes (cliente,dominio) VALUES ('$cliente','$dominio.teletec.sj.ifsc.edu.br')";<br />
mysql_query($inserir,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php"); <br />
<br />
}<br />
.}<br />
?.><br />
<br />
- Edição do Arquivo '''login.php''': <br />
<br />
.<?<br />
.session_start();<br />
.if (isset($_SESSION['autorizado'])){<br />
.Header ("Location: principal.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Hospedagem Web</title><br />
<./head><br />
<br />
<.body><br />
<.p></p><br />
<.p>Sistemas de Hospedagem de Sitios Web</p><br />
<.p></p><br />
<.form name="formTeste" action="verificacao.php" method="post"><br />
<.p>Usu&#xe1;rio:<br><br />
<.input type="text" name="login"> <br />
<.p>Senha:<br> <br />
<.input type="password" name="senha"> <br />
<.input type="submit" name="b_enviar" value="Entrar"><br />
<./form><br />
<.p></p><br />
<.?<br />
}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''Index.php''':<br />
<br />
<.?<br />
Header ("Location: login.php");<br />
.?><br />
<br />
- Edição do Arquivo '''excluir.php''':<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){ <br />
header ("Location: login.php");<br />
}else{<br />
$id=$_GET['id'];<br />
$parte1 = explode(".", $id);<br />
$antigo = $parte1[0];<br />
?.><br />
<.html><br />
<head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Excluir o cliente</title><br />
<./head><br />
<.body><br />
<.p>Voce realmente deseja excluir o cliente?</p><br />
<br />
<.p><a href="del-dominio.php?id=<?echo $antigo;?>">Sim</a> <a<br />
.href="principal.php">Nao</a></p><br />
<.p></p><br />
<?<br />
}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''del-dominio.php''':<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$dominio = $_GET['id'];<br />
$script = "/etc/teletec/del-dominio.sh $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$deletar = "DELETE FROM clientes WHERE dominio='$dominio.teletec.sj.ifsc.edu.br'";<br />
mysql_query($deletar,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php");<br />
}<br />
?.><br />
<br />
- Edição do '''Arquivo alterar.php''': <br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){ <br />
header ("Location: login.php");<br />
}else{<br />
$id=$_GET['id'];<br />
$parte1 = explode(".", $id);<br />
$antigo = $parte1[0];<br />
?.><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Alterar Dominio</title><br />
</.head><br />
<.body><br />
<.p><.a href="principal.php">Voltar </a></p><br />
<.form name="formTeste" action="mod-dominio.php" method="post"><br />
<.p>Novo nome do cliente: <br><br />
<.input type="text" name="cliente"><br />
<.p>Novo dominio: <br><br />
<.input type="text" name="dominio"><br />
<.input type="hidden" name="antigo" value="<?echo $antigo;?>"> <br />
<.input type="submit" name="b_enviar" value="Alterar"><br />
<./form><br />
<.?<br />
}<br />
?.><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''adicionar.php''':<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Adicionar Cliente</title><br />
<./head><br />
<.body><br />
<.p><.a href="principal.php">Voltar </a></p><br />
<.form name="formTeste" action="add-dominio.php" method="post"><br />
<.p>Nome do cliente: <br><br />
<.input type="text" name="cliente"><br />
<.p>Dominio: <br><br />
<.input type="text" name="dominio"><br />
<.input type="submit" name="b_enviar" value="Criar"><br />
<./form><br />
<.?<br />
.}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''add-dominio.php''':<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$cliente = $_POST['cliente'];<br />
$dominio = $_POST['dominio']; <br />
<br />
if (empty($dominio)) {<br />
$dominio = "invalido";<br />
} <br />
<br />
if (preg_match('/^[a-z0-9]+/', $dominio)){<br />
}else{<br />
$dominio = "invalido";<br />
} <br />
<br />
$arquivo = '/etc/bind/named.conf';<br />
$linhas = array();<br />
exec("cat $arquivo",$linhas);<br />
for ($i = 0 ; $i < sizeof($linhas); $i++){<br />
if ($linhas[$i] == "include \"/etc/bind/$dominio.conf\";"){<br />
$dominio = "invalido";<br />
}<br />
}<br />
if ($dominio == "invalido"){<br />
header ("Location: adicionar.php");<br />
}else{<br />
$script = "/etc/teletec/add-dominio.sh '$cliente' $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$inserir = "INSERT INTO clientes (cliente,dominio) VALUES ('$cliente','$dominio.teletec.sj.ifsc.edu.br')";<br />
mysql_query($inserir,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php");<br />
}<br />
}<br />
?.><br />
<br />
'''Os Arquivos .sh (scripts que adicionam, removem ou alteram os usuários no servidor) Encontram-se dentro da pasta: ''/etc/teletec''''' <br />
<br />
- Edição do Arquivo '''mod-dominio.sh''':<br />
<br />
#!/bin/bash<br />
#Leonardo<br />
#echo -n "Dominio: "<br />
#read antigo<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$antigo'.conf";' ];then<br />
# valido=sim<br />
# break<br />
# else<br />
# valido=nao<br />
# fi<br />
#done<br />
#if [ $valido = nao ];then<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio não existe ou esta em branco.\n"<br />
# exit<br />
#fi<br />
#echo -n "Novo nome para o cliente: "<br />
#read nome<br />
#echo -n "Novo dominio: "<br />
#read dominio<br />
#echo=${dominio:=nulo}<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$dominio'.conf";' ];then<br />
# dominio=existe<br />
# break<br />
# fi<br />
#done<br />
#if [ $dominio != nulo ] && [ $dominio != existe ];then<br />
antigo=$1<br />
nome=$2<br />
dominio=$3<br />
sudo sed -i '/\/etc\/bind\/'$antigo'\.conf/Id' /etc/bind/named.conf<br />
sudo rm /etc/bind/$antigo.conf<br />
sudo rm /etc/bind/$antigo.zone<br />
sudo rm /etc/apache2/sites-enabled/$antigo-default<br />
sudo rm -r /var/www/$antigo<br />
sudo sed -i '/'$antigo'\.teletec\.sj\.ifsc\.edu\.br Subdominio-'$antigo'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$antigo'@teletec\.sj\.ifsc\.edu\.br '$antigo'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$antigo'\.teletec\.sj\.ifsc\.edu\.br OK/Id' /etc/postfix/mydomains <br />
<br />
sudo echo 'include "/etc/bind/'$dominio'.conf";' >> /etc/bind/named.conf<br />
numero=`date | cut -d ":" -f 3 | cut -d " " -f 1`<br />
novoserial=$((1000000000+$numero))<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.conf > /etc/bind/$dominio.conf<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.zone | sed s/2011061504/$novoserial/g > /etc/bind/$dominio.zone<br />
sudo /etc/init.d/bind9 restart<br />
sudo sed s/padrao/$dominio/g /etc/apache2/sites-available/padrao-default > /etc/apache2/sites-enabled/$dominio-default<br />
mkdir /var/www/$dominio<br />
sed s/dominio/$dominio/g /var/www/padrao/index.html | sed s/nome/"$nome"/g > /var/www/$dominio/index.html<br />
sudo echo ' ' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br Subdominio-'$dominio'' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'@teletec.sj.ifsc.edu.br '$dominio'' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br OK' >> /etc/postfix/mydomains<br />
sudo postmap /etc/postfix/virtual<br />
sudo postmap /etc/postfix/mydomains<br />
sudo /etc/init.d/postfix restart<br />
# echo -e " * Dominio modificado com sucesso!\t\t\t\t[ OK ]\n"<br />
# else<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio ja existe ou esta em branco.\n"<br />
#fi<br />
<br />
- Edição do Arquivo '''del-dominio.sh''':<br />
Script em bash que remove o cliente (Subdominio, E-mail e Pagina WEB):<br />
<br />
Exclui todos os arquivos de configuração criados para este cliente e retira as linhas de configuração adicionadas em arquivos como o "named.conf", "virtual" e "mydomains", por ultimo os serviçoes DNS e POSTFIX são reiniciados ( o APACHE2 é reiniciado na pagina PHP).<br />
<br />
#!/bin/bash<br />
#Leonardo<br />
#echo -n "Dominio: "<br />
#read dominio<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$dominio'.conf";' ];then<br />
dominio=$1<br />
sudo sed -i '/\/etc\/bind\/'$dominio'\.conf/Id' /etc/bind/named.conf<br />
sudo rm /etc/bind/$dominio.conf<br />
sudo rm /etc/bind/$dominio.zone<br />
sudo /etc/init.d/bind9 restart<br />
sudo rm /etc/apache2/sites-enabled/$dominio-default<br />
sudo rm -r /var/www/$dominio<br />
sudo sed -i '/'$dominio'\.teletec\.sj\.ifsc\.edu\.br Subdominio-'$dominio'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$dominio'@teletec\.sj\.ifsc\.edu\.br '$dominio'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$dominio'\.teletec\.sj\.ifsc\.edu\.br OK/Id' /etc/postfix/mydomains<br />
sudo postmap /etc/postfix/virtual<br />
sudo postmap /etc/postfix/mydomains<br />
sudo /etc/init.d/postfix restart<br />
# echo -e " * Dominio removido com sucesso!\t\t\t\t[ OK ]\n"<br />
# exit<br />
# fi<br />
#done<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio não existe ou esta em branco.\n"<br />
<br />
- Edição do Arquivo '''add-dominio.sh''': <br />
<br />
#!/bin/bash<br />
# Leonardo<br />
#echo -n "Nome do cliente: "<br />
#read nome<br />
#echo -n "Dominio: " <br />
#read dominio<br />
#echo=${dominio:=nulo}<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$dominio'.conf";' ];then<br />
# dominio=existe<br />
# break<br />
# fi <br />
#done<br />
#<br />
#if [ $dominio != nulo ] && [ $dominio != existe ];then<br />
nome=$1<br />
dominio=$2<br />
sudo echo 'include "/etc/bind/'$dominio'.conf";' >> /etc/bind/named.conf<br />
numero=`date | cut -d ":" -f 3 | cut -d " " -f 1`<br />
novoserial=$((1000000000+$numero))<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.conf > /etc/bind/$dominio.conf<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.zone | sed s/2011061504/$novoserial/g > /etc/bind/$dominio.zone<br />
sudo /etc/init.d/bind9 restart<br />
sudo sed s/padrao/$dominio/g /etc/apache2/sites-available/padrao-default > /etc/apache2/sites-enabled/$dominio-default<br />
mkdir /var/www/$dominio<br />
sed s/dominio/$dominio/g /var/www/padrao/index.html | sed s/nome/"$nome"/g > /var/www/$dominio/index.html<br />
sudo echo ' ' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br Subdominio-'$dominio'' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'@teletec.sj.ifsc.edu.br '$dominio'' >> /etc/postfix/virtual <br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br OK' >> /etc/postfix/mydomains<br />
sudo postmap /etc/postfix/virtual<br />
sudo postmap /etc/postfix/mydomains<br />
sudo /etc/init.d/postfix restart<br />
# echo -e " * Dominio criado com sucesso!\t\t\t\t[ OK ]\n"<br />
# else<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio ja existe ou esta em branco.\n"<br />
#fi</div>Vagner.chttps://wiki.sj.ifsc.edu.br/index.php?title=Projeto_Integrador_-_2011.1_-_Teletec&diff=34790Projeto Integrador - 2011.1 - Teletec2011-07-09T00:36:58Z<p>Vagner.c: /* Programação para Redes de Computadores */</p>
<hr />
<div>== * '''Equipe 2 : TELETEC''' ==<br />
<br />
----<br />
<br />
== INTEGRANTES TELETEC ==<br />
<br />
* '''Daniel Estefano'''; estefano.daniel@gmail.com <br />
* '''Denis Teixeira'''; denisteixeira3@gmail.com <br />
* '''Leonardo Oliveira P.'''; leonardo-op@live.com <br />
* '''Odair de Moraes'''; odairdmoraes@hotmail.com<br />
* '''Robson de Carvalho'''; rob_carvalho12@hotmail.com<br />
* '''Vagner Cordeiro.''' cordeirotelecom@gmail.com<br />
<br />
----<br />
<br />
'''EMPRESA TELETEC - PROVEDOR DE ACESSO Á INTERNET:'''<br />
<br />
A Empresa Oferece os seguintes serviços: <br />
<br />
# Conta de Usuário para cada cliente;<br />
# Conta de E-mail para cada cliente;<br />
# Uma página Web Padrão;<br />
# Instalação do Modem ADSL e do Cabeamento Estrurado;<br />
# Acesso Wirelles;<br />
<br />
<br />
== Etapas Iniciais de Configurações da Rede ==<br />
<br />
<br />
# Instalação do Sistema Operacional:Ubuntu-Server;<br />
# Definido Sistema de Arquivo, Dividido em 3 Partições: ''1 Partição Primátia, 1 Partição Secundária e uma Partição para Swap;'' <br />
# Definido nome do Domínio: teletec.sj.ifsc.edu.br;<br />
# Criado um Usuário: Tecnico;<br />
# Acesso via SSH ao Servidor Teletec.<br />
<br />
----<br />
<br />
== Gerencia de Redes: Apache, Postfix e DNS ==<br />
<br />
'''Configurações do servidor DNS:''' <br />
<br />
- Edição do Arquivo para IP Estático: '''/etc/network/interfaces''' <br />
<br />
# This file describes the network interfaces available on your system<br />
# and how to activate them. For more information, see interfaces(5).<br />
# The loopback network interface<br />
auto lo<br />
iface lo inet loopback<br />
# The primary network interface<br />
auto eth0<br />
iface eth0 inet static<br />
address 200.135.37.100<br />
netmask 255.255.255.192<br />
gateway 200.135.37.126 <br />
<br />
- Edição do Arquivo do servidor DNS '''/etc/bind/named.conf''' <br />
<br />
Indica todos os arquivos que vai fazer a configuração dele<br />
<br />
// This is the primary configuration file for the BIND DNS server named.<br />
//<br />
// Please read /usr/share/doc/bind9/README.Debian.gz for information on the <br />
// structure of BIND configuration files in Debian, *BEFORE* you customize <br />
// this configuration file.<br />
//<br />
// If you are just adding zones, please do that in /etc/bind/named.conf.local<br />
include "/etc/bind/named.conf.options";<br />
include "/etc/bind/named.conf.local";<br />
include "/etc/bind/named.conf.default-zones";<br />
include "/etc/bind/servidor.conf";<br />
include "/etc/bind/tecnico.conf";<br />
include "/etc/bind/daniel.conf";<br />
<br />
- Edição do Arquivo de servidor DNS: named.conf.local '''/etc/bind/named.conf.local'''<br />
É um arquivo padrão do BIND onde foi configurado o o nosso dominino TELETEC.<br />
<br />
//<br />
// Do any local configuration here<br />
//<br />
<br />
// Consider adding the 1918 zones here, if they are not used in your<br />
// organization<br />
//include "/etc/bind/zones.rfc1918"8;<br />
zone "teletec.sj.ifsc.edu.br." IN {<br />
type master;<br />
file "/etc/bind/teletec.zone";<br />
allow-update { none; };<br />
};<br />
<br />
- Edição do Arquivo de DNS Reverso: '''/etc/bind/37.135.200.in-addr.arpa'''<br />
O DNS Reverso resolve um endereço IP para um nome de servidor – por exemplo, ele poderia resolver 200.176.3.142 para exemplo.hipotetico.com.br.<br />
<br />
$TTL 86400<br />
@ IN SOA servidor.teletec.sj.ifsc.edu.br. root (<br />
2011061500 ;<br />
1d ;<br />
1h ;<br />
1w ; <br />
1d ;<br />
)<br />
IN NS servidor.teletec.sj.ifsc.edu.br.<br />
100 IN PTR servidor.teletec.sj.ifsc.edu.br.<br />
<br />
- Edição do Arquivo para criar um subdomínio:'''/etc/bind/teletec.zone'''<br />
Arquivo que traz todas as configurações de cada subdomínio. <br />
<br />
$TTL 86400<br />
@ IN SOA teletec.teletec.sj.ifsc.edu.br root (<br />
2011062901;<br />
3H;<br />
15M;<br />
1W;<br />
1D );<br />
IN NS teletec.teletec.sj.ifsc.edu.br.<br />
IN MX 0 mail.teletec.sj.ifsc.edu.br.<br />
localhost IN A 127.0.0.1<br />
$ORIGIN teletec.sj.ifsc.edu.br.<br />
teletec A 200.135.37.100<br />
www A 200.135.37.100<br />
mail A 200.135.37.100<br />
<br />
- '''Configuração do servidor Apache'''<br />
<br />
No servidor Apache foi feito a instalação com o comando:<br />
apt-get install apache2<br />
E nele não foi preciso fazer configuraçoẽs, nele vai ser criado uma nova nova pagina web para cada novo cliente na pasta:'' /etc/apache2/sites-enabled''' essas paginas web serão adicionadas automaticamente pelo script <br />
<br />
== Instalação de Equipamento de Redes (Modem, Switch e Roteadores) ==<br />
<br />
'''Configurações:''' <br />
<br />
Instalação:<br />
<br />
minicom -s<br />
<br />
Configuração do Roteador Cisco 1700: <br />
<br />
* Configuração dos Dois Roteadores Utilizando a ferramenta "Minicon" (Se fosse Windows seria Hyperterminal)<br />
* Configuração dos dispositivos: Serial e Ethernet<br />
* Configuração como Protocolo PPP<br />
<br />
- ''"Configuração da porta serial":''<br />
<br />
┌─────────────[configuração]──────────────┐<br />
│ Nomes de arquivos e rotas<br />
│ Protocolos de transferência de arquivos<br />
│ Configuração da porta serial<br />
│ Modem e discagem<br />
│ Tela e teclado<br />
│ Salvar configuração como dfl<br />
│ Salvar configuração como<br />
│ Sair<br />
│ Sair do Minicom<br />
└────────────────────────────────────────┘<br />
<br />
- ''"Alteração da Porta Serial"''<br />
┌──────────────────────────────────────────────────────────┐<br />
│ A – Dispositivo Serial : /dev/ttSy0 <br />
│ B – Localização do Arquivo de Travamento : /var/lock<br />
│ C – Programa de Entrada :<br />
│ D – Programa de Saída :<br />
│ E – Bps/Paridade/Bits : 9600 8N1 <br />
│ F – Controle de Fluxo por Hardware : Não<br />
│ G – Controle de Fluxo por Software : Não<br />
│<br />
│ Alterar qual configuração?<br />
└──────────────────────────────────────────────────────────┘<br />
<br />
- ''"Salvar configuração com dfl"''<br />
<br />
- ''Configurando a Interface Serial do Roteador:''<br />
<br />
enable;<br />
configure terminal;<br />
<br />
#Para configurar a interface serial:<br />
interface serial 0;<br />
ip address 10.0.0.1/30;<br />
encapsulation ppp;<br />
exit;<br />
<br />
#Para configurar a interface ethernet:<br />
interface fastethernet 0;<br />
ip address 172.18.0.1/24;<br />
exit;<br />
exit;<br />
<br />
#Para salvar as configurações:<br />
wr;<br />
<br />
'''Radius'''<br />
<br />
Para ter acesso a rede aDSL ou pela rede sem fio será usado Radius para que os usuários sejam autenticados. O RADIUS é um sistema utilizado para prover uma autenticação centralizada em redes dial-up, VPN's (Virtual Private Network) e redes sem fio. Ele tem um modelo cliente-servidor, onde o cliente é o Network Access Server (NAS). Esse servidor é responsável por obter a informação sobre o cliente e repassá-la para o servidor RADIUS, além de interpretar a resposta, dando ou não acesso ao cliente. O servidor RADIUS é responsável por receber pedidos de conexão, autenticar o usuário e repassar ao NAS as informações necessárias para esse dar acesso ao usuário na rede. <br />
<br />
'''Arquivos configurados:''' <br />
<br />
Configurar login e senha para o cliente Radius ( /etc/freeradius<br />
/users ):<br />
<br />
“Usúario” Cleartext-Password := "senha"<br />
“Usúario” User-Password := "senha"<br />
<br />
Configurando o Servidor PPPoe (/etc/ppp/pppoe-servers-options): <br />
<br />
require-chap<br />
auth<br />
lcp-echo-interval 10<br />
lcp-echo-failure 2<br />
ms-dns IP do seu servidor DNS<br />
netmask 255.255.255.0<br />
noipdefault<br />
debug<br />
kdebug 4<br />
plugin radius.so<br />
plugin radattr.so<br />
radius-config-file /etc/radiusclient/teletec.conf<br />
mru 1492<br />
mtu 1492<br />
<br />
Configuração do Cliente Radius ( etc/radiusclient/teletec.conf ):<br />
<br />
auth_order radius<br />
login_tries 4<br />
login_timeout 60<br />
nologin /etc/nologin<br />
issue /etc/radiusclient/issue<br />
authserver 200.135.37.100<br />
acctserver 200.135.37.100<br />
servers /etc/radiusclient/servers<br />
dictionary /etc/radiusclient/dictionary<br />
login_radius /usr/sbin/login.radius<br />
seqfile /var/run/radius.seq<br />
mapfile /etc/radiusclient/port-id-map<br />
default_realm<br />
radius_timeout 10<br />
radius_retries 3<br />
login_local /bin/login<br />
<br />
Configurando o IP do Servidor Radius ( /etc/radiusclient/servers ):<br />
<br />
200.135.37.100 testing123<br />
<br />
Integrando Radius ao Banco de Dados<br />
<br />
Primeiro procedimento, instale o pacote. <br />
<br />
apt-get install freeradius-mysql<br />
Edite o arquivo de configuração do freeradius, e descomente a seguinte linha <br />
( /etc/freeradius/radiusd.conf ): <br />
<br />
$INCLUDE sql.conf<br />
<br />
Para entrar no MySQL execute o comando: <br />
<br />
mysql -u root -p <br />
<br />
Crie uma base de dados somente para o Radius e dê ao usuário Radius a devida permissão para acesso a esta base. No shell do MySQL, execute os comandos: <br />
<br />
CREATE DATABASE radius;<br />
GRANT ALL ON radius.* TO freerad@localhost IDENTIFIED BY "senha_do_usuário_freeradius";<br />
exit;<br />
<br />
Inserindo informações na base de dados: <br />
<br />
mysql -u “usuário” -p “senha do usuário radius” “database” < /etc/freeradius/sql/mysql/schema.sql<br />
mysql -u “usuário” -p “senha do usuário radius” “database” < /etc/freeradius/sql/mysql/nas.sql<br />
<br />
Editar o arquivo /etc/freeradius/sql.conf, colocando a senha do usuário Radius: <br />
<br />
passwrod = "senha do usuário radius"<br />
<br />
E descomente a linha do mesmo arquivo ( /etc/freeradius/sql.conf ) : <br />
<br />
readclients = yes<br />
<br />
Reinicie o FreeRadius: <br />
<br />
service freeradius restart<br />
<br />
== Cabeamento Estruturado ==<br />
<br />
Atividades Concluídas:<br />
<br />
- o A central telefônica ao DSLAM<br />
- o O DSLAM ao armário de telecom da equipe, através de uma linha telefone + DSL<br />
- o armário da equipe a uma área de trabalho. <br />
- O cabeamento permitiu a conexão do modem DSL no armário de telecom.<br />
- As tomadas da área de trabalho para conexão com Telefone e o Modem ADSL.<br />
<br />
== Programação para Redes de Computadores ==<br />
<br />
'''Os Arquivos PHP (pagina Web) Encontram-se dentro da pasta: ''/var/www/teletec'''''<br />
<br />
- Edição do Arquivo '''Verificação.php''':<br />
<br />
<?<br />
session_start();<br />
$login = $_POST['login'];<br />
$senha = $_POST['senha'];<br />
if ( ( $login == "Administrador" ) && ( $senha == "orelha1234" ) ){<br />
$_SESSION['autorizado'] = $login;<br />
Header ("Location: principal.php");<br />
}else{<br />
Header ("Location: login.php");<br />
}<br />
?><br />
<br />
- Edição do Arquivo '''sair.php''':<br />
<br />
<?<br />
session_start();<br />
session_destroy();<br />
Header ("Location: login.php");<br />
?><br />
<br />
- Edição do arquivo '''principal.php''': <br />
<br />
<.?<br />
.session_start();<br />
.if (!isset($_SESSION['autorizado'])){<br />
.header ("Location: login.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Administrcao de Dominios</title><br />
<./head><br />
<.body><br />
<.p><a href="sair.php">Sair</a></p><br />
<.p></p><br />
<.p style="text-align:center;margin-left:auto;margin-right:auto;">Cliente Dominio Acao </p><br />
<br />
<.?<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$consulta = "SELECT * from clientes";<br />
$resultado = mysql_query($consulta,$conexao);<br />
while($linha = mysql_fetch_array($resultado)){<br />
$cliente = $linha['cliente'];<br />
$dominio = $linha['dominio'];<br />
.?><br />
<.form><br />
<.p style="text-align:center;margin-left:auto;margin-right:auto;"><br />
<.a name="cliente" id="cliente" href="alterar.php?id=<? echo $linha['dominio'];?>"> <?echo $.linha['cliente'];?></a> <br />
<.? echo $linha['dominio'];?> <a href="excluir.php?id=<? echo $linha['dominio'];?>"> Excluir</a></p><br />
<./form><br />
<.?<br />
.}<br />
.mysql_free_result($resultado);<br />
.mysql_close($conexao);<br />
.}<br />
.?><br />
<.p style="text-align:right;margin-left:auto;margin-right:0;"><br />
<.a href="adicionar.php"><span style="color:#ff0000">Adicionar novo dominio</span></a></p><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''mod-domínio.php''':<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$cliente = $_POST['cliente'];<br />
$dominio = $_POST['dominio'];<br />
$antigo = $_POST['antigo'];;<br />
if (empty($dominio)) {<br />
$dominio = "invalido";<br />
} <br />
<br />
if (preg_match('/^[a-z0-9]+/', $dominio)){<br />
}else{<br />
$dominio = "invalido";<br />
} <br />
<br />
$arquivo = '/etc/bind/named.conf';<br />
$linhas = array();<br />
exec("cat $arquivo",$linhas);<br />
for ($i = 0 ; $i < sizeof($linhas); $i++){<br />
if ($linhas[$i] == "include \"/etc/bind/$dominio.conf\";"){<br />
$dominio = "invalido";<br />
}<br />
}<br />
if ($dominio == "invalido"){<br />
header ("Location: alterar.php");<br />
}else{ <br />
<br />
$script = "/etc/teletec/mod-dominio.sh $antigo '$cliente' $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$deletar = "DELETE FROM clientes WHERE dominio='$antigo.teletec.sj.ifsc.edu.br'";<br />
mysql_query($deletar,$conexao);<br />
mysql_close($conexao); <br />
<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$inserir = "INSERT INTO clientes (cliente,dominio) VALUES ('$cliente','$dominio.teletec.sj.ifsc.edu.br')";<br />
mysql_query($inserir,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php"); <br />
<br />
}<br />
.}<br />
?.><br />
<br />
- Edição do Arquivo '''login.php''': <br />
<br />
.<?<br />
.session_start();<br />
.if (isset($_SESSION['autorizado'])){<br />
.Header ("Location: principal.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Hospedagem Web</title><br />
<./head><br />
<br />
<.body><br />
<.p></p><br />
<.p>Sistemas de Hospedagem de Sitios Web</p><br />
<.p></p><br />
<.form name="formTeste" action="verificacao.php" method="post"><br />
<.p>Usu&#xe1;rio:<br><br />
<.input type="text" name="login"> <br />
<.p>Senha:<br> <br />
<.input type="password" name="senha"> <br />
<.input type="submit" name="b_enviar" value="Entrar"><br />
<./form><br />
<.p></p><br />
<.?<br />
}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''Index.php''':<br />
<br />
<.?<br />
Header ("Location: login.php");<br />
.?><br />
<br />
- Edição do Arquivo '''excluir.php''':<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){ <br />
header ("Location: login.php");<br />
}else{<br />
$id=$_GET['id'];<br />
$parte1 = explode(".", $id);<br />
$antigo = $parte1[0];<br />
?.><br />
<.html><br />
<head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Excluir o cliente</title><br />
<./head><br />
<.body><br />
<.p>Voce realmente deseja excluir o cliente?</p><br />
<br />
<.p><a href="del-dominio.php?id=<?echo $antigo;?>">Sim</a> <a<br />
.href="principal.php">Nao</a></p><br />
<.p></p><br />
<?<br />
}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''del-dominio.php''':<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$dominio = $_GET['id'];<br />
$script = "/etc/teletec/del-dominio.sh $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$deletar = "DELETE FROM clientes WHERE dominio='$dominio.teletec.sj.ifsc.edu.br'";<br />
mysql_query($deletar,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php");<br />
}<br />
?.><br />
<br />
- Edição do '''Arquivo alterar.php''': <br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){ <br />
header ("Location: login.php");<br />
}else{<br />
$id=$_GET['id'];<br />
$parte1 = explode(".", $id);<br />
$antigo = $parte1[0];<br />
?.><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Alterar Dominio</title><br />
</.head><br />
<.body><br />
<.p><.a href="principal.php">Voltar </a></p><br />
<.form name="formTeste" action="mod-dominio.php" method="post"><br />
<.p>Novo nome do cliente: <br><br />
<.input type="text" name="cliente"><br />
<.p>Novo dominio: <br><br />
<.input type="text" name="dominio"><br />
<.input type="hidden" name="antigo" value="<?echo $antigo;?>"> <br />
<.input type="submit" name="b_enviar" value="Alterar"><br />
<./form><br />
<.?<br />
}<br />
?.><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''adicionar.php''':<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Adicionar Cliente</title><br />
<./head><br />
<.body><br />
<.p><.a href="principal.php">Voltar </a></p><br />
<.form name="formTeste" action="add-dominio.php" method="post"><br />
<.p>Nome do cliente: <br><br />
<.input type="text" name="cliente"><br />
<.p>Dominio: <br><br />
<.input type="text" name="dominio"><br />
<.input type="submit" name="b_enviar" value="Criar"><br />
<./form><br />
<.?<br />
.}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''add-dominio.php''':<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$cliente = $_POST['cliente'];<br />
$dominio = $_POST['dominio']; <br />
<br />
if (empty($dominio)) {<br />
$dominio = "invalido";<br />
} <br />
<br />
if (preg_match('/^[a-z0-9]+/', $dominio)){<br />
}else{<br />
$dominio = "invalido";<br />
} <br />
<br />
$arquivo = '/etc/bind/named.conf';<br />
$linhas = array();<br />
exec("cat $arquivo",$linhas);<br />
for ($i = 0 ; $i < sizeof($linhas); $i++){<br />
if ($linhas[$i] == "include \"/etc/bind/$dominio.conf\";"){<br />
$dominio = "invalido";<br />
}<br />
}<br />
if ($dominio == "invalido"){<br />
header ("Location: adicionar.php");<br />
}else{<br />
$script = "/etc/teletec/add-dominio.sh '$cliente' $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$inserir = "INSERT INTO clientes (cliente,dominio) VALUES ('$cliente','$dominio.teletec.sj.ifsc.edu.br')";<br />
mysql_query($inserir,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php");<br />
}<br />
}<br />
?.><br />
<br />
'''Os Arquivos .sh (scripts que adicionam, removem ou alteram os usuários no servidor) Encontram-se dentro da pasta: ''/etc/teletec''''' <br />
<br />
- Edição do Arquivo '''mod-dominio.sh''':<br />
<br />
#!/bin/bash<br />
#Leonardo<br />
#echo -n "Dominio: "<br />
#read antigo<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$antigo'.conf";' ];then<br />
# valido=sim<br />
# break<br />
# else<br />
# valido=nao<br />
# fi<br />
#done<br />
#if [ $valido = nao ];then<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio não existe ou esta em branco.\n"<br />
# exit<br />
#fi<br />
#echo -n "Novo nome para o cliente: "<br />
#read nome<br />
#echo -n "Novo dominio: "<br />
#read dominio<br />
#echo=${dominio:=nulo}<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$dominio'.conf";' ];then<br />
# dominio=existe<br />
# break<br />
# fi<br />
#done<br />
#if [ $dominio != nulo ] && [ $dominio != existe ];then<br />
antigo=$1<br />
nome=$2<br />
dominio=$3<br />
sudo sed -i '/\/etc\/bind\/'$antigo'\.conf/Id' /etc/bind/named.conf<br />
sudo rm /etc/bind/$antigo.conf<br />
sudo rm /etc/bind/$antigo.zone<br />
sudo rm /etc/apache2/sites-enabled/$antigo-default<br />
sudo rm -r /var/www/$antigo<br />
sudo sed -i '/'$antigo'\.teletec\.sj\.ifsc\.edu\.br Subdominio-'$antigo'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$antigo'@teletec\.sj\.ifsc\.edu\.br '$antigo'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$antigo'\.teletec\.sj\.ifsc\.edu\.br OK/Id' /etc/postfix/mydomains <br />
<br />
sudo echo 'include "/etc/bind/'$dominio'.conf";' >> /etc/bind/named.conf<br />
numero=`date | cut -d ":" -f 3 | cut -d " " -f 1`<br />
novoserial=$((1000000000+$numero))<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.conf > /etc/bind/$dominio.conf<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.zone | sed s/2011061504/$novoserial/g > /etc/bind/$dominio.zone<br />
sudo /etc/init.d/bind9 restart<br />
sudo sed s/padrao/$dominio/g /etc/apache2/sites-available/padrao-default > /etc/apache2/sites-enabled/$dominio-default<br />
mkdir /var/www/$dominio<br />
sed s/dominio/$dominio/g /var/www/padrao/index.html | sed s/nome/"$nome"/g > /var/www/$dominio/index.html<br />
sudo echo ' ' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br Subdominio-'$dominio'' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'@teletec.sj.ifsc.edu.br '$dominio'' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br OK' >> /etc/postfix/mydomains<br />
sudo postmap /etc/postfix/virtual<br />
sudo postmap /etc/postfix/mydomains<br />
sudo /etc/init.d/postfix restart<br />
# echo -e " * Dominio modificado com sucesso!\t\t\t\t[ OK ]\n"<br />
# else<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio ja existe ou esta em branco.\n"<br />
#fi<br />
<br />
- Edição do Arquivo '''del-dominio.sh''':<br />
<br />
#!/bin/bash<br />
#Leonardo<br />
#echo -n "Dominio: "<br />
#read dominio<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$dominio'.conf";' ];then<br />
dominio=$1<br />
sudo sed -i '/\/etc\/bind\/'$dominio'\.conf/Id' /etc/bind/named.conf<br />
sudo rm /etc/bind/$dominio.conf<br />
sudo rm /etc/bind/$dominio.zone<br />
sudo /etc/init.d/bind9 restart<br />
sudo rm /etc/apache2/sites-enabled/$dominio-default<br />
sudo rm -r /var/www/$dominio<br />
sudo sed -i '/'$dominio'\.teletec\.sj\.ifsc\.edu\.br Subdominio-'$dominio'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$dominio'@teletec\.sj\.ifsc\.edu\.br '$dominio'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$dominio'\.teletec\.sj\.ifsc\.edu\.br OK/Id' /etc/postfix/mydomains<br />
sudo postmap /etc/postfix/virtual<br />
sudo postmap /etc/postfix/mydomains<br />
sudo /etc/init.d/postfix restart<br />
# echo -e " * Dominio removido com sucesso!\t\t\t\t[ OK ]\n"<br />
# exit<br />
# fi<br />
#done<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio não existe ou esta em branco.\n"<br />
<br />
- Edição do Arquivo '''add-dominio.sh''': <br />
<br />
#!/bin/bash<br />
# Leonardo<br />
#echo -n "Nome do cliente: "<br />
#read nome<br />
#echo -n "Dominio: " <br />
#read dominio<br />
#echo=${dominio:=nulo}<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$dominio'.conf";' ];then<br />
# dominio=existe<br />
# break<br />
# fi <br />
#done<br />
#<br />
#if [ $dominio != nulo ] && [ $dominio != existe ];then<br />
nome=$1<br />
dominio=$2<br />
sudo echo 'include "/etc/bind/'$dominio'.conf";' >> /etc/bind/named.conf<br />
numero=`date | cut -d ":" -f 3 | cut -d " " -f 1`<br />
novoserial=$((1000000000+$numero))<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.conf > /etc/bind/$dominio.conf<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.zone | sed s/2011061504/$novoserial/g > /etc/bind/$dominio.zone<br />
sudo /etc/init.d/bind9 restart<br />
sudo sed s/padrao/$dominio/g /etc/apache2/sites-available/padrao-default > /etc/apache2/sites-enabled/$dominio-default<br />
mkdir /var/www/$dominio<br />
sed s/dominio/$dominio/g /var/www/padrao/index.html | sed s/nome/"$nome"/g > /var/www/$dominio/index.html<br />
sudo echo ' ' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br Subdominio-'$dominio'' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'@teletec.sj.ifsc.edu.br '$dominio'' >> /etc/postfix/virtual <br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br OK' >> /etc/postfix/mydomains<br />
sudo postmap /etc/postfix/virtual<br />
sudo postmap /etc/postfix/mydomains<br />
sudo /etc/init.d/postfix restart<br />
# echo -e " * Dominio criado com sucesso!\t\t\t\t[ OK ]\n"<br />
# else<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio ja existe ou esta em branco.\n"<br />
#fi</div>Vagner.chttps://wiki.sj.ifsc.edu.br/index.php?title=Projeto_Integrador_-_2011.1_-_Teletec&diff=34788Projeto Integrador - 2011.1 - Teletec2011-07-09T00:34:41Z<p>Vagner.c: /* Programação para Redes de Computadores */</p>
<hr />
<div>== * '''Equipe 2 : TELETEC''' ==<br />
<br />
----<br />
<br />
== INTEGRANTES TELETEC ==<br />
<br />
* '''Daniel Estefano'''; estefano.daniel@gmail.com <br />
* '''Denis Teixeira'''; denisteixeira3@gmail.com <br />
* '''Leonardo Oliveira P.'''; leonardo-op@live.com <br />
* '''Odair de Moraes'''; odairdmoraes@hotmail.com<br />
* '''Robson de Carvalho'''; rob_carvalho12@hotmail.com<br />
* '''Vagner Cordeiro.''' cordeirotelecom@gmail.com<br />
<br />
----<br />
<br />
'''EMPRESA TELETEC - PROVEDOR DE ACESSO Á INTERNET:'''<br />
<br />
A Empresa Oferece os seguintes serviços: <br />
<br />
# Conta de Usuário para cada cliente;<br />
# Conta de E-mail para cada cliente;<br />
# Uma página Web Padrão;<br />
# Instalação do Modem ADSL e do Cabeamento Estrurado;<br />
# Acesso Wirelles;<br />
<br />
<br />
== Etapas Iniciais de Configurações da Rede ==<br />
<br />
<br />
# Instalação do Sistema Operacional:Ubuntu-Server;<br />
# Definido Sistema de Arquivo, Dividido em 3 Partições: ''1 Partição Primátia, 1 Partição Secundária e uma Partição para Swap;'' <br />
# Definido nome do Domínio: teletec.sj.ifsc.edu.br;<br />
# Criado um Usuário: Tecnico;<br />
# Acesso via SSH ao Servidor Teletec.<br />
<br />
----<br />
<br />
== Gerencia de Redes: Apache, Postfix e DNS ==<br />
<br />
'''Configurações do servidor DNS:''' <br />
<br />
- Edição do Arquivo para IP Estático: '''/etc/network/interfaces''' <br />
<br />
# This file describes the network interfaces available on your system<br />
# and how to activate them. For more information, see interfaces(5).<br />
# The loopback network interface<br />
auto lo<br />
iface lo inet loopback<br />
# The primary network interface<br />
auto eth0<br />
iface eth0 inet static<br />
address 200.135.37.100<br />
netmask 255.255.255.192<br />
gateway 200.135.37.126 <br />
<br />
- Edição do Arquivo do servidor DNS '''/etc/bind/named.conf''' <br />
<br />
Indica todos os arquivos que vai fazer a configuração dele<br />
<br />
// This is the primary configuration file for the BIND DNS server named.<br />
//<br />
// Please read /usr/share/doc/bind9/README.Debian.gz for information on the <br />
// structure of BIND configuration files in Debian, *BEFORE* you customize <br />
// this configuration file.<br />
//<br />
// If you are just adding zones, please do that in /etc/bind/named.conf.local<br />
include "/etc/bind/named.conf.options";<br />
include "/etc/bind/named.conf.local";<br />
include "/etc/bind/named.conf.default-zones";<br />
include "/etc/bind/servidor.conf";<br />
include "/etc/bind/tecnico.conf";<br />
include "/etc/bind/daniel.conf";<br />
<br />
- Edição do Arquivo de servidor DNS: named.conf.local '''/etc/bind/named.conf.local'''<br />
É um arquivo padrão do BIND onde foi configurado o o nosso dominino TELETEC.<br />
<br />
//<br />
// Do any local configuration here<br />
//<br />
<br />
// Consider adding the 1918 zones here, if they are not used in your<br />
// organization<br />
//include "/etc/bind/zones.rfc1918"8;<br />
zone "teletec.sj.ifsc.edu.br." IN {<br />
type master;<br />
file "/etc/bind/teletec.zone";<br />
allow-update { none; };<br />
};<br />
<br />
- Edição do Arquivo de DNS Reverso: '''/etc/bind/37.135.200.in-addr.arpa'''<br />
O DNS Reverso resolve um endereço IP para um nome de servidor – por exemplo, ele poderia resolver 200.176.3.142 para exemplo.hipotetico.com.br.<br />
<br />
$TTL 86400<br />
@ IN SOA servidor.teletec.sj.ifsc.edu.br. root (<br />
2011061500 ;<br />
1d ;<br />
1h ;<br />
1w ; <br />
1d ;<br />
)<br />
IN NS servidor.teletec.sj.ifsc.edu.br.<br />
100 IN PTR servidor.teletec.sj.ifsc.edu.br.<br />
<br />
- Edição do Arquivo para criar um subdomínio:'''/etc/bind/teletec.zone'''<br />
<br />
$TTL 86400<br />
@ IN SOA teletec.teletec.sj.ifsc.edu.br root (<br />
2011062901;<br />
3H;<br />
15M;<br />
1W;<br />
1D );<br />
IN NS teletec.teletec.sj.ifsc.edu.br.<br />
IN MX 0 mail.teletec.sj.ifsc.edu.br.<br />
localhost IN A 127.0.0.1<br />
$ORIGIN teletec.sj.ifsc.edu.br.<br />
teletec A 200.135.37.100<br />
www A 200.135.37.100<br />
mail A 200.135.37.100<br />
<br />
== Instalação de Equipamento de Redes (Modem, Switch e Roteadores) ==<br />
<br />
'''Configurações:''' <br />
<br />
Instalação:<br />
<br />
minicom -s<br />
<br />
Configuração do Roteador Cisco 1700: <br />
<br />
* Configuração dos Dois Roteadores Utilizando a ferramenta "Minicon" (Se fosse Windows seria Hyperterminal)<br />
* Configuração dos dispositivos: Serial e Ethernet<br />
* Configuração como Protocolo PPP<br />
<br />
- ''"Configuração da porta serial":''<br />
<br />
┌─────────────[configuração]──────────────┐<br />
│ Nomes de arquivos e rotas<br />
│ Protocolos de transferência de arquivos<br />
│ Configuração da porta serial<br />
│ Modem e discagem<br />
│ Tela e teclado<br />
│ Salvar configuração como dfl<br />
│ Salvar configuração como<br />
│ Sair<br />
│ Sair do Minicom<br />
└────────────────────────────────────────┘<br />
<br />
- ''"Alteração da Porta Serial"''<br />
┌──────────────────────────────────────────────────────────┐<br />
│ A – Dispositivo Serial : /dev/ttSy0 <br />
│ B – Localização do Arquivo de Travamento : /var/lock<br />
│ C – Programa de Entrada :<br />
│ D – Programa de Saída :<br />
│ E – Bps/Paridade/Bits : 9600 8N1 <br />
│ F – Controle de Fluxo por Hardware : Não<br />
│ G – Controle de Fluxo por Software : Não<br />
│<br />
│ Alterar qual configuração?<br />
└──────────────────────────────────────────────────────────┘<br />
<br />
- ''"Salvar configuração com dfl"''<br />
<br />
- ''Configurando a Interface Serial do Roteador:''<br />
<br />
enable;<br />
configure terminal;<br />
<br />
#Para configurar a interface serial:<br />
interface serial 0;<br />
ip address 10.0.0.1/30;<br />
encapsulation ppp;<br />
exit;<br />
<br />
#Para configurar a interface ethernet:<br />
interface fastethernet 0;<br />
ip address 172.18.0.1/24;<br />
exit;<br />
exit;<br />
<br />
#Para salvar as configurações:<br />
wr;<br />
<br />
'''Radius'''<br />
<br />
Para ter acesso a rede aDSL ou pela rede sem fio será usado Radius para que os usuários sejam autenticados. O RADIUS é um sistema utilizado para prover uma autenticação centralizada em redes dial-up, VPN's (Virtual Private Network) e redes sem fio. Ele tem um modelo cliente-servidor, onde o cliente é o Network Access Server (NAS). Esse servidor é responsável por obter a informação sobre o cliente e repassá-la para o servidor RADIUS, além de interpretar a resposta, dando ou não acesso ao cliente. O servidor RADIUS é responsável por receber pedidos de conexão, autenticar o usuário e repassar ao NAS as informações necessárias para esse dar acesso ao usuário na rede. <br />
<br />
'''Arquivos configurados:''' <br />
<br />
Configurar login e senha para o cliente Radius ( /etc/freeradius<br />
/users ):<br />
<br />
“Usúario” Cleartext-Password := "senha"<br />
“Usúario” User-Password := "senha"<br />
<br />
Configurando o Servidor PPPoe (/etc/ppp/pppoe-servers-options): <br />
<br />
require-chap<br />
auth<br />
lcp-echo-interval 10<br />
lcp-echo-failure 2<br />
ms-dns IP do seu servidor DNS<br />
netmask 255.255.255.0<br />
noipdefault<br />
debug<br />
kdebug 4<br />
plugin radius.so<br />
plugin radattr.so<br />
radius-config-file /etc/radiusclient/teletec.conf<br />
mru 1492<br />
mtu 1492<br />
<br />
Configuração do Cliente Radius ( etc/radiusclient/teletec.conf ):<br />
<br />
auth_order radius<br />
login_tries 4<br />
login_timeout 60<br />
nologin /etc/nologin<br />
issue /etc/radiusclient/issue<br />
authserver 200.135.37.100<br />
acctserver 200.135.37.100<br />
servers /etc/radiusclient/servers<br />
dictionary /etc/radiusclient/dictionary<br />
login_radius /usr/sbin/login.radius<br />
seqfile /var/run/radius.seq<br />
mapfile /etc/radiusclient/port-id-map<br />
default_realm<br />
radius_timeout 10<br />
radius_retries 3<br />
login_local /bin/login<br />
<br />
Configurando o IP do Servidor Radius ( /etc/radiusclient/servers ):<br />
<br />
200.135.37.100 testing123<br />
<br />
Integrando Radius ao Banco de Dados<br />
<br />
Primeiro procedimento, instale o pacote. <br />
<br />
apt-get install freeradius-mysql<br />
Edite o arquivo de configuração do freeradius, e descomente a seguinte linha <br />
( /etc/freeradius/radiusd.conf ): <br />
<br />
$INCLUDE sql.conf<br />
<br />
Para entrar no MySQL execute o comando: <br />
<br />
mysql -u root -p <br />
<br />
Crie uma base de dados somente para o Radius e dê ao usuário Radius a devida permissão para acesso a esta base. No shell do MySQL, execute os comandos: <br />
<br />
CREATE DATABASE radius;<br />
GRANT ALL ON radius.* TO freerad@localhost IDENTIFIED BY "senha_do_usuário_freeradius";<br />
exit;<br />
<br />
Inserindo informações na base de dados: <br />
<br />
mysql -u “usuário” -p “senha do usuário radius” “database” < /etc/freeradius/sql/mysql/schema.sql<br />
mysql -u “usuário” -p “senha do usuário radius” “database” < /etc/freeradius/sql/mysql/nas.sql<br />
<br />
Editar o arquivo /etc/freeradius/sql.conf, colocando a senha do usuário Radius: <br />
<br />
passwrod = "senha do usuário radius"<br />
<br />
E descomente a linha do mesmo arquivo ( /etc/freeradius/sql.conf ) : <br />
<br />
readclients = yes<br />
<br />
Reinicie o FreeRadius: <br />
<br />
service freeradius restart<br />
<br />
== Cabeamento Estruturado ==<br />
<br />
Atividades Concluídas:<br />
<br />
- o A central telefônica ao DSLAM<br />
- o O DSLAM ao armário de telecom da equipe, através de uma linha telefone + DSL<br />
- o armário da equipe a uma área de trabalho. <br />
- O cabeamento permitiu a conexão do modem DSL no armário de telecom.<br />
- As tomadas da área de trabalho para conexão com Telefone e o Modem ADSL.<br />
<br />
== Programação para Redes de Computadores ==<br />
<br />
'''Os Arquivos PHP (pagina Web) Encontram-se dentro da pasta: ''/var/www/teletec'''''<br />
<br />
- Edição do Arquivo '''Verificação.php''':<br />
<br />
<?<br />
session_start();<br />
$login = $_POST['login'];<br />
$senha = $_POST['senha'];<br />
if ( ( $login == "Administrador" ) && ( $senha == "orelha1234" ) ){<br />
$_SESSION['autorizado'] = $login;<br />
Header ("Location: principal.php");<br />
}else{<br />
Header ("Location: login.php");<br />
}<br />
?><br />
<br />
- Edição do Arquivo '''sair.php''':<br />
<br />
<?<br />
session_start();<br />
session_destroy();<br />
Header ("Location: login.php");<br />
?><br />
<br />
- Edição do arquivo '''principal.php''': <br />
<br />
<.?<br />
.session_start();<br />
.if (!isset($_SESSION['autorizado'])){<br />
.header ("Location: login.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Administrcao de Dominios</title><br />
<./head><br />
<.body><br />
<.p><a href="sair.php">Sair</a></p><br />
<.p></p><br />
<.p style="text-align:center;margin-left:auto;margin-right:auto;">Cliente Dominio Acao </p><br />
<br />
<.?<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$consulta = "SELECT * from clientes";<br />
$resultado = mysql_query($consulta,$conexao);<br />
while($linha = mysql_fetch_array($resultado)){<br />
$cliente = $linha['cliente'];<br />
$dominio = $linha['dominio'];<br />
.?><br />
<.form><br />
<.p style="text-align:center;margin-left:auto;margin-right:auto;"><br />
<.a name="cliente" id="cliente" href="alterar.php?id=<? echo $linha['dominio'];?>"> <?echo $.linha['cliente'];?></a> <br />
<.? echo $linha['dominio'];?> <a href="excluir.php?id=<? echo $linha['dominio'];?>"> Excluir</a></p><br />
<./form><br />
<.?<br />
.}<br />
.mysql_free_result($resultado);<br />
.mysql_close($conexao);<br />
.}<br />
.?><br />
<.p style="text-align:right;margin-left:auto;margin-right:0;"><br />
<.a href="adicionar.php"><span style="color:#ff0000">Adicionar novo dominio</span></a></p><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''mod-domínio.php''':<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$cliente = $_POST['cliente'];<br />
$dominio = $_POST['dominio'];<br />
$antigo = $_POST['antigo'];;<br />
if (empty($dominio)) {<br />
$dominio = "invalido";<br />
} <br />
<br />
if (preg_match('/^[a-z0-9]+/', $dominio)){<br />
}else{<br />
$dominio = "invalido";<br />
} <br />
<br />
$arquivo = '/etc/bind/named.conf';<br />
$linhas = array();<br />
exec("cat $arquivo",$linhas);<br />
for ($i = 0 ; $i < sizeof($linhas); $i++){<br />
if ($linhas[$i] == "include \"/etc/bind/$dominio.conf\";"){<br />
$dominio = "invalido";<br />
}<br />
}<br />
if ($dominio == "invalido"){<br />
header ("Location: alterar.php");<br />
}else{ <br />
<br />
$script = "/etc/teletec/mod-dominio.sh $antigo '$cliente' $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$deletar = "DELETE FROM clientes WHERE dominio='$antigo.teletec.sj.ifsc.edu.br'";<br />
mysql_query($deletar,$conexao);<br />
mysql_close($conexao); <br />
<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$inserir = "INSERT INTO clientes (cliente,dominio) VALUES ('$cliente','$dominio.teletec.sj.ifsc.edu.br')";<br />
mysql_query($inserir,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php"); <br />
<br />
}<br />
.}<br />
?.><br />
<br />
- Edição do Arquivo '''login.php''': <br />
<br />
.<?<br />
.session_start();<br />
.if (isset($_SESSION['autorizado'])){<br />
.Header ("Location: principal.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Hospedagem Web</title><br />
<./head><br />
<br />
<.body><br />
<.p></p><br />
<.p>Sistemas de Hospedagem de Sitios Web</p><br />
<.p></p><br />
<.form name="formTeste" action="verificacao.php" method="post"><br />
<.p>Usu&#xe1;rio:<br><br />
<.input type="text" name="login"> <br />
<.p>Senha:<br> <br />
<.input type="password" name="senha"> <br />
<.input type="submit" name="b_enviar" value="Entrar"><br />
<./form><br />
<.p></p><br />
<.?<br />
}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''Index.php''':<br />
<br />
<.?<br />
Header ("Location: login.php");<br />
.?><br />
<br />
- Edição do Arquivo '''excluir.php''':<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){ <br />
header ("Location: login.php");<br />
}else{<br />
$id=$_GET['id'];<br />
$parte1 = explode(".", $id);<br />
$antigo = $parte1[0];<br />
?.><br />
<.html><br />
<head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Excluir o cliente</title><br />
<./head><br />
<.body><br />
<.p>Voce realmente deseja excluir o cliente?</p><br />
<br />
<.p><a href="del-dominio.php?id=<?echo $antigo;?>">Sim</a> <a<br />
.href="principal.php">Nao</a></p><br />
<.p></p><br />
<?<br />
}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''del-dominio.php''':<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$dominio = $_GET['id'];<br />
$script = "/etc/teletec/del-dominio.sh $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$deletar = "DELETE FROM clientes WHERE dominio='$dominio.teletec.sj.ifsc.edu.br'";<br />
mysql_query($deletar,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php");<br />
}<br />
?.><br />
<br />
- Edição do '''Arquivo alterar.php''': <br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){ <br />
header ("Location: login.php");<br />
}else{<br />
$id=$_GET['id'];<br />
$parte1 = explode(".", $id);<br />
$antigo = $parte1[0];<br />
?.><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Alterar Dominio</title><br />
</.head><br />
<.body><br />
<.p><.a href="principal.php">Voltar </a></p><br />
<.form name="formTeste" action="mod-dominio.php" method="post"><br />
<.p>Novo nome do cliente: <br><br />
<.input type="text" name="cliente"><br />
<.p>Novo dominio: <br><br />
<.input type="text" name="dominio"><br />
<.input type="hidden" name="antigo" value="<?echo $antigo;?>"> <br />
<.input type="submit" name="b_enviar" value="Alterar"><br />
<./form><br />
<.?<br />
}<br />
?.><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''adicionar.php''':<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Adicionar Cliente</title><br />
<./head><br />
<.body><br />
<.p><.a href="principal.php">Voltar </a></p><br />
<.form name="formTeste" action="add-dominio.php" method="post"><br />
<.p>Nome do cliente: <br><br />
<.input type="text" name="cliente"><br />
<.p>Dominio: <br><br />
<.input type="text" name="dominio"><br />
<.input type="submit" name="b_enviar" value="Criar"><br />
<./form><br />
<.?<br />
.}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''add-dominio.php''':<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$cliente = $_POST['cliente'];<br />
$dominio = $_POST['dominio']; <br />
<br />
if (empty($dominio)) {<br />
$dominio = "invalido";<br />
} <br />
<br />
if (preg_match('/^[a-z0-9]+/', $dominio)){<br />
}else{<br />
$dominio = "invalido";<br />
} <br />
<br />
$arquivo = '/etc/bind/named.conf';<br />
$linhas = array();<br />
exec("cat $arquivo",$linhas);<br />
for ($i = 0 ; $i < sizeof($linhas); $i++){<br />
if ($linhas[$i] == "include \"/etc/bind/$dominio.conf\";"){<br />
$dominio = "invalido";<br />
}<br />
}<br />
if ($dominio == "invalido"){<br />
header ("Location: adicionar.php");<br />
}else{<br />
$script = "/etc/teletec/add-dominio.sh '$cliente' $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$inserir = "INSERT INTO clientes (cliente,dominio) VALUES ('$cliente','$dominio.teletec.sj.ifsc.edu.br')";<br />
mysql_query($inserir,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php");<br />
}<br />
}<br />
?.><br />
<br />
'''Os Arquivos .sh (scripts que adicionam, removem ou alteram os usuários no servidor) Encontram-se dentro da pasta: ''/etc/teletec''''' <br />
<br />
- Edição do Arquivo '''mod-dominio.sh''':<br />
<br />
#!/bin/bash<br />
#Leonardo<br />
#echo -n "Dominio: "<br />
#read antigo<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$antigo'.conf";' ];then<br />
# valido=sim<br />
# break<br />
# else<br />
# valido=nao<br />
# fi<br />
#done<br />
#if [ $valido = nao ];then<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio não existe ou esta em branco.\n"<br />
# exit<br />
#fi<br />
#echo -n "Novo nome para o cliente: "<br />
#read nome<br />
#echo -n "Novo dominio: "<br />
#read dominio<br />
#echo=${dominio:=nulo}<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$dominio'.conf";' ];then<br />
# dominio=existe<br />
# break<br />
# fi<br />
#done<br />
#if [ $dominio != nulo ] && [ $dominio != existe ];then<br />
antigo=$1<br />
nome=$2<br />
dominio=$3<br />
sudo sed -i '/\/etc\/bind\/'$antigo'\.conf/Id' /etc/bind/named.conf<br />
sudo rm /etc/bind/$antigo.conf<br />
sudo rm /etc/bind/$antigo.zone<br />
sudo rm /etc/apache2/sites-enabled/$antigo-default<br />
sudo rm -r /var/www/$antigo<br />
sudo sed -i '/'$antigo'\.teletec\.sj\.ifsc\.edu\.br Subdominio-'$antigo'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$antigo'@teletec\.sj\.ifsc\.edu\.br '$antigo'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$antigo'\.teletec\.sj\.ifsc\.edu\.br OK/Id' /etc/postfix/mydomains <br />
<br />
sudo echo 'include "/etc/bind/'$dominio'.conf";' >> /etc/bind/named.conf<br />
numero=`date | cut -d ":" -f 3 | cut -d " " -f 1`<br />
novoserial=$((1000000000+$numero))<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.conf > /etc/bind/$dominio.conf<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.zone | sed s/2011061504/$novoserial/g > /etc/bind/$dominio.zone<br />
sudo /etc/init.d/bind9 restart<br />
sudo sed s/padrao/$dominio/g /etc/apache2/sites-available/padrao-default > /etc/apache2/sites-enabled/$dominio-default<br />
mkdir /var/www/$dominio<br />
sed s/dominio/$dominio/g /var/www/padrao/index.html | sed s/nome/"$nome"/g > /var/www/$dominio/index.html<br />
sudo echo ' ' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br Subdominio-'$dominio'' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'@teletec.sj.ifsc.edu.br '$dominio'' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br OK' >> /etc/postfix/mydomains<br />
sudo postmap /etc/postfix/virtual<br />
sudo postmap /etc/postfix/mydomains<br />
sudo /etc/init.d/postfix restart<br />
# echo -e " * Dominio modificado com sucesso!\t\t\t\t[ OK ]\n"<br />
# else<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio ja existe ou esta em branco.\n"<br />
#fi<br />
<br />
- Edição do Arquivo '''del-dominio.sh''':<br />
<br />
#!/bin/bash<br />
#Leonardo<br />
#echo -n "Dominio: "<br />
#read dominio<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$dominio'.conf";' ];then<br />
dominio=$1<br />
sudo sed -i '/\/etc\/bind\/'$dominio'\.conf/Id' /etc/bind/named.conf<br />
sudo rm /etc/bind/$dominio.conf<br />
sudo rm /etc/bind/$dominio.zone<br />
sudo /etc/init.d/bind9 restart<br />
sudo rm /etc/apache2/sites-enabled/$dominio-default<br />
sudo rm -r /var/www/$dominio<br />
sudo sed -i '/'$dominio'\.teletec\.sj\.ifsc\.edu\.br Subdominio-'$dominio'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$dominio'@teletec\.sj\.ifsc\.edu\.br '$dominio'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$dominio'\.teletec\.sj\.ifsc\.edu\.br OK/Id' /etc/postfix/mydomains<br />
sudo postmap /etc/postfix/virtual<br />
sudo postmap /etc/postfix/mydomains<br />
sudo /etc/init.d/postfix restart<br />
# echo -e " * Dominio removido com sucesso!\t\t\t\t[ OK ]\n"<br />
# exit<br />
# fi<br />
#done<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio não existe ou esta em branco.\n"</div>Vagner.chttps://wiki.sj.ifsc.edu.br/index.php?title=Projeto_Integrador_-_2011.1_-_Teletec&diff=34787Projeto Integrador - 2011.1 - Teletec2011-07-09T00:31:56Z<p>Vagner.c: /* Programação para Redes de Computadores */</p>
<hr />
<div>== * '''Equipe 2 : TELETEC''' ==<br />
<br />
----<br />
<br />
== INTEGRANTES TELETEC ==<br />
<br />
* '''Daniel Estefano'''; estefano.daniel@gmail.com <br />
* '''Denis Teixeira'''; denisteixeira3@gmail.com <br />
* '''Leonardo Oliveira P.'''; leonardo-op@live.com <br />
* '''Odair de Moraes'''; odairdmoraes@hotmail.com<br />
* '''Robson de Carvalho'''; rob_carvalho12@hotmail.com<br />
* '''Vagner Cordeiro.''' cordeirotelecom@gmail.com<br />
<br />
----<br />
<br />
'''EMPRESA TELETEC - PROVEDOR DE ACESSO Á INTERNET:'''<br />
<br />
A Empresa Oferece os seguintes serviços: <br />
<br />
# Conta de Usuário para cada cliente;<br />
# Conta de E-mail para cada cliente;<br />
# Uma página Web Padrão;<br />
# Instalação do Modem ADSL e do Cabeamento Estrurado;<br />
# Acesso Wirelles;<br />
<br />
<br />
== Etapas Iniciais de Configurações da Rede ==<br />
<br />
<br />
# Instalação do Sistema Operacional:Ubuntu-Server;<br />
# Definido Sistema de Arquivo, Dividido em 3 Partições: ''1 Partição Primátia, 1 Partição Secundária e uma Partição para Swap;'' <br />
# Definido nome do Domínio: teletec.sj.ifsc.edu.br;<br />
# Criado um Usuário: Tecnico;<br />
# Acesso via SSH ao Servidor Teletec.<br />
<br />
----<br />
<br />
== Gerencia de Redes: Apache, Postfix e DNS ==<br />
<br />
'''Configurações do servidor DNS:''' <br />
<br />
- Edição do Arquivo para IP Estático: '''/etc/network/interfaces''' <br />
<br />
# This file describes the network interfaces available on your system<br />
# and how to activate them. For more information, see interfaces(5).<br />
# The loopback network interface<br />
auto lo<br />
iface lo inet loopback<br />
# The primary network interface<br />
auto eth0<br />
iface eth0 inet static<br />
address 200.135.37.100<br />
netmask 255.255.255.192<br />
gateway 200.135.37.126 <br />
<br />
- Edição do Arquivo do servidor DNS '''/etc/bind/named.conf''' <br />
<br />
Indica todos os arquivos que vai fazer a configuração dele<br />
<br />
// This is the primary configuration file for the BIND DNS server named.<br />
//<br />
// Please read /usr/share/doc/bind9/README.Debian.gz for information on the <br />
// structure of BIND configuration files in Debian, *BEFORE* you customize <br />
// this configuration file.<br />
//<br />
// If you are just adding zones, please do that in /etc/bind/named.conf.local<br />
include "/etc/bind/named.conf.options";<br />
include "/etc/bind/named.conf.local";<br />
include "/etc/bind/named.conf.default-zones";<br />
include "/etc/bind/servidor.conf";<br />
include "/etc/bind/tecnico.conf";<br />
include "/etc/bind/daniel.conf";<br />
<br />
- Edição do Arquivo de servidor DNS: named.conf.local '''/etc/bind/named.conf.local'''<br />
É um arquivo padrão do BIND onde foi configurado o o nosso dominino TELETEC.<br />
<br />
//<br />
// Do any local configuration here<br />
//<br />
<br />
// Consider adding the 1918 zones here, if they are not used in your<br />
// organization<br />
//include "/etc/bind/zones.rfc1918"8;<br />
zone "teletec.sj.ifsc.edu.br." IN {<br />
type master;<br />
file "/etc/bind/teletec.zone";<br />
allow-update { none; };<br />
};<br />
<br />
- Edição do Arquivo de DNS Reverso: '''/etc/bind/37.135.200.in-addr.arpa'''<br />
O DNS Reverso resolve um endereço IP para um nome de servidor – por exemplo, ele poderia resolver 200.176.3.142 para exemplo.hipotetico.com.br.<br />
<br />
$TTL 86400<br />
@ IN SOA servidor.teletec.sj.ifsc.edu.br. root (<br />
2011061500 ;<br />
1d ;<br />
1h ;<br />
1w ; <br />
1d ;<br />
)<br />
IN NS servidor.teletec.sj.ifsc.edu.br.<br />
100 IN PTR servidor.teletec.sj.ifsc.edu.br.<br />
<br />
- Edição do Arquivo para criar um subdomínio:'''/etc/bind/teletec.zone'''<br />
<br />
$TTL 86400<br />
@ IN SOA teletec.teletec.sj.ifsc.edu.br root (<br />
2011062901;<br />
3H;<br />
15M;<br />
1W;<br />
1D );<br />
IN NS teletec.teletec.sj.ifsc.edu.br.<br />
IN MX 0 mail.teletec.sj.ifsc.edu.br.<br />
localhost IN A 127.0.0.1<br />
$ORIGIN teletec.sj.ifsc.edu.br.<br />
teletec A 200.135.37.100<br />
www A 200.135.37.100<br />
mail A 200.135.37.100<br />
<br />
== Instalação de Equipamento de Redes (Modem, Switch e Roteadores) ==<br />
<br />
'''Configurações:''' <br />
<br />
Instalação:<br />
<br />
minicom -s<br />
<br />
Configuração do Roteador Cisco 1700: <br />
<br />
* Configuração dos Dois Roteadores Utilizando a ferramenta "Minicon" (Se fosse Windows seria Hyperterminal)<br />
* Configuração dos dispositivos: Serial e Ethernet<br />
* Configuração como Protocolo PPP<br />
<br />
- ''"Configuração da porta serial":''<br />
<br />
┌─────────────[configuração]──────────────┐<br />
│ Nomes de arquivos e rotas<br />
│ Protocolos de transferência de arquivos<br />
│ Configuração da porta serial<br />
│ Modem e discagem<br />
│ Tela e teclado<br />
│ Salvar configuração como dfl<br />
│ Salvar configuração como<br />
│ Sair<br />
│ Sair do Minicom<br />
└────────────────────────────────────────┘<br />
<br />
- ''"Alteração da Porta Serial"''<br />
┌──────────────────────────────────────────────────────────┐<br />
│ A – Dispositivo Serial : /dev/ttSy0 <br />
│ B – Localização do Arquivo de Travamento : /var/lock<br />
│ C – Programa de Entrada :<br />
│ D – Programa de Saída :<br />
│ E – Bps/Paridade/Bits : 9600 8N1 <br />
│ F – Controle de Fluxo por Hardware : Não<br />
│ G – Controle de Fluxo por Software : Não<br />
│<br />
│ Alterar qual configuração?<br />
└──────────────────────────────────────────────────────────┘<br />
<br />
- ''"Salvar configuração com dfl"''<br />
<br />
- ''Configurando a Interface Serial do Roteador:''<br />
<br />
enable;<br />
configure terminal;<br />
<br />
#Para configurar a interface serial:<br />
interface serial 0;<br />
ip address 10.0.0.1/30;<br />
encapsulation ppp;<br />
exit;<br />
<br />
#Para configurar a interface ethernet:<br />
interface fastethernet 0;<br />
ip address 172.18.0.1/24;<br />
exit;<br />
exit;<br />
<br />
#Para salvar as configurações:<br />
wr;<br />
<br />
'''Radius'''<br />
<br />
Para ter acesso a rede aDSL ou pela rede sem fio será usado Radius para que os usuários sejam autenticados. O RADIUS é um sistema utilizado para prover uma autenticação centralizada em redes dial-up, VPN's (Virtual Private Network) e redes sem fio. Ele tem um modelo cliente-servidor, onde o cliente é o Network Access Server (NAS). Esse servidor é responsável por obter a informação sobre o cliente e repassá-la para o servidor RADIUS, além de interpretar a resposta, dando ou não acesso ao cliente. O servidor RADIUS é responsável por receber pedidos de conexão, autenticar o usuário e repassar ao NAS as informações necessárias para esse dar acesso ao usuário na rede. <br />
<br />
'''Arquivos configurados:''' <br />
<br />
Configurar login e senha para o cliente Radius ( /etc/freeradius<br />
/users ):<br />
<br />
“Usúario” Cleartext-Password := "senha"<br />
“Usúario” User-Password := "senha"<br />
<br />
Configurando o Servidor PPPoe (/etc/ppp/pppoe-servers-options): <br />
<br />
require-chap<br />
auth<br />
lcp-echo-interval 10<br />
lcp-echo-failure 2<br />
ms-dns IP do seu servidor DNS<br />
netmask 255.255.255.0<br />
noipdefault<br />
debug<br />
kdebug 4<br />
plugin radius.so<br />
plugin radattr.so<br />
radius-config-file /etc/radiusclient/teletec.conf<br />
mru 1492<br />
mtu 1492<br />
<br />
Configuração do Cliente Radius ( etc/radiusclient/teletec.conf ):<br />
<br />
auth_order radius<br />
login_tries 4<br />
login_timeout 60<br />
nologin /etc/nologin<br />
issue /etc/radiusclient/issue<br />
authserver 200.135.37.100<br />
acctserver 200.135.37.100<br />
servers /etc/radiusclient/servers<br />
dictionary /etc/radiusclient/dictionary<br />
login_radius /usr/sbin/login.radius<br />
seqfile /var/run/radius.seq<br />
mapfile /etc/radiusclient/port-id-map<br />
default_realm<br />
radius_timeout 10<br />
radius_retries 3<br />
login_local /bin/login<br />
<br />
Configurando o IP do Servidor Radius ( /etc/radiusclient/servers ):<br />
<br />
200.135.37.100 testing123<br />
<br />
Integrando Radius ao Banco de Dados<br />
<br />
Primeiro procedimento, instale o pacote. <br />
<br />
apt-get install freeradius-mysql<br />
Edite o arquivo de configuração do freeradius, e descomente a seguinte linha <br />
( /etc/freeradius/radiusd.conf ): <br />
<br />
$INCLUDE sql.conf<br />
<br />
Para entrar no MySQL execute o comando: <br />
<br />
mysql -u root -p <br />
<br />
Crie uma base de dados somente para o Radius e dê ao usuário Radius a devida permissão para acesso a esta base. No shell do MySQL, execute os comandos: <br />
<br />
CREATE DATABASE radius;<br />
GRANT ALL ON radius.* TO freerad@localhost IDENTIFIED BY "senha_do_usuário_freeradius";<br />
exit;<br />
<br />
Inserindo informações na base de dados: <br />
<br />
mysql -u “usuário” -p “senha do usuário radius” “database” < /etc/freeradius/sql/mysql/schema.sql<br />
mysql -u “usuário” -p “senha do usuário radius” “database” < /etc/freeradius/sql/mysql/nas.sql<br />
<br />
Editar o arquivo /etc/freeradius/sql.conf, colocando a senha do usuário Radius: <br />
<br />
passwrod = "senha do usuário radius"<br />
<br />
E descomente a linha do mesmo arquivo ( /etc/freeradius/sql.conf ) : <br />
<br />
readclients = yes<br />
<br />
Reinicie o FreeRadius: <br />
<br />
service freeradius restart<br />
<br />
== Cabeamento Estruturado ==<br />
<br />
Atividades Concluídas:<br />
<br />
- o A central telefônica ao DSLAM<br />
- o O DSLAM ao armário de telecom da equipe, através de uma linha telefone + DSL<br />
- o armário da equipe a uma área de trabalho. <br />
- O cabeamento permitiu a conexão do modem DSL no armário de telecom.<br />
- As tomadas da área de trabalho para conexão com Telefone e o Modem ADSL.<br />
<br />
== Programação para Redes de Computadores ==<br />
<br />
'''Os Arquivos PHP (pagina Web) Encontram-se dentro da pasta: ''/var/www/teletec'''''<br />
<br />
- Edição do Arquivo '''Verificação.php''':<br />
<br />
<?<br />
session_start();<br />
$login = $_POST['login'];<br />
$senha = $_POST['senha'];<br />
if ( ( $login == "Administrador" ) && ( $senha == "orelha1234" ) ){<br />
$_SESSION['autorizado'] = $login;<br />
Header ("Location: principal.php");<br />
}else{<br />
Header ("Location: login.php");<br />
}<br />
?><br />
<br />
- Edição do Arquivo '''sair.php''':<br />
<br />
<?<br />
session_start();<br />
session_destroy();<br />
Header ("Location: login.php");<br />
?><br />
<br />
- Edição do arquivo '''principal.php''': <br />
<br />
<.?<br />
.session_start();<br />
.if (!isset($_SESSION['autorizado'])){<br />
.header ("Location: login.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Administrcao de Dominios</title><br />
<./head><br />
<.body><br />
<.p><a href="sair.php">Sair</a></p><br />
<.p></p><br />
<.p style="text-align:center;margin-left:auto;margin-right:auto;">Cliente Dominio Acao </p><br />
<br />
<.?<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$consulta = "SELECT * from clientes";<br />
$resultado = mysql_query($consulta,$conexao);<br />
while($linha = mysql_fetch_array($resultado)){<br />
$cliente = $linha['cliente'];<br />
$dominio = $linha['dominio'];<br />
.?><br />
<.form><br />
<.p style="text-align:center;margin-left:auto;margin-right:auto;"><br />
<.a name="cliente" id="cliente" href="alterar.php?id=<? echo $linha['dominio'];?>"> <?echo $.linha['cliente'];?></a> <br />
<.? echo $linha['dominio'];?> <a href="excluir.php?id=<? echo $linha['dominio'];?>"> Excluir</a></p><br />
<./form><br />
<.?<br />
.}<br />
.mysql_free_result($resultado);<br />
.mysql_close($conexao);<br />
.}<br />
.?><br />
<.p style="text-align:right;margin-left:auto;margin-right:0;"><br />
<.a href="adicionar.php"><span style="color:#ff0000">Adicionar novo dominio</span></a></p><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''mod-domínio.php''':<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$cliente = $_POST['cliente'];<br />
$dominio = $_POST['dominio'];<br />
$antigo = $_POST['antigo'];;<br />
if (empty($dominio)) {<br />
$dominio = "invalido";<br />
} <br />
<br />
if (preg_match('/^[a-z0-9]+/', $dominio)){<br />
}else{<br />
$dominio = "invalido";<br />
} <br />
<br />
$arquivo = '/etc/bind/named.conf';<br />
$linhas = array();<br />
exec("cat $arquivo",$linhas);<br />
for ($i = 0 ; $i < sizeof($linhas); $i++){<br />
if ($linhas[$i] == "include \"/etc/bind/$dominio.conf\";"){<br />
$dominio = "invalido";<br />
}<br />
}<br />
if ($dominio == "invalido"){<br />
header ("Location: alterar.php");<br />
}else{ <br />
<br />
$script = "/etc/teletec/mod-dominio.sh $antigo '$cliente' $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$deletar = "DELETE FROM clientes WHERE dominio='$antigo.teletec.sj.ifsc.edu.br'";<br />
mysql_query($deletar,$conexao);<br />
mysql_close($conexao); <br />
<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$inserir = "INSERT INTO clientes (cliente,dominio) VALUES ('$cliente','$dominio.teletec.sj.ifsc.edu.br')";<br />
mysql_query($inserir,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php"); <br />
<br />
}<br />
.}<br />
?.><br />
<br />
- Edição do Arquivo '''login.php''': <br />
<br />
.<?<br />
.session_start();<br />
.if (isset($_SESSION['autorizado'])){<br />
.Header ("Location: principal.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Hospedagem Web</title><br />
<./head><br />
<br />
<.body><br />
<.p></p><br />
<.p>Sistemas de Hospedagem de Sitios Web</p><br />
<.p></p><br />
<.form name="formTeste" action="verificacao.php" method="post"><br />
<.p>Usu&#xe1;rio:<br><br />
<.input type="text" name="login"> <br />
<.p>Senha:<br> <br />
<.input type="password" name="senha"> <br />
<.input type="submit" name="b_enviar" value="Entrar"><br />
<./form><br />
<.p></p><br />
<.?<br />
}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''Index.php''':<br />
<br />
<.?<br />
Header ("Location: login.php");<br />
.?><br />
<br />
- Edição do Arquivo '''excluir.php''':<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){ <br />
header ("Location: login.php");<br />
}else{<br />
$id=$_GET['id'];<br />
$parte1 = explode(".", $id);<br />
$antigo = $parte1[0];<br />
?.><br />
<.html><br />
<head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Excluir o cliente</title><br />
<./head><br />
<.body><br />
<.p>Voce realmente deseja excluir o cliente?</p><br />
<br />
<.p><a href="del-dominio.php?id=<?echo $antigo;?>">Sim</a> <a<br />
.href="principal.php">Nao</a></p><br />
<.p></p><br />
<?<br />
}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''del-dominio.php''':<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$dominio = $_GET['id'];<br />
$script = "/etc/teletec/del-dominio.sh $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$deletar = "DELETE FROM clientes WHERE dominio='$dominio.teletec.sj.ifsc.edu.br'";<br />
mysql_query($deletar,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php");<br />
}<br />
?.><br />
<br />
- Edição do '''Arquivo alterar.php''': <br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){ <br />
header ("Location: login.php");<br />
}else{<br />
$id=$_GET['id'];<br />
$parte1 = explode(".", $id);<br />
$antigo = $parte1[0];<br />
?.><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Alterar Dominio</title><br />
</.head><br />
<.body><br />
<.p><.a href="principal.php">Voltar </a></p><br />
<.form name="formTeste" action="mod-dominio.php" method="post"><br />
<.p>Novo nome do cliente: <br><br />
<.input type="text" name="cliente"><br />
<.p>Novo dominio: <br><br />
<.input type="text" name="dominio"><br />
<.input type="hidden" name="antigo" value="<?echo $antigo;?>"> <br />
<.input type="submit" name="b_enviar" value="Alterar"><br />
<./form><br />
<.?<br />
}<br />
?.><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''adicionar.php''':<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Adicionar Cliente</title><br />
<./head><br />
<.body><br />
<.p><.a href="principal.php">Voltar </a></p><br />
<.form name="formTeste" action="add-dominio.php" method="post"><br />
<.p>Nome do cliente: <br><br />
<.input type="text" name="cliente"><br />
<.p>Dominio: <br><br />
<.input type="text" name="dominio"><br />
<.input type="submit" name="b_enviar" value="Criar"><br />
<./form><br />
<.?<br />
.}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''add-dominio.php''':<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$cliente = $_POST['cliente'];<br />
$dominio = $_POST['dominio']; <br />
<br />
if (empty($dominio)) {<br />
$dominio = "invalido";<br />
} <br />
<br />
if (preg_match('/^[a-z0-9]+/', $dominio)){<br />
}else{<br />
$dominio = "invalido";<br />
} <br />
<br />
$arquivo = '/etc/bind/named.conf';<br />
$linhas = array();<br />
exec("cat $arquivo",$linhas);<br />
for ($i = 0 ; $i < sizeof($linhas); $i++){<br />
if ($linhas[$i] == "include \"/etc/bind/$dominio.conf\";"){<br />
$dominio = "invalido";<br />
}<br />
}<br />
if ($dominio == "invalido"){<br />
header ("Location: adicionar.php");<br />
}else{<br />
$script = "/etc/teletec/add-dominio.sh '$cliente' $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$inserir = "INSERT INTO clientes (cliente,dominio) VALUES ('$cliente','$dominio.teletec.sj.ifsc.edu.br')";<br />
mysql_query($inserir,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php");<br />
}<br />
}<br />
?.><br />
<br />
'''Os Arquivos .sh (scripts que adicionam, removem ou alteram os usuários no servidor) Encontram-se dentro da pasta: ''/etc/teletec''''' <br />
<br />
- Edição do Arquivo '''mod-dominio.sh'''<br />
<br />
#!/bin/bash<br />
#Leonardo<br />
#echo -n "Dominio: "<br />
#read antigo<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$antigo'.conf";' ];then<br />
# valido=sim<br />
# break<br />
# else<br />
# valido=nao<br />
# fi<br />
#done<br />
#if [ $valido = nao ];then<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio não existe ou esta em branco.\n"<br />
# exit<br />
#fi<br />
#echo -n "Novo nome para o cliente: "<br />
#read nome<br />
#echo -n "Novo dominio: "<br />
#read dominio<br />
#echo=${dominio:=nulo}<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$dominio'.conf";' ];then<br />
# dominio=existe<br />
# break<br />
# fi<br />
#done<br />
#if [ $dominio != nulo ] && [ $dominio != existe ];then<br />
antigo=$1<br />
nome=$2<br />
dominio=$3<br />
sudo sed -i '/\/etc\/bind\/'$antigo'\.conf/Id' /etc/bind/named.conf<br />
sudo rm /etc/bind/$antigo.conf<br />
sudo rm /etc/bind/$antigo.zone<br />
sudo rm /etc/apache2/sites-enabled/$antigo-default<br />
sudo rm -r /var/www/$antigo<br />
sudo sed -i '/'$antigo'\.teletec\.sj\.ifsc\.edu\.br Subdominio-'$antigo'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$antigo'@teletec\.sj\.ifsc\.edu\.br '$antigo'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$antigo'\.teletec\.sj\.ifsc\.edu\.br OK/Id' /etc/postfix/mydomains <br />
<br />
sudo echo 'include "/etc/bind/'$dominio'.conf";' >> /etc/bind/named.conf<br />
numero=`date | cut -d ":" -f 3 | cut -d " " -f 1`<br />
novoserial=$((1000000000+$numero))<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.conf > /etc/bind/$dominio.conf<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.zone | sed s/2011061504/$novoserial/g > /etc/bind/$dominio.zone<br />
sudo /etc/init.d/bind9 restart<br />
sudo sed s/padrao/$dominio/g /etc/apache2/sites-available/padrao-default > /etc/apache2/sites-enabled/$dominio-default<br />
mkdir /var/www/$dominio<br />
sed s/dominio/$dominio/g /var/www/padrao/index.html | sed s/nome/"$nome"/g > /var/www/$dominio/index.html<br />
sudo echo ' ' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br Subdominio-'$dominio'' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'@teletec.sj.ifsc.edu.br '$dominio'' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br OK' >> /etc/postfix/mydomains<br />
sudo postmap /etc/postfix/virtual<br />
sudo postmap /etc/postfix/mydomains<br />
sudo /etc/init.d/postfix restart<br />
# echo -e " * Dominio modificado com sucesso!\t\t\t\t[ OK ]\n"<br />
# else<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio ja existe ou esta em branco.\n"<br />
#fi</div>Vagner.chttps://wiki.sj.ifsc.edu.br/index.php?title=Projeto_Integrador_-_2011.1_-_Teletec&diff=34786Projeto Integrador - 2011.1 - Teletec2011-07-09T00:28:19Z<p>Vagner.c: /* Programação para Redes de Computadores */</p>
<hr />
<div>== * '''Equipe 2 : TELETEC''' ==<br />
<br />
----<br />
<br />
== INTEGRANTES TELETEC ==<br />
<br />
* '''Daniel Estefano'''; estefano.daniel@gmail.com <br />
* '''Denis Teixeira'''; denisteixeira3@gmail.com <br />
* '''Leonardo Oliveira P.'''; leonardo-op@live.com <br />
* '''Odair de Moraes'''; odairdmoraes@hotmail.com<br />
* '''Robson de Carvalho'''; rob_carvalho12@hotmail.com<br />
* '''Vagner Cordeiro.''' cordeirotelecom@gmail.com<br />
<br />
----<br />
<br />
'''EMPRESA TELETEC - PROVEDOR DE ACESSO Á INTERNET:'''<br />
<br />
A Empresa Oferece os seguintes serviços: <br />
<br />
# Conta de Usuário para cada cliente;<br />
# Conta de E-mail para cada cliente;<br />
# Uma página Web Padrão;<br />
# Instalação do Modem ADSL e do Cabeamento Estrurado;<br />
# Acesso Wirelles;<br />
<br />
<br />
== Etapas Iniciais de Configurações da Rede ==<br />
<br />
<br />
# Instalação do Sistema Operacional:Ubuntu-Server;<br />
# Definido Sistema de Arquivo, Dividido em 3 Partições: ''1 Partição Primátia, 1 Partição Secundária e uma Partição para Swap;'' <br />
# Definido nome do Domínio: teletec.sj.ifsc.edu.br;<br />
# Criado um Usuário: Tecnico;<br />
# Acesso via SSH ao Servidor Teletec.<br />
<br />
----<br />
<br />
== Gerencia de Redes: Apache, Postfix e DNS ==<br />
<br />
'''Configurações do servidor DNS:''' <br />
<br />
- Edição do Arquivo para IP Estático: '''/etc/network/interfaces''' <br />
<br />
# This file describes the network interfaces available on your system<br />
# and how to activate them. For more information, see interfaces(5).<br />
# The loopback network interface<br />
auto lo<br />
iface lo inet loopback<br />
# The primary network interface<br />
auto eth0<br />
iface eth0 inet static<br />
address 200.135.37.100<br />
netmask 255.255.255.192<br />
gateway 200.135.37.126 <br />
<br />
- Edição do Arquivo do servidor DNS '''/etc/bind/named.conf''' <br />
<br />
Indica todos os arquivos que vai fazer a configuração dele<br />
<br />
// This is the primary configuration file for the BIND DNS server named.<br />
//<br />
// Please read /usr/share/doc/bind9/README.Debian.gz for information on the <br />
// structure of BIND configuration files in Debian, *BEFORE* you customize <br />
// this configuration file.<br />
//<br />
// If you are just adding zones, please do that in /etc/bind/named.conf.local<br />
include "/etc/bind/named.conf.options";<br />
include "/etc/bind/named.conf.local";<br />
include "/etc/bind/named.conf.default-zones";<br />
include "/etc/bind/servidor.conf";<br />
include "/etc/bind/tecnico.conf";<br />
include "/etc/bind/daniel.conf";<br />
<br />
- Edição do Arquivo de servidor DNS: named.conf.local '''/etc/bind/named.conf.local'''<br />
É um arquivo padrão do BIND onde foi configurado o o nosso dominino TELETEC.<br />
<br />
//<br />
// Do any local configuration here<br />
//<br />
<br />
// Consider adding the 1918 zones here, if they are not used in your<br />
// organization<br />
//include "/etc/bind/zones.rfc1918"8;<br />
zone "teletec.sj.ifsc.edu.br." IN {<br />
type master;<br />
file "/etc/bind/teletec.zone";<br />
allow-update { none; };<br />
};<br />
<br />
- Edição do Arquivo de DNS Reverso: '''/etc/bind/37.135.200.in-addr.arpa'''<br />
O DNS Reverso resolve um endereço IP para um nome de servidor – por exemplo, ele poderia resolver 200.176.3.142 para exemplo.hipotetico.com.br.<br />
<br />
$TTL 86400<br />
@ IN SOA servidor.teletec.sj.ifsc.edu.br. root (<br />
2011061500 ;<br />
1d ;<br />
1h ;<br />
1w ; <br />
1d ;<br />
)<br />
IN NS servidor.teletec.sj.ifsc.edu.br.<br />
100 IN PTR servidor.teletec.sj.ifsc.edu.br.<br />
<br />
- Edição do Arquivo para criar um subdomínio:'''/etc/bind/teletec.zone'''<br />
<br />
$TTL 86400<br />
@ IN SOA teletec.teletec.sj.ifsc.edu.br root (<br />
2011062901;<br />
3H;<br />
15M;<br />
1W;<br />
1D );<br />
IN NS teletec.teletec.sj.ifsc.edu.br.<br />
IN MX 0 mail.teletec.sj.ifsc.edu.br.<br />
localhost IN A 127.0.0.1<br />
$ORIGIN teletec.sj.ifsc.edu.br.<br />
teletec A 200.135.37.100<br />
www A 200.135.37.100<br />
mail A 200.135.37.100<br />
<br />
== Instalação de Equipamento de Redes (Modem, Switch e Roteadores) ==<br />
<br />
'''Configurações:''' <br />
<br />
Instalação:<br />
<br />
minicom -s<br />
<br />
Configuração do Roteador Cisco 1700: <br />
<br />
* Configuração dos Dois Roteadores Utilizando a ferramenta "Minicon" (Se fosse Windows seria Hyperterminal)<br />
* Configuração dos dispositivos: Serial e Ethernet<br />
* Configuração como Protocolo PPP<br />
<br />
- ''"Configuração da porta serial":''<br />
<br />
┌─────────────[configuração]──────────────┐<br />
│ Nomes de arquivos e rotas<br />
│ Protocolos de transferência de arquivos<br />
│ Configuração da porta serial<br />
│ Modem e discagem<br />
│ Tela e teclado<br />
│ Salvar configuração como dfl<br />
│ Salvar configuração como<br />
│ Sair<br />
│ Sair do Minicom<br />
└────────────────────────────────────────┘<br />
<br />
- ''"Alteração da Porta Serial"''<br />
┌──────────────────────────────────────────────────────────┐<br />
│ A – Dispositivo Serial : /dev/ttSy0 <br />
│ B – Localização do Arquivo de Travamento : /var/lock<br />
│ C – Programa de Entrada :<br />
│ D – Programa de Saída :<br />
│ E – Bps/Paridade/Bits : 9600 8N1 <br />
│ F – Controle de Fluxo por Hardware : Não<br />
│ G – Controle de Fluxo por Software : Não<br />
│<br />
│ Alterar qual configuração?<br />
└──────────────────────────────────────────────────────────┘<br />
<br />
- ''"Salvar configuração com dfl"''<br />
<br />
- ''Configurando a Interface Serial do Roteador:''<br />
<br />
enable;<br />
configure terminal;<br />
<br />
#Para configurar a interface serial:<br />
interface serial 0;<br />
ip address 10.0.0.1/30;<br />
encapsulation ppp;<br />
exit;<br />
<br />
#Para configurar a interface ethernet:<br />
interface fastethernet 0;<br />
ip address 172.18.0.1/24;<br />
exit;<br />
exit;<br />
<br />
#Para salvar as configurações:<br />
wr;<br />
<br />
'''Radius'''<br />
<br />
Para ter acesso a rede aDSL ou pela rede sem fio será usado Radius para que os usuários sejam autenticados. O RADIUS é um sistema utilizado para prover uma autenticação centralizada em redes dial-up, VPN's (Virtual Private Network) e redes sem fio. Ele tem um modelo cliente-servidor, onde o cliente é o Network Access Server (NAS). Esse servidor é responsável por obter a informação sobre o cliente e repassá-la para o servidor RADIUS, além de interpretar a resposta, dando ou não acesso ao cliente. O servidor RADIUS é responsável por receber pedidos de conexão, autenticar o usuário e repassar ao NAS as informações necessárias para esse dar acesso ao usuário na rede. <br />
<br />
'''Arquivos configurados:''' <br />
<br />
Configurar login e senha para o cliente Radius ( /etc/freeradius<br />
/users ):<br />
<br />
“Usúario” Cleartext-Password := "senha"<br />
“Usúario” User-Password := "senha"<br />
<br />
Configurando o Servidor PPPoe (/etc/ppp/pppoe-servers-options): <br />
<br />
require-chap<br />
auth<br />
lcp-echo-interval 10<br />
lcp-echo-failure 2<br />
ms-dns IP do seu servidor DNS<br />
netmask 255.255.255.0<br />
noipdefault<br />
debug<br />
kdebug 4<br />
plugin radius.so<br />
plugin radattr.so<br />
radius-config-file /etc/radiusclient/teletec.conf<br />
mru 1492<br />
mtu 1492<br />
<br />
Configuração do Cliente Radius ( etc/radiusclient/teletec.conf ):<br />
<br />
auth_order radius<br />
login_tries 4<br />
login_timeout 60<br />
nologin /etc/nologin<br />
issue /etc/radiusclient/issue<br />
authserver 200.135.37.100<br />
acctserver 200.135.37.100<br />
servers /etc/radiusclient/servers<br />
dictionary /etc/radiusclient/dictionary<br />
login_radius /usr/sbin/login.radius<br />
seqfile /var/run/radius.seq<br />
mapfile /etc/radiusclient/port-id-map<br />
default_realm<br />
radius_timeout 10<br />
radius_retries 3<br />
login_local /bin/login<br />
<br />
Configurando o IP do Servidor Radius ( /etc/radiusclient/servers ):<br />
<br />
200.135.37.100 testing123<br />
<br />
Integrando Radius ao Banco de Dados<br />
<br />
Primeiro procedimento, instale o pacote. <br />
<br />
apt-get install freeradius-mysql<br />
Edite o arquivo de configuração do freeradius, e descomente a seguinte linha <br />
( /etc/freeradius/radiusd.conf ): <br />
<br />
$INCLUDE sql.conf<br />
<br />
Para entrar no MySQL execute o comando: <br />
<br />
mysql -u root -p <br />
<br />
Crie uma base de dados somente para o Radius e dê ao usuário Radius a devida permissão para acesso a esta base. No shell do MySQL, execute os comandos: <br />
<br />
CREATE DATABASE radius;<br />
GRANT ALL ON radius.* TO freerad@localhost IDENTIFIED BY "senha_do_usuário_freeradius";<br />
exit;<br />
<br />
Inserindo informações na base de dados: <br />
<br />
mysql -u “usuário” -p “senha do usuário radius” “database” < /etc/freeradius/sql/mysql/schema.sql<br />
mysql -u “usuário” -p “senha do usuário radius” “database” < /etc/freeradius/sql/mysql/nas.sql<br />
<br />
Editar o arquivo /etc/freeradius/sql.conf, colocando a senha do usuário Radius: <br />
<br />
passwrod = "senha do usuário radius"<br />
<br />
E descomente a linha do mesmo arquivo ( /etc/freeradius/sql.conf ) : <br />
<br />
readclients = yes<br />
<br />
Reinicie o FreeRadius: <br />
<br />
service freeradius restart<br />
<br />
== Cabeamento Estruturado ==<br />
<br />
Atividades Concluídas:<br />
<br />
- o A central telefônica ao DSLAM<br />
- o O DSLAM ao armário de telecom da equipe, através de uma linha telefone + DSL<br />
- o armário da equipe a uma área de trabalho. <br />
- O cabeamento permitiu a conexão do modem DSL no armário de telecom.<br />
- As tomadas da área de trabalho para conexão com Telefone e o Modem ADSL.<br />
<br />
== Programação para Redes de Computadores ==<br />
<br />
'''Os Arquivos PHP (pagina Web) Encontram-se dentro da pasta: ''/var/www/teletec'''''<br />
<br />
- Edição do Arquivo '''Verificação.php''':<br />
<br />
<?<br />
session_start();<br />
$login = $_POST['login'];<br />
$senha = $_POST['senha'];<br />
if ( ( $login == "Administrador" ) && ( $senha == "orelha1234" ) ){<br />
$_SESSION['autorizado'] = $login;<br />
Header ("Location: principal.php");<br />
}else{<br />
Header ("Location: login.php");<br />
}<br />
?><br />
<br />
- Edição do Arquivo '''sair.php''':<br />
<br />
<?<br />
session_start();<br />
session_destroy();<br />
Header ("Location: login.php");<br />
?><br />
<br />
- Edição do arquivo '''principal.php''': <br />
<br />
<.?<br />
.session_start();<br />
.if (!isset($_SESSION['autorizado'])){<br />
.header ("Location: login.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Administrcao de Dominios</title><br />
<./head><br />
<.body><br />
<.p><a href="sair.php">Sair</a></p><br />
<.p></p><br />
<.p style="text-align:center;margin-left:auto;margin-right:auto;">Cliente Dominio Acao </p><br />
<br />
<.?<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$consulta = "SELECT * from clientes";<br />
$resultado = mysql_query($consulta,$conexao);<br />
while($linha = mysql_fetch_array($resultado)){<br />
$cliente = $linha['cliente'];<br />
$dominio = $linha['dominio'];<br />
.?><br />
<.form><br />
<.p style="text-align:center;margin-left:auto;margin-right:auto;"><br />
<.a name="cliente" id="cliente" href="alterar.php?id=<? echo $linha['dominio'];?>"> <?echo $.linha['cliente'];?></a> <br />
<.? echo $linha['dominio'];?> <a href="excluir.php?id=<? echo $linha['dominio'];?>"> Excluir</a></p><br />
<./form><br />
<.?<br />
.}<br />
.mysql_free_result($resultado);<br />
.mysql_close($conexao);<br />
.}<br />
.?><br />
<.p style="text-align:right;margin-left:auto;margin-right:0;"><br />
<.a href="adicionar.php"><span style="color:#ff0000">Adicionar novo dominio</span></a></p><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''mod-domínio.php''':<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$cliente = $_POST['cliente'];<br />
$dominio = $_POST['dominio'];<br />
$antigo = $_POST['antigo'];;<br />
if (empty($dominio)) {<br />
$dominio = "invalido";<br />
} <br />
<br />
if (preg_match('/^[a-z0-9]+/', $dominio)){<br />
}else{<br />
$dominio = "invalido";<br />
} <br />
<br />
$arquivo = '/etc/bind/named.conf';<br />
$linhas = array();<br />
exec("cat $arquivo",$linhas);<br />
for ($i = 0 ; $i < sizeof($linhas); $i++){<br />
if ($linhas[$i] == "include \"/etc/bind/$dominio.conf\";"){<br />
$dominio = "invalido";<br />
}<br />
}<br />
if ($dominio == "invalido"){<br />
header ("Location: alterar.php");<br />
}else{ <br />
<br />
$script = "/etc/teletec/mod-dominio.sh $antigo '$cliente' $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$deletar = "DELETE FROM clientes WHERE dominio='$antigo.teletec.sj.ifsc.edu.br'";<br />
mysql_query($deletar,$conexao);<br />
mysql_close($conexao); <br />
<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$inserir = "INSERT INTO clientes (cliente,dominio) VALUES ('$cliente','$dominio.teletec.sj.ifsc.edu.br')";<br />
mysql_query($inserir,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php"); <br />
<br />
}<br />
.}<br />
?.><br />
<br />
- Edição do Arquivo '''login.php''': <br />
<br />
.<?<br />
.session_start();<br />
.if (isset($_SESSION['autorizado'])){<br />
.Header ("Location: principal.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Hospedagem Web</title><br />
<./head><br />
<br />
<.body><br />
<.p></p><br />
<.p>Sistemas de Hospedagem de Sitios Web</p><br />
<.p></p><br />
<.form name="formTeste" action="verificacao.php" method="post"><br />
<.p>Usu&#xe1;rio:<br><br />
<.input type="text" name="login"> <br />
<.p>Senha:<br> <br />
<.input type="password" name="senha"> <br />
<.input type="submit" name="b_enviar" value="Entrar"><br />
<./form><br />
<.p></p><br />
<.?<br />
}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''Index.php''':<br />
<br />
<.?<br />
Header ("Location: login.php");<br />
.?><br />
<br />
- Edição do Arquivo '''excluir.php''':<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){ <br />
header ("Location: login.php");<br />
}else{<br />
$id=$_GET['id'];<br />
$parte1 = explode(".", $id);<br />
$antigo = $parte1[0];<br />
?.><br />
<.html><br />
<head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Excluir o cliente</title><br />
<./head><br />
<.body><br />
<.p>Voce realmente deseja excluir o cliente?</p><br />
<br />
<.p><a href="del-dominio.php?id=<?echo $antigo;?>">Sim</a> <a<br />
.href="principal.php">Nao</a></p><br />
<.p></p><br />
<?<br />
}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''del-dominio.php''':<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$dominio = $_GET['id'];<br />
$script = "/etc/teletec/del-dominio.sh $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$deletar = "DELETE FROM clientes WHERE dominio='$dominio.teletec.sj.ifsc.edu.br'";<br />
mysql_query($deletar,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php");<br />
}<br />
?.><br />
<br />
- Edição do '''Arquivo alterar.php''': <br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){ <br />
header ("Location: login.php");<br />
}else{<br />
$id=$_GET['id'];<br />
$parte1 = explode(".", $id);<br />
$antigo = $parte1[0];<br />
?.><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Alterar Dominio</title><br />
</.head><br />
<.body><br />
<.p><.a href="principal.php">Voltar </a></p><br />
<.form name="formTeste" action="mod-dominio.php" method="post"><br />
<.p>Novo nome do cliente: <br><br />
<.input type="text" name="cliente"><br />
<.p>Novo dominio: <br><br />
<.input type="text" name="dominio"><br />
<.input type="hidden" name="antigo" value="<?echo $antigo;?>"> <br />
<.input type="submit" name="b_enviar" value="Alterar"><br />
<./form><br />
<.?<br />
}<br />
?.><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''adicionar.php''':<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Adicionar Cliente</title><br />
<./head><br />
<.body><br />
<.p><.a href="principal.php">Voltar </a></p><br />
<.form name="formTeste" action="add-dominio.php" method="post"><br />
<.p>Nome do cliente: <br><br />
<.input type="text" name="cliente"><br />
<.p>Dominio: <br><br />
<.input type="text" name="dominio"><br />
<.input type="submit" name="b_enviar" value="Criar"><br />
<./form><br />
<.?<br />
.}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''add-dominio.php''':<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$cliente = $_POST['cliente'];<br />
$dominio = $_POST['dominio']; <br />
<br />
if (empty($dominio)) {<br />
$dominio = "invalido";<br />
} <br />
<br />
if (preg_match('/^[a-z0-9]+/', $dominio)){<br />
}else{<br />
$dominio = "invalido";<br />
} <br />
<br />
$arquivo = '/etc/bind/named.conf';<br />
$linhas = array();<br />
exec("cat $arquivo",$linhas);<br />
for ($i = 0 ; $i < sizeof($linhas); $i++){<br />
if ($linhas[$i] == "include \"/etc/bind/$dominio.conf\";"){<br />
$dominio = "invalido";<br />
}<br />
}<br />
if ($dominio == "invalido"){<br />
header ("Location: adicionar.php");<br />
}else{<br />
$script = "/etc/teletec/add-dominio.sh '$cliente' $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$inserir = "INSERT INTO clientes (cliente,dominio) VALUES ('$cliente','$dominio.teletec.sj.ifsc.edu.br')";<br />
mysql_query($inserir,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php");<br />
}<br />
}<br />
?.><br />
<br />
'''Os Arquivos .sh (scripts que adicionam, removem ou alteram os usuários no servidor) Encontram-se dentro da pasta: ''/etc/teletec''''' <br />
<br />
- Edição do Arquivo mod-dominio.sh<br />
<br />
#!/bin/bash<br />
#Leonardo<br />
#echo -n "Dominio: "<br />
#read antigo<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$antigo'.conf";' ];then<br />
# valido=sim<br />
# break<br />
# else<br />
# valido=nao<br />
# fi<br />
#done<br />
#if [ $valido = nao ];then<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio não existe ou esta em branco.\n"<br />
# exit<br />
#fi<br />
#echo -n "Novo nome para o cliente: "<br />
#read nome<br />
#echo -n "Novo dominio: "<br />
#read dominio<br />
#echo=${dominio:=nulo}<br />
#IFS=$'\n'<br />
#for linha in `cat /etc/bind/named.conf`; do<br />
# if [ $linha = 'include "/etc/bind/'$dominio'.conf";' ];then<br />
# dominio=existe<br />
# break<br />
# fi<br />
#done<br />
#if [ $dominio != nulo ] && [ $dominio != existe ];then<br />
antigo=$1<br />
nome=$2<br />
dominio=$3<br />
sudo sed -i '/\/etc\/bind\/'$antigo'\.conf/Id' /etc/bind/named.conf<br />
sudo rm /etc/bind/$antigo.conf<br />
sudo rm /etc/bind/$antigo.zone<br />
sudo rm /etc/apache2/sites-enabled/$antigo-default<br />
sudo rm -r /var/www/$antigo<br />
sudo sed -i '/'$antigo'\.teletec\.sj\.ifsc\.edu\.br Subdominio-'$antigo'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$antigo'@teletec\.sj\.ifsc\.edu\.br '$antigo'/Id' /etc/postfix/virtual<br />
sudo sed -i '/'$antigo'\.teletec\.sj\.ifsc\.edu\.br OK/Id' /etc/postfix/mydomains <br />
<br />
sudo echo 'include "/etc/bind/'$dominio'.conf";' >> /etc/bind/named.conf<br />
numero=`date | cut -d ":" -f 3 | cut -d " " -f 1`<br />
novoserial=$((1000000000+$numero))<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.conf > /etc/bind/$dominio.conf<br />
sudo sed s/padrao/$dominio/g /etc/bind/padrao.zone | sed s/2011061504/$novoserial/g > /etc/bind/$dominio.zone<br />
sudo /etc/init.d/bind9 restart<br />
sudo sed s/padrao/$dominio/g /etc/apache2/sites-available/padrao-default > /etc/apache2/sites-enabled/$dominio-default<br />
mkdir /var/www/$dominio<br />
sed s/dominio/$dominio/g /var/www/padrao/index.html | sed s/nome/"$nome"/g > /var/www/$dominio/index.html<br />
sudo echo ' ' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br Subdominio-'$dominio'' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'@teletec.sj.ifsc.edu.br '$dominio'' >> /etc/postfix/virtual<br />
sudo echo ''$dominio'.teletec.sj.ifsc.edu.br OK' >> /etc/postfix/mydomains<br />
sudo postmap /etc/postfix/virtual<br />
sudo postmap /etc/postfix/mydomains<br />
sudo /etc/init.d/postfix restart<br />
# echo -e " * Dominio modificado com sucesso!\t\t\t\t[ OK ]\n"<br />
# else<br />
# echo -e " * Você entrou com um dominio inválido!\t\t\t \e[31m [ ERRO ] \e[m"<br />
# echo -e " * O dominio ja existe ou esta em branco.\n"<br />
#fi</div>Vagner.chttps://wiki.sj.ifsc.edu.br/index.php?title=Projeto_Integrador_-_2011.1_-_Teletec&diff=34785Projeto Integrador - 2011.1 - Teletec2011-07-09T00:18:36Z<p>Vagner.c: /* Programação para Redes de Computadores */</p>
<hr />
<div>== * '''Equipe 2 : TELETEC''' ==<br />
<br />
----<br />
<br />
== INTEGRANTES TELETEC ==<br />
<br />
* '''Daniel Estefano'''; estefano.daniel@gmail.com <br />
* '''Denis Teixeira'''; denisteixeira3@gmail.com <br />
* '''Leonardo Oliveira P.'''; leonardo-op@live.com <br />
* '''Odair de Moraes'''; odairdmoraes@hotmail.com<br />
* '''Robson de Carvalho'''; rob_carvalho12@hotmail.com<br />
* '''Vagner Cordeiro.''' cordeirotelecom@gmail.com<br />
<br />
----<br />
<br />
'''EMPRESA TELETEC - PROVEDOR DE ACESSO Á INTERNET:'''<br />
<br />
A Empresa Oferece os seguintes serviços: <br />
<br />
# Conta de Usuário para cada cliente;<br />
# Conta de E-mail para cada cliente;<br />
# Uma página Web Padrão;<br />
# Instalação do Modem ADSL e do Cabeamento Estrurado;<br />
# Acesso Wirelles;<br />
<br />
<br />
== Etapas Iniciais de Configurações da Rede ==<br />
<br />
<br />
# Instalação do Sistema Operacional:Ubuntu-Server;<br />
# Definido Sistema de Arquivo, Dividido em 3 Partições: ''1 Partição Primátia, 1 Partição Secundária e uma Partição para Swap;'' <br />
# Definido nome do Domínio: teletec.sj.ifsc.edu.br;<br />
# Criado um Usuário: Tecnico;<br />
# Acesso via SSH ao Servidor Teletec.<br />
<br />
----<br />
<br />
== Gerencia de Redes: Apache, Postfix e DNS ==<br />
<br />
'''Configurações do servidor DNS:''' <br />
<br />
- Edição do Arquivo para IP Estático: '''/etc/network/interfaces''' <br />
<br />
# This file describes the network interfaces available on your system<br />
# and how to activate them. For more information, see interfaces(5).<br />
# The loopback network interface<br />
auto lo<br />
iface lo inet loopback<br />
# The primary network interface<br />
auto eth0<br />
iface eth0 inet static<br />
address 200.135.37.100<br />
netmask 255.255.255.192<br />
gateway 200.135.37.126 <br />
<br />
- Edição do Arquivo do servidor DNS '''/etc/bind/named.conf''' <br />
<br />
Indica todos os arquivos que vai fazer a configuração dele<br />
<br />
// This is the primary configuration file for the BIND DNS server named.<br />
//<br />
// Please read /usr/share/doc/bind9/README.Debian.gz for information on the <br />
// structure of BIND configuration files in Debian, *BEFORE* you customize <br />
// this configuration file.<br />
//<br />
// If you are just adding zones, please do that in /etc/bind/named.conf.local<br />
include "/etc/bind/named.conf.options";<br />
include "/etc/bind/named.conf.local";<br />
include "/etc/bind/named.conf.default-zones";<br />
include "/etc/bind/servidor.conf";<br />
include "/etc/bind/tecnico.conf";<br />
include "/etc/bind/daniel.conf";<br />
<br />
- Edição do Arquivo de servidor DNS: named.conf.local '''/etc/bind/named.conf.local'''<br />
É um arquivo padrão do BIND onde foi configurado o o nosso dominino TELETEC.<br />
<br />
//<br />
// Do any local configuration here<br />
//<br />
<br />
// Consider adding the 1918 zones here, if they are not used in your<br />
// organization<br />
//include "/etc/bind/zones.rfc1918"8;<br />
zone "teletec.sj.ifsc.edu.br." IN {<br />
type master;<br />
file "/etc/bind/teletec.zone";<br />
allow-update { none; };<br />
};<br />
<br />
- Edição do Arquivo de DNS Reverso: '''/etc/bind/37.135.200.in-addr.arpa'''<br />
O DNS Reverso resolve um endereço IP para um nome de servidor – por exemplo, ele poderia resolver 200.176.3.142 para exemplo.hipotetico.com.br.<br />
<br />
$TTL 86400<br />
@ IN SOA servidor.teletec.sj.ifsc.edu.br. root (<br />
2011061500 ;<br />
1d ;<br />
1h ;<br />
1w ; <br />
1d ;<br />
)<br />
IN NS servidor.teletec.sj.ifsc.edu.br.<br />
100 IN PTR servidor.teletec.sj.ifsc.edu.br.<br />
<br />
- Edição do Arquivo para criar um subdomínio:'''/etc/bind/teletec.zone'''<br />
<br />
$TTL 86400<br />
@ IN SOA teletec.teletec.sj.ifsc.edu.br root (<br />
2011062901;<br />
3H;<br />
15M;<br />
1W;<br />
1D );<br />
IN NS teletec.teletec.sj.ifsc.edu.br.<br />
IN MX 0 mail.teletec.sj.ifsc.edu.br.<br />
localhost IN A 127.0.0.1<br />
$ORIGIN teletec.sj.ifsc.edu.br.<br />
teletec A 200.135.37.100<br />
www A 200.135.37.100<br />
mail A 200.135.37.100<br />
<br />
== Instalação de Equipamento de Redes (Modem, Switch e Roteadores) ==<br />
<br />
'''Configurações:''' <br />
<br />
Instalação:<br />
<br />
minicom -s<br />
<br />
Configuração do Roteador Cisco 1700: <br />
<br />
* Configuração dos Dois Roteadores Utilizando a ferramenta "Minicon" (Se fosse Windows seria Hyperterminal)<br />
* Configuração dos dispositivos: Serial e Ethernet<br />
* Configuração como Protocolo PPP<br />
<br />
- ''"Configuração da porta serial":''<br />
<br />
┌─────────────[configuração]──────────────┐<br />
│ Nomes de arquivos e rotas<br />
│ Protocolos de transferência de arquivos<br />
│ Configuração da porta serial<br />
│ Modem e discagem<br />
│ Tela e teclado<br />
│ Salvar configuração como dfl<br />
│ Salvar configuração como<br />
│ Sair<br />
│ Sair do Minicom<br />
└────────────────────────────────────────┘<br />
<br />
- ''"Alteração da Porta Serial"''<br />
┌──────────────────────────────────────────────────────────┐<br />
│ A – Dispositivo Serial : /dev/ttSy0 <br />
│ B – Localização do Arquivo de Travamento : /var/lock<br />
│ C – Programa de Entrada :<br />
│ D – Programa de Saída :<br />
│ E – Bps/Paridade/Bits : 9600 8N1 <br />
│ F – Controle de Fluxo por Hardware : Não<br />
│ G – Controle de Fluxo por Software : Não<br />
│<br />
│ Alterar qual configuração?<br />
└──────────────────────────────────────────────────────────┘<br />
<br />
- ''"Salvar configuração com dfl"''<br />
<br />
- ''Configurando a Interface Serial do Roteador:''<br />
<br />
enable;<br />
configure terminal;<br />
<br />
#Para configurar a interface serial:<br />
interface serial 0;<br />
ip address 10.0.0.1/30;<br />
encapsulation ppp;<br />
exit;<br />
<br />
#Para configurar a interface ethernet:<br />
interface fastethernet 0;<br />
ip address 172.18.0.1/24;<br />
exit;<br />
exit;<br />
<br />
#Para salvar as configurações:<br />
wr;<br />
<br />
'''Radius'''<br />
<br />
Para ter acesso a rede aDSL ou pela rede sem fio será usado Radius para que os usuários sejam autenticados. O RADIUS é um sistema utilizado para prover uma autenticação centralizada em redes dial-up, VPN's (Virtual Private Network) e redes sem fio. Ele tem um modelo cliente-servidor, onde o cliente é o Network Access Server (NAS). Esse servidor é responsável por obter a informação sobre o cliente e repassá-la para o servidor RADIUS, além de interpretar a resposta, dando ou não acesso ao cliente. O servidor RADIUS é responsável por receber pedidos de conexão, autenticar o usuário e repassar ao NAS as informações necessárias para esse dar acesso ao usuário na rede. <br />
<br />
'''Arquivos configurados:''' <br />
<br />
Configurar login e senha para o cliente Radius ( /etc/freeradius<br />
/users ):<br />
<br />
“Usúario” Cleartext-Password := "senha"<br />
“Usúario” User-Password := "senha"<br />
<br />
Configurando o Servidor PPPoe (/etc/ppp/pppoe-servers-options): <br />
<br />
require-chap<br />
auth<br />
lcp-echo-interval 10<br />
lcp-echo-failure 2<br />
ms-dns IP do seu servidor DNS<br />
netmask 255.255.255.0<br />
noipdefault<br />
debug<br />
kdebug 4<br />
plugin radius.so<br />
plugin radattr.so<br />
radius-config-file /etc/radiusclient/teletec.conf<br />
mru 1492<br />
mtu 1492<br />
<br />
Configuração do Cliente Radius ( etc/radiusclient/teletec.conf ):<br />
<br />
auth_order radius<br />
login_tries 4<br />
login_timeout 60<br />
nologin /etc/nologin<br />
issue /etc/radiusclient/issue<br />
authserver 200.135.37.100<br />
acctserver 200.135.37.100<br />
servers /etc/radiusclient/servers<br />
dictionary /etc/radiusclient/dictionary<br />
login_radius /usr/sbin/login.radius<br />
seqfile /var/run/radius.seq<br />
mapfile /etc/radiusclient/port-id-map<br />
default_realm<br />
radius_timeout 10<br />
radius_retries 3<br />
login_local /bin/login<br />
<br />
Configurando o IP do Servidor Radius ( /etc/radiusclient/servers ):<br />
<br />
200.135.37.100 testing123<br />
<br />
Integrando Radius ao Banco de Dados<br />
<br />
Primeiro procedimento, instale o pacote. <br />
<br />
apt-get install freeradius-mysql<br />
Edite o arquivo de configuração do freeradius, e descomente a seguinte linha <br />
( /etc/freeradius/radiusd.conf ): <br />
<br />
$INCLUDE sql.conf<br />
<br />
Para entrar no MySQL execute o comando: <br />
<br />
mysql -u root -p <br />
<br />
Crie uma base de dados somente para o Radius e dê ao usuário Radius a devida permissão para acesso a esta base. No shell do MySQL, execute os comandos: <br />
<br />
CREATE DATABASE radius;<br />
GRANT ALL ON radius.* TO freerad@localhost IDENTIFIED BY "senha_do_usuário_freeradius";<br />
exit;<br />
<br />
Inserindo informações na base de dados: <br />
<br />
mysql -u “usuário” -p “senha do usuário radius” “database” < /etc/freeradius/sql/mysql/schema.sql<br />
mysql -u “usuário” -p “senha do usuário radius” “database” < /etc/freeradius/sql/mysql/nas.sql<br />
<br />
Editar o arquivo /etc/freeradius/sql.conf, colocando a senha do usuário Radius: <br />
<br />
passwrod = "senha do usuário radius"<br />
<br />
E descomente a linha do mesmo arquivo ( /etc/freeradius/sql.conf ) : <br />
<br />
readclients = yes<br />
<br />
Reinicie o FreeRadius: <br />
<br />
service freeradius restart<br />
<br />
== Cabeamento Estruturado ==<br />
<br />
Atividades Concluídas:<br />
<br />
- o A central telefônica ao DSLAM<br />
- o O DSLAM ao armário de telecom da equipe, através de uma linha telefone + DSL<br />
- o armário da equipe a uma área de trabalho. <br />
- O cabeamento permitiu a conexão do modem DSL no armário de telecom.<br />
- As tomadas da área de trabalho para conexão com Telefone e o Modem ADSL.<br />
<br />
== Programação para Redes de Computadores ==<br />
<br />
''Os Arquivos Encontram-se dentro da pasta: /var/www/teletec''<br />
<br />
- Edição do Arquivo '''Verificação.php''':<br />
<br />
<?<br />
session_start();<br />
$login = $_POST['login'];<br />
$senha = $_POST['senha'];<br />
if ( ( $login == "Administrador" ) && ( $senha == "orelha1234" ) ){<br />
$_SESSION['autorizado'] = $login;<br />
Header ("Location: principal.php");<br />
}else{<br />
Header ("Location: login.php");<br />
}<br />
?><br />
<br />
- Edição do Arquivo '''sair.php''':<br />
<br />
<?<br />
session_start();<br />
session_destroy();<br />
Header ("Location: login.php");<br />
?><br />
<br />
- Edição do arquivo '''principal.php''': <br />
<br />
<.?<br />
.session_start();<br />
.if (!isset($_SESSION['autorizado'])){<br />
.header ("Location: login.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Administrcao de Dominios</title><br />
<./head><br />
<.body><br />
<.p><a href="sair.php">Sair</a></p><br />
<.p></p><br />
<.p style="text-align:center;margin-left:auto;margin-right:auto;">Cliente Dominio Acao </p><br />
<br />
<.?<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$consulta = "SELECT * from clientes";<br />
$resultado = mysql_query($consulta,$conexao);<br />
while($linha = mysql_fetch_array($resultado)){<br />
$cliente = $linha['cliente'];<br />
$dominio = $linha['dominio'];<br />
.?><br />
<.form><br />
<.p style="text-align:center;margin-left:auto;margin-right:auto;"><br />
<.a name="cliente" id="cliente" href="alterar.php?id=<? echo $linha['dominio'];?>"> <?echo $.linha['cliente'];?></a> <br />
<.? echo $linha['dominio'];?> <a href="excluir.php?id=<? echo $linha['dominio'];?>"> Excluir</a></p><br />
<./form><br />
<.?<br />
.}<br />
.mysql_free_result($resultado);<br />
.mysql_close($conexao);<br />
.}<br />
.?><br />
<.p style="text-align:right;margin-left:auto;margin-right:0;"><br />
<.a href="adicionar.php"><span style="color:#ff0000">Adicionar novo dominio</span></a></p><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''mod-domínio.php''':<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$cliente = $_POST['cliente'];<br />
$dominio = $_POST['dominio'];<br />
$antigo = $_POST['antigo'];;<br />
if (empty($dominio)) {<br />
$dominio = "invalido";<br />
} <br />
<br />
if (preg_match('/^[a-z0-9]+/', $dominio)){<br />
}else{<br />
$dominio = "invalido";<br />
} <br />
<br />
$arquivo = '/etc/bind/named.conf';<br />
$linhas = array();<br />
exec("cat $arquivo",$linhas);<br />
for ($i = 0 ; $i < sizeof($linhas); $i++){<br />
if ($linhas[$i] == "include \"/etc/bind/$dominio.conf\";"){<br />
$dominio = "invalido";<br />
}<br />
}<br />
if ($dominio == "invalido"){<br />
header ("Location: alterar.php");<br />
}else{ <br />
<br />
$script = "/etc/teletec/mod-dominio.sh $antigo '$cliente' $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$deletar = "DELETE FROM clientes WHERE dominio='$antigo.teletec.sj.ifsc.edu.br'";<br />
mysql_query($deletar,$conexao);<br />
mysql_close($conexao); <br />
<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$inserir = "INSERT INTO clientes (cliente,dominio) VALUES ('$cliente','$dominio.teletec.sj.ifsc.edu.br')";<br />
mysql_query($inserir,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php"); <br />
<br />
}<br />
.}<br />
?.><br />
<br />
- Edição do Arquivo '''login.php''': <br />
<br />
.<?<br />
.session_start();<br />
.if (isset($_SESSION['autorizado'])){<br />
.Header ("Location: principal.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Hospedagem Web</title><br />
<./head><br />
<br />
<.body><br />
<.p></p><br />
<.p>Sistemas de Hospedagem de Sitios Web</p><br />
<.p></p><br />
<.form name="formTeste" action="verificacao.php" method="post"><br />
<.p>Usu&#xe1;rio:<br><br />
<.input type="text" name="login"> <br />
<.p>Senha:<br> <br />
<.input type="password" name="senha"> <br />
<.input type="submit" name="b_enviar" value="Entrar"><br />
<./form><br />
<.p></p><br />
<.?<br />
}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''Index.php''':<br />
<br />
<.?<br />
Header ("Location: login.php");<br />
.?><br />
<br />
- Edição do Arquivo '''excluir.php''':<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){ <br />
header ("Location: login.php");<br />
}else{<br />
$id=$_GET['id'];<br />
$parte1 = explode(".", $id);<br />
$antigo = $parte1[0];<br />
?.><br />
<.html><br />
<head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Excluir o cliente</title><br />
<./head><br />
<.body><br />
<.p>Voce realmente deseja excluir o cliente?</p><br />
<br />
<.p><a href="del-dominio.php?id=<?echo $antigo;?>">Sim</a> <a<br />
.href="principal.php">Nao</a></p><br />
<.p></p><br />
<?<br />
}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''del-dominio.php''':<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$dominio = $_GET['id'];<br />
$script = "/etc/teletec/del-dominio.sh $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$deletar = "DELETE FROM clientes WHERE dominio='$dominio.teletec.sj.ifsc.edu.br'";<br />
mysql_query($deletar,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php");<br />
}<br />
?.><br />
<br />
- Edição do '''Arquivo alterar.php''': <br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){ <br />
header ("Location: login.php");<br />
}else{<br />
$id=$_GET['id'];<br />
$parte1 = explode(".", $id);<br />
$antigo = $parte1[0];<br />
?.><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Alterar Dominio</title><br />
</.head><br />
<.body><br />
<.p><.a href="principal.php">Voltar </a></p><br />
<.form name="formTeste" action="mod-dominio.php" method="post"><br />
<.p>Novo nome do cliente: <br><br />
<.input type="text" name="cliente"><br />
<.p>Novo dominio: <br><br />
<.input type="text" name="dominio"><br />
<.input type="hidden" name="antigo" value="<?echo $antigo;?>"> <br />
<.input type="submit" name="b_enviar" value="Alterar"><br />
<./form><br />
<.?<br />
}<br />
?.><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''adicionar.php''':<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Adicionar Cliente</title><br />
<./head><br />
<.body><br />
<.p><.a href="principal.php">Voltar </a></p><br />
<.form name="formTeste" action="add-dominio.php" method="post"><br />
<.p>Nome do cliente: <br><br />
<.input type="text" name="cliente"><br />
<.p>Dominio: <br><br />
<.input type="text" name="dominio"><br />
<.input type="submit" name="b_enviar" value="Criar"><br />
<./form><br />
<.?<br />
.}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''add-dominio.php''':<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$cliente = $_POST['cliente'];<br />
$dominio = $_POST['dominio']; <br />
<br />
if (empty($dominio)) {<br />
$dominio = "invalido";<br />
} <br />
<br />
if (preg_match('/^[a-z0-9]+/', $dominio)){<br />
}else{<br />
$dominio = "invalido";<br />
} <br />
<br />
$arquivo = '/etc/bind/named.conf';<br />
$linhas = array();<br />
exec("cat $arquivo",$linhas);<br />
for ($i = 0 ; $i < sizeof($linhas); $i++){<br />
if ($linhas[$i] == "include \"/etc/bind/$dominio.conf\";"){<br />
$dominio = "invalido";<br />
}<br />
}<br />
if ($dominio == "invalido"){<br />
header ("Location: adicionar.php");<br />
}else{<br />
$script = "/etc/teletec/add-dominio.sh '$cliente' $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$inserir = "INSERT INTO clientes (cliente,dominio) VALUES ('$cliente','$dominio.teletec.sj.ifsc.edu.br')";<br />
mysql_query($inserir,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php");<br />
}<br />
}<br />
?.></div>Vagner.chttps://wiki.sj.ifsc.edu.br/index.php?title=Projeto_Integrador_-_2011.1_-_Teletec&diff=34783Projeto Integrador - 2011.1 - Teletec2011-07-09T00:12:56Z<p>Vagner.c: /* Programação para Redes de Computadores */</p>
<hr />
<div>== * '''Equipe 2 : TELETEC''' ==<br />
<br />
----<br />
<br />
== INTEGRANTES TELETEC ==<br />
<br />
* '''Daniel Estefano'''; estefano.daniel@gmail.com <br />
* '''Denis Teixeira'''; denisteixeira3@gmail.com <br />
* '''Leonardo Oliveira P.'''; leonardo-op@live.com <br />
* '''Odair de Moraes'''; odairdmoraes@hotmail.com<br />
* '''Robson de Carvalho'''; rob_carvalho12@hotmail.com<br />
* '''Vagner Cordeiro.''' cordeirotelecom@gmail.com<br />
<br />
----<br />
<br />
'''EMPRESA TELETEC - PROVEDOR DE ACESSO Á INTERNET:'''<br />
<br />
A Empresa Oferece os seguintes serviços: <br />
<br />
# Conta de Usuário para cada cliente;<br />
# Conta de E-mail para cada cliente;<br />
# Uma página Web Padrão;<br />
# Instalação do Modem ADSL e do Cabeamento Estrurado;<br />
# Acesso Wirelles;<br />
<br />
<br />
== Etapas Iniciais de Configurações da Rede ==<br />
<br />
<br />
# Instalação do Sistema Operacional:Ubuntu-Server;<br />
# Definido Sistema de Arquivo, Dividido em 3 Partições: ''1 Partição Primátia, 1 Partição Secundária e uma Partição para Swap;'' <br />
# Definido nome do Domínio: teletec.sj.ifsc.edu.br;<br />
# Criado um Usuário: Tecnico;<br />
# Acesso via SSH ao Servidor Teletec.<br />
<br />
----<br />
<br />
== Gerencia de Redes: Apache, Postfix e DNS ==<br />
<br />
'''Configurações do servidor DNS:''' <br />
<br />
- Edição do Arquivo para IP Estático: '''/etc/network/interfaces''' <br />
<br />
# This file describes the network interfaces available on your system<br />
# and how to activate them. For more information, see interfaces(5).<br />
# The loopback network interface<br />
auto lo<br />
iface lo inet loopback<br />
# The primary network interface<br />
auto eth0<br />
iface eth0 inet static<br />
address 200.135.37.100<br />
netmask 255.255.255.192<br />
gateway 200.135.37.126 <br />
<br />
- Edição do Arquivo do servidor DNS '''/etc/bind/named.conf''' <br />
<br />
Indica todos os arquivos que vai fazer a configuração dele<br />
<br />
// This is the primary configuration file for the BIND DNS server named.<br />
//<br />
// Please read /usr/share/doc/bind9/README.Debian.gz for information on the <br />
// structure of BIND configuration files in Debian, *BEFORE* you customize <br />
// this configuration file.<br />
//<br />
// If you are just adding zones, please do that in /etc/bind/named.conf.local<br />
include "/etc/bind/named.conf.options";<br />
include "/etc/bind/named.conf.local";<br />
include "/etc/bind/named.conf.default-zones";<br />
include "/etc/bind/servidor.conf";<br />
include "/etc/bind/tecnico.conf";<br />
include "/etc/bind/daniel.conf";<br />
<br />
- Edição do Arquivo de servidor DNS: named.conf.local '''/etc/bind/named.conf.local'''<br />
É um arquivo padrão do BIND onde foi configurado o o nosso dominino TELETEC.<br />
<br />
//<br />
// Do any local configuration here<br />
//<br />
<br />
// Consider adding the 1918 zones here, if they are not used in your<br />
// organization<br />
//include "/etc/bind/zones.rfc1918"8;<br />
zone "teletec.sj.ifsc.edu.br." IN {<br />
type master;<br />
file "/etc/bind/teletec.zone";<br />
allow-update { none; };<br />
};<br />
<br />
- Edição do Arquivo de DNS Reverso: '''/etc/bind/37.135.200.in-addr.arpa'''<br />
O DNS Reverso resolve um endereço IP para um nome de servidor – por exemplo, ele poderia resolver 200.176.3.142 para exemplo.hipotetico.com.br.<br />
<br />
$TTL 86400<br />
@ IN SOA servidor.teletec.sj.ifsc.edu.br. root (<br />
2011061500 ;<br />
1d ;<br />
1h ;<br />
1w ; <br />
1d ;<br />
)<br />
IN NS servidor.teletec.sj.ifsc.edu.br.<br />
100 IN PTR servidor.teletec.sj.ifsc.edu.br.<br />
<br />
- Edição do Arquivo para criar um subdomínio:'''/etc/bind/teletec.zone'''<br />
<br />
$TTL 86400<br />
@ IN SOA teletec.teletec.sj.ifsc.edu.br root (<br />
2011062901;<br />
3H;<br />
15M;<br />
1W;<br />
1D );<br />
IN NS teletec.teletec.sj.ifsc.edu.br.<br />
IN MX 0 mail.teletec.sj.ifsc.edu.br.<br />
localhost IN A 127.0.0.1<br />
$ORIGIN teletec.sj.ifsc.edu.br.<br />
teletec A 200.135.37.100<br />
www A 200.135.37.100<br />
mail A 200.135.37.100<br />
<br />
== Instalação de Equipamento de Redes (Modem, Switch e Roteadores) ==<br />
<br />
'''Configurações:''' <br />
<br />
Instalação:<br />
<br />
minicom -s<br />
<br />
Configuração do Roteador Cisco 1700: <br />
<br />
* Configuração dos Dois Roteadores Utilizando a ferramenta "Minicon" (Se fosse Windows seria Hyperterminal)<br />
* Configuração dos dispositivos: Serial e Ethernet<br />
* Configuração como Protocolo PPP<br />
<br />
- ''"Configuração da porta serial":''<br />
<br />
┌─────────────[configuração]──────────────┐<br />
│ Nomes de arquivos e rotas<br />
│ Protocolos de transferência de arquivos<br />
│ Configuração da porta serial<br />
│ Modem e discagem<br />
│ Tela e teclado<br />
│ Salvar configuração como dfl<br />
│ Salvar configuração como<br />
│ Sair<br />
│ Sair do Minicom<br />
└────────────────────────────────────────┘<br />
<br />
- ''"Alteração da Porta Serial"''<br />
┌──────────────────────────────────────────────────────────┐<br />
│ A – Dispositivo Serial : /dev/ttSy0 <br />
│ B – Localização do Arquivo de Travamento : /var/lock<br />
│ C – Programa de Entrada :<br />
│ D – Programa de Saída :<br />
│ E – Bps/Paridade/Bits : 9600 8N1 <br />
│ F – Controle de Fluxo por Hardware : Não<br />
│ G – Controle de Fluxo por Software : Não<br />
│<br />
│ Alterar qual configuração?<br />
└──────────────────────────────────────────────────────────┘<br />
<br />
- ''"Salvar configuração com dfl"''<br />
<br />
- ''Configurando a Interface Serial do Roteador:''<br />
<br />
enable;<br />
configure terminal;<br />
<br />
#Para configurar a interface serial:<br />
interface serial 0;<br />
ip address 10.0.0.1/30;<br />
encapsulation ppp;<br />
exit;<br />
<br />
#Para configurar a interface ethernet:<br />
interface fastethernet 0;<br />
ip address 172.18.0.1/24;<br />
exit;<br />
exit;<br />
<br />
#Para salvar as configurações:<br />
wr;<br />
<br />
== Cabeamento Estruturado ==<br />
<br />
Atividades Concluídas:<br />
<br />
- o A central telefônica ao DSLAM<br />
- o O DSLAM ao armário de telecom da equipe, através de uma linha telefone + DSL<br />
- o armário da equipe a uma área de trabalho. <br />
- O cabeamento permitiu a conexão do modem DSL no armário de telecom.<br />
- As tomadas da área de trabalho para conexão com Telefone e o Modem ADSL.<br />
<br />
== Programação para Redes de Computadores ==<br />
<br />
''Os Arquivos Encontram-se dentro da pasta: /var/www/teletec''<br />
<br />
- Edição do Arquivo '''Verificação.php''':<br />
<br />
<?<br />
session_start();<br />
$login = $_POST['login'];<br />
$senha = $_POST['senha'];<br />
if ( ( $login == "Administrador" ) && ( $senha == "orelha1234" ) ){<br />
$_SESSION['autorizado'] = $login;<br />
Header ("Location: principal.php");<br />
}else{<br />
Header ("Location: login.php");<br />
}<br />
?><br />
<br />
- Edição do Arquivo '''sair.php''':<br />
<br />
<?<br />
session_start();<br />
session_destroy();<br />
Header ("Location: login.php");<br />
?><br />
<br />
- Edição do arquivo '''principal.php''': <br />
<br />
<.?<br />
.session_start();<br />
.if (!isset($_SESSION['autorizado'])){<br />
.header ("Location: login.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Administrcao de Dominios</title><br />
<./head><br />
<.body><br />
<.p><a href="sair.php">Sair</a></p><br />
<.p></p><br />
<.p style="text-align:center;margin-left:auto;margin-right:auto;">Cliente Dominio Acao </p><br />
<br />
<.?<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$consulta = "SELECT * from clientes";<br />
$resultado = mysql_query($consulta,$conexao);<br />
while($linha = mysql_fetch_array($resultado)){<br />
$cliente = $linha['cliente'];<br />
$dominio = $linha['dominio'];<br />
.?><br />
<.form><br />
<.p style="text-align:center;margin-left:auto;margin-right:auto;"><br />
<.a name="cliente" id="cliente" href="alterar.php?id=<? echo $linha['dominio'];?>"> <?echo $.linha['cliente'];?></a> <br />
<.? echo $linha['dominio'];?> <a href="excluir.php?id=<? echo $linha['dominio'];?>"> Excluir</a></p><br />
<./form><br />
<.?<br />
.}<br />
.mysql_free_result($resultado);<br />
.mysql_close($conexao);<br />
.}<br />
.?><br />
<.p style="text-align:right;margin-left:auto;margin-right:0;"><br />
<.a href="adicionar.php"><span style="color:#ff0000">Adicionar novo dominio</span></a></p><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''mod-domínio.php''':<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$cliente = $_POST['cliente'];<br />
$dominio = $_POST['dominio'];<br />
$antigo = $_POST['antigo'];;<br />
if (empty($dominio)) {<br />
$dominio = "invalido";<br />
} <br />
<br />
if (preg_match('/^[a-z0-9]+/', $dominio)){<br />
}else{<br />
$dominio = "invalido";<br />
} <br />
<br />
$arquivo = '/etc/bind/named.conf';<br />
$linhas = array();<br />
exec("cat $arquivo",$linhas);<br />
for ($i = 0 ; $i < sizeof($linhas); $i++){<br />
if ($linhas[$i] == "include \"/etc/bind/$dominio.conf\";"){<br />
$dominio = "invalido";<br />
}<br />
}<br />
if ($dominio == "invalido"){<br />
header ("Location: alterar.php");<br />
}else{ <br />
<br />
$script = "/etc/teletec/mod-dominio.sh $antigo '$cliente' $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$deletar = "DELETE FROM clientes WHERE dominio='$antigo.teletec.sj.ifsc.edu.br'";<br />
mysql_query($deletar,$conexao);<br />
mysql_close($conexao); <br />
<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$inserir = "INSERT INTO clientes (cliente,dominio) VALUES ('$cliente','$dominio.teletec.sj.ifsc.edu.br')";<br />
mysql_query($inserir,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php"); <br />
<br />
}<br />
.}<br />
?.><br />
<br />
- Edição do Arquivo '''login.php''': <br />
<br />
.<?<br />
.session_start();<br />
.if (isset($_SESSION['autorizado'])){<br />
.Header ("Location: principal.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Hospedagem Web</title><br />
<./head><br />
<br />
<.body><br />
<.p></p><br />
<.p>Sistemas de Hospedagem de Sitios Web</p><br />
<.p></p><br />
<.form name="formTeste" action="verificacao.php" method="post"><br />
<.p>Usu&#xe1;rio:<br><br />
<.input type="text" name="login"> <br />
<.p>Senha:<br> <br />
<.input type="password" name="senha"> <br />
<.input type="submit" name="b_enviar" value="Entrar"><br />
<./form><br />
<.p></p><br />
<.?<br />
}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''Index.php''':<br />
<br />
<.?<br />
Header ("Location: login.php");<br />
.?><br />
<br />
- Edição do Arquivo '''excluir.php''':<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){ <br />
header ("Location: login.php");<br />
}else{<br />
$id=$_GET['id'];<br />
$parte1 = explode(".", $id);<br />
$antigo = $parte1[0];<br />
?.><br />
<.html><br />
<head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Excluir o cliente</title><br />
<./head><br />
<.body><br />
<.p>Voce realmente deseja excluir o cliente?</p><br />
<br />
<.p><a href="del-dominio.php?id=<?echo $antigo;?>">Sim</a> <a<br />
.href="principal.php">Nao</a></p><br />
<.p></p><br />
<?<br />
}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''del-dominio.php''':<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$dominio = $_GET['id'];<br />
$script = "/etc/teletec/del-dominio.sh $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$deletar = "DELETE FROM clientes WHERE dominio='$dominio.teletec.sj.ifsc.edu.br'";<br />
mysql_query($deletar,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php");<br />
}<br />
?.><br />
<br />
- Edição do '''Arquivo alterar.php''': <br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){ <br />
header ("Location: login.php");<br />
}else{<br />
$id=$_GET['id'];<br />
$parte1 = explode(".", $id);<br />
$antigo = $parte1[0];<br />
?.><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Alterar Dominio</title><br />
</.head><br />
<.body><br />
<.p><.a href="principal.php">Voltar </a></p><br />
<.form name="formTeste" action="mod-dominio.php" method="post"><br />
<.p>Novo nome do cliente: <br><br />
<.input type="text" name="cliente"><br />
<.p>Novo dominio: <br><br />
<.input type="text" name="dominio"><br />
<.input type="hidden" name="antigo" value="<?echo $antigo;?>"> <br />
<.input type="submit" name="b_enviar" value="Alterar"><br />
<./form><br />
<.?<br />
}<br />
?.><br />
<./body><br />
<./html></div>Vagner.chttps://wiki.sj.ifsc.edu.br/index.php?title=Projeto_Integrador_-_2011.1_-_Teletec&diff=34782Projeto Integrador - 2011.1 - Teletec2011-07-09T00:09:53Z<p>Vagner.c: /* Programação para Redes de Computadores */</p>
<hr />
<div>== * '''Equipe 2 : TELETEC''' ==<br />
<br />
----<br />
<br />
== INTEGRANTES TELETEC ==<br />
<br />
* '''Daniel Estefano'''; estefano.daniel@gmail.com <br />
* '''Denis Teixeira'''; denisteixeira3@gmail.com <br />
* '''Leonardo Oliveira P.'''; leonardo-op@live.com <br />
* '''Odair de Moraes'''; odairdmoraes@hotmail.com<br />
* '''Robson de Carvalho'''; rob_carvalho12@hotmail.com<br />
* '''Vagner Cordeiro.''' cordeirotelecom@gmail.com<br />
<br />
----<br />
<br />
'''EMPRESA TELETEC - PROVEDOR DE ACESSO Á INTERNET:'''<br />
<br />
A Empresa Oferece os seguintes serviços: <br />
<br />
# Conta de Usuário para cada cliente;<br />
# Conta de E-mail para cada cliente;<br />
# Uma página Web Padrão;<br />
# Instalação do Modem ADSL e do Cabeamento Estrurado;<br />
# Acesso Wirelles;<br />
<br />
<br />
== Etapas Iniciais de Configurações da Rede ==<br />
<br />
<br />
# Instalação do Sistema Operacional:Ubuntu-Server;<br />
# Definido Sistema de Arquivo, Dividido em 3 Partições: ''1 Partição Primátia, 1 Partição Secundária e uma Partição para Swap;'' <br />
# Definido nome do Domínio: teletec.sj.ifsc.edu.br;<br />
# Criado um Usuário: Tecnico;<br />
# Acesso via SSH ao Servidor Teletec.<br />
<br />
----<br />
<br />
== Gerencia de Redes: Apache, Postfix e DNS ==<br />
<br />
'''Configurações do servidor DNS:''' <br />
<br />
- Edição do Arquivo para IP Estático: '''/etc/network/interfaces''' <br />
<br />
# This file describes the network interfaces available on your system<br />
# and how to activate them. For more information, see interfaces(5).<br />
# The loopback network interface<br />
auto lo<br />
iface lo inet loopback<br />
# The primary network interface<br />
auto eth0<br />
iface eth0 inet static<br />
address 200.135.37.100<br />
netmask 255.255.255.192<br />
gateway 200.135.37.126 <br />
<br />
- Edição do Arquivo do servidor DNS '''/etc/bind/named.conf''' <br />
<br />
Indica todos os arquivos que vai fazer a configuração dele<br />
<br />
// This is the primary configuration file for the BIND DNS server named.<br />
//<br />
// Please read /usr/share/doc/bind9/README.Debian.gz for information on the <br />
// structure of BIND configuration files in Debian, *BEFORE* you customize <br />
// this configuration file.<br />
//<br />
// If you are just adding zones, please do that in /etc/bind/named.conf.local<br />
include "/etc/bind/named.conf.options";<br />
include "/etc/bind/named.conf.local";<br />
include "/etc/bind/named.conf.default-zones";<br />
include "/etc/bind/servidor.conf";<br />
include "/etc/bind/tecnico.conf";<br />
include "/etc/bind/daniel.conf";<br />
<br />
- Edição do Arquivo de servidor DNS: named.conf.local '''/etc/bind/named.conf.local'''<br />
É um arquivo padrão do BIND onde foi configurado o o nosso dominino TELETEC.<br />
<br />
//<br />
// Do any local configuration here<br />
//<br />
<br />
// Consider adding the 1918 zones here, if they are not used in your<br />
// organization<br />
//include "/etc/bind/zones.rfc1918"8;<br />
zone "teletec.sj.ifsc.edu.br." IN {<br />
type master;<br />
file "/etc/bind/teletec.zone";<br />
allow-update { none; };<br />
};<br />
<br />
- Edição do Arquivo de DNS Reverso: '''/etc/bind/37.135.200.in-addr.arpa'''<br />
O DNS Reverso resolve um endereço IP para um nome de servidor – por exemplo, ele poderia resolver 200.176.3.142 para exemplo.hipotetico.com.br.<br />
<br />
$TTL 86400<br />
@ IN SOA servidor.teletec.sj.ifsc.edu.br. root (<br />
2011061500 ;<br />
1d ;<br />
1h ;<br />
1w ; <br />
1d ;<br />
)<br />
IN NS servidor.teletec.sj.ifsc.edu.br.<br />
100 IN PTR servidor.teletec.sj.ifsc.edu.br.<br />
<br />
- Edição do Arquivo para criar um subdomínio:'''/etc/bind/teletec.zone'''<br />
<br />
$TTL 86400<br />
@ IN SOA teletec.teletec.sj.ifsc.edu.br root (<br />
2011062901;<br />
3H;<br />
15M;<br />
1W;<br />
1D );<br />
IN NS teletec.teletec.sj.ifsc.edu.br.<br />
IN MX 0 mail.teletec.sj.ifsc.edu.br.<br />
localhost IN A 127.0.0.1<br />
$ORIGIN teletec.sj.ifsc.edu.br.<br />
teletec A 200.135.37.100<br />
www A 200.135.37.100<br />
mail A 200.135.37.100<br />
<br />
== Instalação de Equipamento de Redes (Modem, Switch e Roteadores) ==<br />
<br />
'''Configurações:''' <br />
<br />
Instalação:<br />
<br />
minicom -s<br />
<br />
Configuração do Roteador Cisco 1700: <br />
<br />
* Configuração dos Dois Roteadores Utilizando a ferramenta "Minicon" (Se fosse Windows seria Hyperterminal)<br />
* Configuração dos dispositivos: Serial e Ethernet<br />
* Configuração como Protocolo PPP<br />
<br />
- ''"Configuração da porta serial":''<br />
<br />
┌─────────────[configuração]──────────────┐<br />
│ Nomes de arquivos e rotas<br />
│ Protocolos de transferência de arquivos<br />
│ Configuração da porta serial<br />
│ Modem e discagem<br />
│ Tela e teclado<br />
│ Salvar configuração como dfl<br />
│ Salvar configuração como<br />
│ Sair<br />
│ Sair do Minicom<br />
└────────────────────────────────────────┘<br />
<br />
- ''"Alteração da Porta Serial"''<br />
┌──────────────────────────────────────────────────────────┐<br />
│ A – Dispositivo Serial : /dev/ttSy0 <br />
│ B – Localização do Arquivo de Travamento : /var/lock<br />
│ C – Programa de Entrada :<br />
│ D – Programa de Saída :<br />
│ E – Bps/Paridade/Bits : 9600 8N1 <br />
│ F – Controle de Fluxo por Hardware : Não<br />
│ G – Controle de Fluxo por Software : Não<br />
│<br />
│ Alterar qual configuração?<br />
└──────────────────────────────────────────────────────────┘<br />
<br />
- ''"Salvar configuração com dfl"''<br />
<br />
- ''Configurando a Interface Serial do Roteador:''<br />
<br />
enable;<br />
configure terminal;<br />
<br />
#Para configurar a interface serial:<br />
interface serial 0;<br />
ip address 10.0.0.1/30;<br />
encapsulation ppp;<br />
exit;<br />
<br />
#Para configurar a interface ethernet:<br />
interface fastethernet 0;<br />
ip address 172.18.0.1/24;<br />
exit;<br />
exit;<br />
<br />
#Para salvar as configurações:<br />
wr;<br />
<br />
== Cabeamento Estruturado ==<br />
<br />
Atividades Concluídas:<br />
<br />
- o A central telefônica ao DSLAM<br />
- o O DSLAM ao armário de telecom da equipe, através de uma linha telefone + DSL<br />
- o armário da equipe a uma área de trabalho. <br />
- O cabeamento permitiu a conexão do modem DSL no armário de telecom.<br />
- As tomadas da área de trabalho para conexão com Telefone e o Modem ADSL.<br />
<br />
== Programação para Redes de Computadores ==<br />
<br />
''Os Arquivos Encontram-se dentro da pasta: /var/www/teletec''<br />
<br />
- Edição do Arquivo '''Verificação.php''':<br />
<br />
<?<br />
session_start();<br />
$login = $_POST['login'];<br />
$senha = $_POST['senha'];<br />
if ( ( $login == "Administrador" ) && ( $senha == "orelha1234" ) ){<br />
$_SESSION['autorizado'] = $login;<br />
Header ("Location: principal.php");<br />
}else{<br />
Header ("Location: login.php");<br />
}<br />
?><br />
<br />
- Edição do Arquivo '''sair.php''':<br />
<br />
<?<br />
session_start();<br />
session_destroy();<br />
Header ("Location: login.php");<br />
?><br />
<br />
- Edição do arquivo '''principal.php''': <br />
<br />
<.?<br />
.session_start();<br />
.if (!isset($_SESSION['autorizado'])){<br />
.header ("Location: login.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Administrcao de Dominios</title><br />
<./head><br />
<.body><br />
<.p><a href="sair.php">Sair</a></p><br />
<.p></p><br />
<.p style="text-align:center;margin-left:auto;margin-right:auto;">Cliente Dominio Acao </p><br />
<br />
<.?<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$consulta = "SELECT * from clientes";<br />
$resultado = mysql_query($consulta,$conexao);<br />
while($linha = mysql_fetch_array($resultado)){<br />
$cliente = $linha['cliente'];<br />
$dominio = $linha['dominio'];<br />
.?><br />
<.form><br />
<.p style="text-align:center;margin-left:auto;margin-right:auto;"><br />
<.a name="cliente" id="cliente" href="alterar.php?id=<? echo $linha['dominio'];?>"> <?echo $.linha['cliente'];?></a> <br />
<.? echo $linha['dominio'];?> <a href="excluir.php?id=<? echo $linha['dominio'];?>"> Excluir</a></p><br />
<./form><br />
<.?<br />
.}<br />
.mysql_free_result($resultado);<br />
.mysql_close($conexao);<br />
.}<br />
.?><br />
<.p style="text-align:right;margin-left:auto;margin-right:0;"><br />
<.a href="adicionar.php"><span style="color:#ff0000">Adicionar novo dominio</span></a></p><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''mod-domínio.php''':<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$cliente = $_POST['cliente'];<br />
$dominio = $_POST['dominio'];<br />
$antigo = $_POST['antigo'];;<br />
if (empty($dominio)) {<br />
$dominio = "invalido";<br />
} <br />
<br />
if (preg_match('/^[a-z0-9]+/', $dominio)){<br />
}else{<br />
$dominio = "invalido";<br />
} <br />
<br />
$arquivo = '/etc/bind/named.conf';<br />
$linhas = array();<br />
exec("cat $arquivo",$linhas);<br />
for ($i = 0 ; $i < sizeof($linhas); $i++){<br />
if ($linhas[$i] == "include \"/etc/bind/$dominio.conf\";"){<br />
$dominio = "invalido";<br />
}<br />
}<br />
if ($dominio == "invalido"){<br />
header ("Location: alterar.php");<br />
}else{ <br />
<br />
$script = "/etc/teletec/mod-dominio.sh $antigo '$cliente' $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$deletar = "DELETE FROM clientes WHERE dominio='$antigo.teletec.sj.ifsc.edu.br'";<br />
mysql_query($deletar,$conexao);<br />
mysql_close($conexao); <br />
<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$inserir = "INSERT INTO clientes (cliente,dominio) VALUES ('$cliente','$dominio.teletec.sj.ifsc.edu.br')";<br />
mysql_query($inserir,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php"); <br />
<br />
}<br />
.}<br />
?.><br />
<br />
- Edição do Arquivo '''login.php''': <br />
<br />
.<?<br />
.session_start();<br />
.if (isset($_SESSION['autorizado'])){<br />
.Header ("Location: principal.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Hospedagem Web</title><br />
<./head><br />
<br />
<.body><br />
<.p></p><br />
<.p>Sistemas de Hospedagem de Sitios Web</p><br />
<.p></p><br />
<.form name="formTeste" action="verificacao.php" method="post"><br />
<.p>Usu&#xe1;rio:<br><br />
<.input type="text" name="login"> <br />
<.p>Senha:<br> <br />
<.input type="password" name="senha"> <br />
<.input type="submit" name="b_enviar" value="Entrar"><br />
<./form><br />
<.p></p><br />
<.?<br />
}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''Index.php''':<br />
<br />
<.?<br />
Header ("Location: login.php");<br />
.?><br />
<br />
- Edição do Arquivo '''excluir.php''':<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){ <br />
header ("Location: login.php");<br />
}else{<br />
$id=$_GET['id'];<br />
$parte1 = explode(".", $id);<br />
$antigo = $parte1[0];<br />
?.><br />
<.html><br />
<head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Excluir o cliente</title><br />
<./head><br />
<.body><br />
<.p>Voce realmente deseja excluir o cliente?</p><br />
<br />
<.p><a href="del-dominio.php?id=<?echo $antigo;?>">Sim</a> <a<br />
.href="principal.php">Nao</a></p><br />
<.p></p><br />
<?<br />
}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''del-dominio.php''':<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$dominio = $_GET['id'];<br />
$script = "/etc/teletec/del-dominio.sh $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$deletar = "DELETE FROM clientes WHERE dominio='$dominio.teletec.sj.ifsc.edu.br'";<br />
mysql_query($deletar,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php");<br />
}<br />
?.></div>Vagner.chttps://wiki.sj.ifsc.edu.br/index.php?title=Projeto_Integrador_-_2011.1_-_Teletec&diff=34781Projeto Integrador - 2011.1 - Teletec2011-07-09T00:08:51Z<p>Vagner.c: /* Programação para Redes de Computadores */</p>
<hr />
<div>== * '''Equipe 2 : TELETEC''' ==<br />
<br />
----<br />
<br />
== INTEGRANTES TELETEC ==<br />
<br />
* '''Daniel Estefano'''; estefano.daniel@gmail.com <br />
* '''Denis Teixeira'''; denisteixeira3@gmail.com <br />
* '''Leonardo Oliveira P.'''; leonardo-op@live.com <br />
* '''Odair de Moraes'''; odairdmoraes@hotmail.com<br />
* '''Robson de Carvalho'''; rob_carvalho12@hotmail.com<br />
* '''Vagner Cordeiro.''' cordeirotelecom@gmail.com<br />
<br />
----<br />
<br />
'''EMPRESA TELETEC - PROVEDOR DE ACESSO Á INTERNET:'''<br />
<br />
A Empresa Oferece os seguintes serviços: <br />
<br />
# Conta de Usuário para cada cliente;<br />
# Conta de E-mail para cada cliente;<br />
# Uma página Web Padrão;<br />
# Instalação do Modem ADSL e do Cabeamento Estrurado;<br />
# Acesso Wirelles;<br />
<br />
<br />
== Etapas Iniciais de Configurações da Rede ==<br />
<br />
<br />
# Instalação do Sistema Operacional:Ubuntu-Server;<br />
# Definido Sistema de Arquivo, Dividido em 3 Partições: ''1 Partição Primátia, 1 Partição Secundária e uma Partição para Swap;'' <br />
# Definido nome do Domínio: teletec.sj.ifsc.edu.br;<br />
# Criado um Usuário: Tecnico;<br />
# Acesso via SSH ao Servidor Teletec.<br />
<br />
----<br />
<br />
== Gerencia de Redes: Apache, Postfix e DNS ==<br />
<br />
'''Configurações do servidor DNS:''' <br />
<br />
- Edição do Arquivo para IP Estático: '''/etc/network/interfaces''' <br />
<br />
# This file describes the network interfaces available on your system<br />
# and how to activate them. For more information, see interfaces(5).<br />
# The loopback network interface<br />
auto lo<br />
iface lo inet loopback<br />
# The primary network interface<br />
auto eth0<br />
iface eth0 inet static<br />
address 200.135.37.100<br />
netmask 255.255.255.192<br />
gateway 200.135.37.126 <br />
<br />
- Edição do Arquivo do servidor DNS '''/etc/bind/named.conf''' <br />
<br />
Indica todos os arquivos que vai fazer a configuração dele<br />
<br />
// This is the primary configuration file for the BIND DNS server named.<br />
//<br />
// Please read /usr/share/doc/bind9/README.Debian.gz for information on the <br />
// structure of BIND configuration files in Debian, *BEFORE* you customize <br />
// this configuration file.<br />
//<br />
// If you are just adding zones, please do that in /etc/bind/named.conf.local<br />
include "/etc/bind/named.conf.options";<br />
include "/etc/bind/named.conf.local";<br />
include "/etc/bind/named.conf.default-zones";<br />
include "/etc/bind/servidor.conf";<br />
include "/etc/bind/tecnico.conf";<br />
include "/etc/bind/daniel.conf";<br />
<br />
- Edição do Arquivo de servidor DNS: named.conf.local '''/etc/bind/named.conf.local'''<br />
É um arquivo padrão do BIND onde foi configurado o o nosso dominino TELETEC.<br />
<br />
//<br />
// Do any local configuration here<br />
//<br />
<br />
// Consider adding the 1918 zones here, if they are not used in your<br />
// organization<br />
//include "/etc/bind/zones.rfc1918"8;<br />
zone "teletec.sj.ifsc.edu.br." IN {<br />
type master;<br />
file "/etc/bind/teletec.zone";<br />
allow-update { none; };<br />
};<br />
<br />
- Edição do Arquivo de DNS Reverso: '''/etc/bind/37.135.200.in-addr.arpa'''<br />
O DNS Reverso resolve um endereço IP para um nome de servidor – por exemplo, ele poderia resolver 200.176.3.142 para exemplo.hipotetico.com.br.<br />
<br />
$TTL 86400<br />
@ IN SOA servidor.teletec.sj.ifsc.edu.br. root (<br />
2011061500 ;<br />
1d ;<br />
1h ;<br />
1w ; <br />
1d ;<br />
)<br />
IN NS servidor.teletec.sj.ifsc.edu.br.<br />
100 IN PTR servidor.teletec.sj.ifsc.edu.br.<br />
<br />
- Edição do Arquivo para criar um subdomínio:'''/etc/bind/teletec.zone'''<br />
<br />
$TTL 86400<br />
@ IN SOA teletec.teletec.sj.ifsc.edu.br root (<br />
2011062901;<br />
3H;<br />
15M;<br />
1W;<br />
1D );<br />
IN NS teletec.teletec.sj.ifsc.edu.br.<br />
IN MX 0 mail.teletec.sj.ifsc.edu.br.<br />
localhost IN A 127.0.0.1<br />
$ORIGIN teletec.sj.ifsc.edu.br.<br />
teletec A 200.135.37.100<br />
www A 200.135.37.100<br />
mail A 200.135.37.100<br />
<br />
== Instalação de Equipamento de Redes (Modem, Switch e Roteadores) ==<br />
<br />
'''Configurações:''' <br />
<br />
Instalação:<br />
<br />
minicom -s<br />
<br />
Configuração do Roteador Cisco 1700: <br />
<br />
* Configuração dos Dois Roteadores Utilizando a ferramenta "Minicon" (Se fosse Windows seria Hyperterminal)<br />
* Configuração dos dispositivos: Serial e Ethernet<br />
* Configuração como Protocolo PPP<br />
<br />
- ''"Configuração da porta serial":''<br />
<br />
┌─────────────[configuração]──────────────┐<br />
│ Nomes de arquivos e rotas<br />
│ Protocolos de transferência de arquivos<br />
│ Configuração da porta serial<br />
│ Modem e discagem<br />
│ Tela e teclado<br />
│ Salvar configuração como dfl<br />
│ Salvar configuração como<br />
│ Sair<br />
│ Sair do Minicom<br />
└────────────────────────────────────────┘<br />
<br />
- ''"Alteração da Porta Serial"''<br />
┌──────────────────────────────────────────────────────────┐<br />
│ A – Dispositivo Serial : /dev/ttSy0 <br />
│ B – Localização do Arquivo de Travamento : /var/lock<br />
│ C – Programa de Entrada :<br />
│ D – Programa de Saída :<br />
│ E – Bps/Paridade/Bits : 9600 8N1 <br />
│ F – Controle de Fluxo por Hardware : Não<br />
│ G – Controle de Fluxo por Software : Não<br />
│<br />
│ Alterar qual configuração?<br />
└──────────────────────────────────────────────────────────┘<br />
<br />
- ''"Salvar configuração com dfl"''<br />
<br />
- ''Configurando a Interface Serial do Roteador:''<br />
<br />
enable;<br />
configure terminal;<br />
<br />
#Para configurar a interface serial:<br />
interface serial 0;<br />
ip address 10.0.0.1/30;<br />
encapsulation ppp;<br />
exit;<br />
<br />
#Para configurar a interface ethernet:<br />
interface fastethernet 0;<br />
ip address 172.18.0.1/24;<br />
exit;<br />
exit;<br />
<br />
#Para salvar as configurações:<br />
wr;<br />
<br />
== Cabeamento Estruturado ==<br />
<br />
Atividades Concluídas:<br />
<br />
- o A central telefônica ao DSLAM<br />
- o O DSLAM ao armário de telecom da equipe, através de uma linha telefone + DSL<br />
- o armário da equipe a uma área de trabalho. <br />
- O cabeamento permitiu a conexão do modem DSL no armário de telecom.<br />
- As tomadas da área de trabalho para conexão com Telefone e o Modem ADSL.<br />
<br />
== Programação para Redes de Computadores ==<br />
<br />
''Os Arquivos Encontram-se dentro da pasta: /var/www/teletec''<br />
<br />
- Edição do Arquivo '''Verificação.php''':<br />
<br />
<?<br />
session_start();<br />
$login = $_POST['login'];<br />
$senha = $_POST['senha'];<br />
if ( ( $login == "Administrador" ) && ( $senha == "orelha1234" ) ){<br />
$_SESSION['autorizado'] = $login;<br />
Header ("Location: principal.php");<br />
}else{<br />
Header ("Location: login.php");<br />
}<br />
?><br />
<br />
- Edição do Arquivo '''sair.php''':<br />
<br />
<?<br />
session_start();<br />
session_destroy();<br />
Header ("Location: login.php");<br />
?><br />
<br />
- Edição do arquivo '''principal.php''': <br />
<br />
<.?<br />
.session_start();<br />
.if (!isset($_SESSION['autorizado'])){<br />
.header ("Location: login.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Administrcao de Dominios</title><br />
<./head><br />
<.body><br />
<.p><a href="sair.php">Sair</a></p><br />
<.p></p><br />
<.p style="text-align:center;margin-left:auto;margin-right:auto;">Cliente Dominio Acao </p><br />
<br />
<.?<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$consulta = "SELECT * from clientes";<br />
$resultado = mysql_query($consulta,$conexao);<br />
while($linha = mysql_fetch_array($resultado)){<br />
$cliente = $linha['cliente'];<br />
$dominio = $linha['dominio'];<br />
.?><br />
<.form><br />
<.p style="text-align:center;margin-left:auto;margin-right:auto;"><br />
<.a name="cliente" id="cliente" href="alterar.php?id=<? echo $linha['dominio'];?>"> <?echo $.linha['cliente'];?></a> <br />
<.? echo $linha['dominio'];?> <a href="excluir.php?id=<? echo $linha['dominio'];?>"> Excluir</a></p><br />
<./form><br />
<.?<br />
.}<br />
.mysql_free_result($resultado);<br />
.mysql_close($conexao);<br />
.}<br />
.?><br />
<.p style="text-align:right;margin-left:auto;margin-right:0;"><br />
<.a href="adicionar.php"><span style="color:#ff0000">Adicionar novo dominio</span></a></p><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo '''mod-domínio.php''':<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$cliente = $_POST['cliente'];<br />
$dominio = $_POST['dominio'];<br />
$antigo = $_POST['antigo'];;<br />
if (empty($dominio)) {<br />
$dominio = "invalido";<br />
} <br />
<br />
if (preg_match('/^[a-z0-9]+/', $dominio)){<br />
}else{<br />
$dominio = "invalido";<br />
} <br />
<br />
$arquivo = '/etc/bind/named.conf';<br />
$linhas = array();<br />
exec("cat $arquivo",$linhas);<br />
for ($i = 0 ; $i < sizeof($linhas); $i++){<br />
if ($linhas[$i] == "include \"/etc/bind/$dominio.conf\";"){<br />
$dominio = "invalido";<br />
}<br />
}<br />
if ($dominio == "invalido"){<br />
header ("Location: alterar.php");<br />
}else{ <br />
<br />
$script = "/etc/teletec/mod-dominio.sh $antigo '$cliente' $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$deletar = "DELETE FROM clientes WHERE dominio='$antigo.teletec.sj.ifsc.edu.br'";<br />
mysql_query($deletar,$conexao);<br />
mysql_close($conexao); <br />
<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$inserir = "INSERT INTO clientes (cliente,dominio) VALUES ('$cliente','$dominio.teletec.sj.ifsc.edu.br')";<br />
mysql_query($inserir,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php"); <br />
<br />
}<br />
.}<br />
?.><br />
<br />
- Edição do Arquivo login.php: <br />
<br />
.<?<br />
.session_start();<br />
.if (isset($_SESSION['autorizado'])){<br />
.Header ("Location: principal.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Hospedagem Web</title><br />
<./head><br />
<br />
<.body><br />
<.p></p><br />
<.p>Sistemas de Hospedagem de Sitios Web</p><br />
<.p></p><br />
<.form name="formTeste" action="verificacao.php" method="post"><br />
<.p>Usu&#xe1;rio:<br><br />
<.input type="text" name="login"> <br />
<.p>Senha:<br> <br />
<.input type="password" name="senha"> <br />
<.input type="submit" name="b_enviar" value="Entrar"><br />
<./form><br />
<.p></p><br />
<.?<br />
}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo Index.php:<br />
<br />
<.?<br />
Header ("Location: login.php");<br />
.?><br />
<br />
- Edição do Arquivo excluir.php:<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){ <br />
header ("Location: login.php");<br />
}else{<br />
$id=$_GET['id'];<br />
$parte1 = explode(".", $id);<br />
$antigo = $parte1[0];<br />
?.><br />
<.html><br />
<head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Excluir o cliente</title><br />
<./head><br />
<.body><br />
<.p>Voce realmente deseja excluir o cliente?</p><br />
<br />
<.p><a href="del-dominio.php?id=<?echo $antigo;?>">Sim</a> <a<br />
.href="principal.php">Nao</a></p><br />
<.p></p><br />
<?<br />
}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo del-dominio.php:<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$dominio = $_GET['id'];<br />
$script = "/etc/teletec/del-dominio.sh $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$deletar = "DELETE FROM clientes WHERE dominio='$dominio.teletec.sj.ifsc.edu.br'";<br />
mysql_query($deletar,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php");<br />
}<br />
?.></div>Vagner.chttps://wiki.sj.ifsc.edu.br/index.php?title=Projeto_Integrador_-_2011.1_-_Teletec&diff=34780Projeto Integrador - 2011.1 - Teletec2011-07-09T00:06:42Z<p>Vagner.c: </p>
<hr />
<div>== * '''Equipe 2 : TELETEC''' ==<br />
<br />
----<br />
<br />
== INTEGRANTES TELETEC ==<br />
<br />
* '''Daniel Estefano'''; estefano.daniel@gmail.com <br />
* '''Denis Teixeira'''; denisteixeira3@gmail.com <br />
* '''Leonardo Oliveira P.'''; leonardo-op@live.com <br />
* '''Odair de Moraes'''; odairdmoraes@hotmail.com<br />
* '''Robson de Carvalho'''; rob_carvalho12@hotmail.com<br />
* '''Vagner Cordeiro.''' cordeirotelecom@gmail.com<br />
<br />
----<br />
<br />
'''EMPRESA TELETEC - PROVEDOR DE ACESSO Á INTERNET:'''<br />
<br />
A Empresa Oferece os seguintes serviços: <br />
<br />
# Conta de Usuário para cada cliente;<br />
# Conta de E-mail para cada cliente;<br />
# Uma página Web Padrão;<br />
# Instalação do Modem ADSL e do Cabeamento Estrurado;<br />
# Acesso Wirelles;<br />
<br />
<br />
== Etapas Iniciais de Configurações da Rede ==<br />
<br />
<br />
# Instalação do Sistema Operacional:Ubuntu-Server;<br />
# Definido Sistema de Arquivo, Dividido em 3 Partições: ''1 Partição Primátia, 1 Partição Secundária e uma Partição para Swap;'' <br />
# Definido nome do Domínio: teletec.sj.ifsc.edu.br;<br />
# Criado um Usuário: Tecnico;<br />
# Acesso via SSH ao Servidor Teletec.<br />
<br />
----<br />
<br />
== Gerencia de Redes: Apache, Postfix e DNS ==<br />
<br />
'''Configurações do servidor DNS:''' <br />
<br />
- Edição do Arquivo para IP Estático: '''/etc/network/interfaces''' <br />
<br />
# This file describes the network interfaces available on your system<br />
# and how to activate them. For more information, see interfaces(5).<br />
# The loopback network interface<br />
auto lo<br />
iface lo inet loopback<br />
# The primary network interface<br />
auto eth0<br />
iface eth0 inet static<br />
address 200.135.37.100<br />
netmask 255.255.255.192<br />
gateway 200.135.37.126 <br />
<br />
- Edição do Arquivo do servidor DNS '''/etc/bind/named.conf''' <br />
<br />
Indica todos os arquivos que vai fazer a configuração dele<br />
<br />
// This is the primary configuration file for the BIND DNS server named.<br />
//<br />
// Please read /usr/share/doc/bind9/README.Debian.gz for information on the <br />
// structure of BIND configuration files in Debian, *BEFORE* you customize <br />
// this configuration file.<br />
//<br />
// If you are just adding zones, please do that in /etc/bind/named.conf.local<br />
include "/etc/bind/named.conf.options";<br />
include "/etc/bind/named.conf.local";<br />
include "/etc/bind/named.conf.default-zones";<br />
include "/etc/bind/servidor.conf";<br />
include "/etc/bind/tecnico.conf";<br />
include "/etc/bind/daniel.conf";<br />
<br />
- Edição do Arquivo de servidor DNS: named.conf.local '''/etc/bind/named.conf.local'''<br />
É um arquivo padrão do BIND onde foi configurado o o nosso dominino TELETEC.<br />
<br />
//<br />
// Do any local configuration here<br />
//<br />
<br />
// Consider adding the 1918 zones here, if they are not used in your<br />
// organization<br />
//include "/etc/bind/zones.rfc1918"8;<br />
zone "teletec.sj.ifsc.edu.br." IN {<br />
type master;<br />
file "/etc/bind/teletec.zone";<br />
allow-update { none; };<br />
};<br />
<br />
- Edição do Arquivo de DNS Reverso: '''/etc/bind/37.135.200.in-addr.arpa'''<br />
O DNS Reverso resolve um endereço IP para um nome de servidor – por exemplo, ele poderia resolver 200.176.3.142 para exemplo.hipotetico.com.br.<br />
<br />
$TTL 86400<br />
@ IN SOA servidor.teletec.sj.ifsc.edu.br. root (<br />
2011061500 ;<br />
1d ;<br />
1h ;<br />
1w ; <br />
1d ;<br />
)<br />
IN NS servidor.teletec.sj.ifsc.edu.br.<br />
100 IN PTR servidor.teletec.sj.ifsc.edu.br.<br />
<br />
- Edição do Arquivo para criar um subdomínio:'''/etc/bind/teletec.zone'''<br />
<br />
$TTL 86400<br />
@ IN SOA teletec.teletec.sj.ifsc.edu.br root (<br />
2011062901;<br />
3H;<br />
15M;<br />
1W;<br />
1D );<br />
IN NS teletec.teletec.sj.ifsc.edu.br.<br />
IN MX 0 mail.teletec.sj.ifsc.edu.br.<br />
localhost IN A 127.0.0.1<br />
$ORIGIN teletec.sj.ifsc.edu.br.<br />
teletec A 200.135.37.100<br />
www A 200.135.37.100<br />
mail A 200.135.37.100<br />
<br />
== Instalação de Equipamento de Redes (Modem, Switch e Roteadores) ==<br />
<br />
'''Configurações:''' <br />
<br />
Instalação:<br />
<br />
minicom -s<br />
<br />
Configuração do Roteador Cisco 1700: <br />
<br />
* Configuração dos Dois Roteadores Utilizando a ferramenta "Minicon" (Se fosse Windows seria Hyperterminal)<br />
* Configuração dos dispositivos: Serial e Ethernet<br />
* Configuração como Protocolo PPP<br />
<br />
- ''"Configuração da porta serial":''<br />
<br />
┌─────────────[configuração]──────────────┐<br />
│ Nomes de arquivos e rotas<br />
│ Protocolos de transferência de arquivos<br />
│ Configuração da porta serial<br />
│ Modem e discagem<br />
│ Tela e teclado<br />
│ Salvar configuração como dfl<br />
│ Salvar configuração como<br />
│ Sair<br />
│ Sair do Minicom<br />
└────────────────────────────────────────┘<br />
<br />
- ''"Alteração da Porta Serial"''<br />
┌──────────────────────────────────────────────────────────┐<br />
│ A – Dispositivo Serial : /dev/ttSy0 <br />
│ B – Localização do Arquivo de Travamento : /var/lock<br />
│ C – Programa de Entrada :<br />
│ D – Programa de Saída :<br />
│ E – Bps/Paridade/Bits : 9600 8N1 <br />
│ F – Controle de Fluxo por Hardware : Não<br />
│ G – Controle de Fluxo por Software : Não<br />
│<br />
│ Alterar qual configuração?<br />
└──────────────────────────────────────────────────────────┘<br />
<br />
- ''"Salvar configuração com dfl"''<br />
<br />
- ''Configurando a Interface Serial do Roteador:''<br />
<br />
enable;<br />
configure terminal;<br />
<br />
#Para configurar a interface serial:<br />
interface serial 0;<br />
ip address 10.0.0.1/30;<br />
encapsulation ppp;<br />
exit;<br />
<br />
#Para configurar a interface ethernet:<br />
interface fastethernet 0;<br />
ip address 172.18.0.1/24;<br />
exit;<br />
exit;<br />
<br />
#Para salvar as configurações:<br />
wr;<br />
<br />
== Cabeamento Estruturado ==<br />
<br />
Atividades Concluídas:<br />
<br />
- o A central telefônica ao DSLAM<br />
- o O DSLAM ao armário de telecom da equipe, através de uma linha telefone + DSL<br />
- o armário da equipe a uma área de trabalho. <br />
- O cabeamento permitiu a conexão do modem DSL no armário de telecom.<br />
- As tomadas da área de trabalho para conexão com Telefone e o Modem ADSL.<br />
<br />
== Programação para Redes de Computadores ==<br />
<br />
- Edição do Arquivo Verificação.php:<br />
<br />
<?<br />
session_start();<br />
$login = $_POST['login'];<br />
$senha = $_POST['senha'];<br />
if ( ( $login == "Administrador" ) && ( $senha == "orelha1234" ) ){<br />
$_SESSION['autorizado'] = $login;<br />
Header ("Location: principal.php");<br />
}else{<br />
Header ("Location: login.php");<br />
}<br />
?><br />
<br />
- Edição do Arquivo sair.php:<br />
<br />
<?<br />
session_start();<br />
session_destroy();<br />
Header ("Location: login.php");<br />
?><br />
<br />
- Edição do arquivo principal.php: <br />
<br />
<.?<br />
.session_start();<br />
.if (!isset($_SESSION['autorizado'])){<br />
.header ("Location: login.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Administrcao de Dominios</title><br />
<./head><br />
<.body><br />
<.p><a href="sair.php">Sair</a></p><br />
<.p></p><br />
<.p style="text-align:center;margin-left:auto;margin-right:auto;">Cliente Dominio Acao </p><br />
<br />
<.?<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$consulta = "SELECT * from clientes";<br />
$resultado = mysql_query($consulta,$conexao);<br />
while($linha = mysql_fetch_array($resultado)){<br />
$cliente = $linha['cliente'];<br />
$dominio = $linha['dominio'];<br />
.?><br />
<.form><br />
<.p style="text-align:center;margin-left:auto;margin-right:auto;"><br />
<.a name="cliente" id="cliente" href="alterar.php?id=<? echo $linha['dominio'];?>"> <?echo $.linha['cliente'];?></a> <br />
<.? echo $linha['dominio'];?> <a href="excluir.php?id=<? echo $linha['dominio'];?>"> Excluir</a></p><br />
<./form><br />
<.?<br />
.}<br />
.mysql_free_result($resultado);<br />
.mysql_close($conexao);<br />
.}<br />
.?><br />
<.p style="text-align:right;margin-left:auto;margin-right:0;"><br />
<.a href="adicionar.php"><span style="color:#ff0000">Adicionar novo dominio</span></a></p><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo mod-domínio.php:<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$cliente = $_POST['cliente'];<br />
$dominio = $_POST['dominio'];<br />
$antigo = $_POST['antigo'];;<br />
if (empty($dominio)) {<br />
$dominio = "invalido";<br />
} <br />
<br />
if (preg_match('/^[a-z0-9]+/', $dominio)){<br />
}else{<br />
$dominio = "invalido";<br />
} <br />
<br />
$arquivo = '/etc/bind/named.conf';<br />
$linhas = array();<br />
exec("cat $arquivo",$linhas);<br />
for ($i = 0 ; $i < sizeof($linhas); $i++){<br />
if ($linhas[$i] == "include \"/etc/bind/$dominio.conf\";"){<br />
$dominio = "invalido";<br />
}<br />
}<br />
if ($dominio == "invalido"){<br />
header ("Location: alterar.php");<br />
}else{ <br />
<br />
$script = "/etc/teletec/mod-dominio.sh $antigo '$cliente' $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$deletar = "DELETE FROM clientes WHERE dominio='$antigo.teletec.sj.ifsc.edu.br'";<br />
mysql_query($deletar,$conexao);<br />
mysql_close($conexao); <br />
<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$inserir = "INSERT INTO clientes (cliente,dominio) VALUES ('$cliente','$dominio.teletec.sj.ifsc.edu.br')";<br />
mysql_query($inserir,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php"); <br />
<br />
}<br />
.}<br />
?.><br />
<br />
- Edição do Arquivo login.php: <br />
<br />
.<?<br />
.session_start();<br />
.if (isset($_SESSION['autorizado'])){<br />
.Header ("Location: principal.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Hospedagem Web</title><br />
<./head><br />
<br />
<.body><br />
<.p></p><br />
<.p>Sistemas de Hospedagem de Sitios Web</p><br />
<.p></p><br />
<.form name="formTeste" action="verificacao.php" method="post"><br />
<.p>Usu&#xe1;rio:<br><br />
<.input type="text" name="login"> <br />
<.p>Senha:<br> <br />
<.input type="password" name="senha"> <br />
<.input type="submit" name="b_enviar" value="Entrar"><br />
<./form><br />
<.p></p><br />
<.?<br />
}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo Index.php:<br />
<br />
<.?<br />
Header ("Location: login.php");<br />
.?><br />
<br />
- Edição do Arquivo excluir.php:<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){ <br />
header ("Location: login.php");<br />
}else{<br />
$id=$_GET['id'];<br />
$parte1 = explode(".", $id);<br />
$antigo = $parte1[0];<br />
?.><br />
<.html><br />
<head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Excluir o cliente</title><br />
<./head><br />
<.body><br />
<.p>Voce realmente deseja excluir o cliente?</p><br />
<br />
<.p><a href="del-dominio.php?id=<?echo $antigo;?>">Sim</a> <a<br />
.href="principal.php">Nao</a></p><br />
<.p></p><br />
<?<br />
}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo del-dominio.php:<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$dominio = $_GET['id'];<br />
$script = "/etc/teletec/del-dominio.sh $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$deletar = "DELETE FROM clientes WHERE dominio='$dominio.teletec.sj.ifsc.edu.br'";<br />
mysql_query($deletar,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php");<br />
}<br />
?.></div>Vagner.chttps://wiki.sj.ifsc.edu.br/index.php?title=Projeto_Integrador_-_2011.1_-_Teletec&diff=34779Projeto Integrador - 2011.1 - Teletec2011-07-09T00:05:35Z<p>Vagner.c: </p>
<hr />
<div>== * '''Equipe 2 : TELETEC''' ==<br />
<br />
----<br />
<br />
== INTEGRANTES TELETEC ==<br />
<br />
* '''Daniel Estefano'''; estefano.daniel@gmail.com <br />
* '''Denis Teixeira'''; denisteixeira3@gmail.com <br />
* '''Leonardo Oliveira P.'''; leonardo-op@live.com <br />
* '''Odair de Moraes'''; odairdmoraes@hotmail.com<br />
* '''Robson de Carvalho'''; rob_carvalho12@hotmail.com<br />
* '''Vagner Cordeiro.''' cordeirotelecom@gmail.com<br />
<br />
----<br />
<br />
'''EMPRESA TELETEC - PROVEDOR DE ACESSO Á INTERNET:'''<br />
<br />
A Empresa Oferece os seguintes serviços: <br />
<br />
# Conta de Usuário para cada cliente;<br />
# Conta de E-mail para cada cliente;<br />
# Uma página Web Padrão;<br />
# Instalação do Modem ADSL e do Cabeamento Estrurado;<br />
# Acesso Wirelles;<br />
<br />
<br />
== Etapas Iniciais de Configurações da Rede ==<br />
<br />
<br />
# Instalação do Sistema Operacional:Ubuntu-Server;<br />
# Definido Sistema de Arquivo, Dividido em 3 Partições: ''1 Partição Primátia, 1 Partição Secundária e uma Partição para Swap;'' <br />
# Definido nome do Domínio: teletec.sj.ifsc.edu.br;<br />
# Criado um Usuário: Tecnico;<br />
# Acesso via SSH ao Servidor Teletec.<br />
<br />
----<br />
<br />
== Gerencia de Redes: Apache, Postfix e DNS ==<br />
<br />
'''Configurações do servidor DNS:''' <br />
<br />
- Edição do Arquivo para IP Estático: '''/etc/network/interfaces''' <br />
<br />
# This file describes the network interfaces available on your system<br />
# and how to activate them. For more information, see interfaces(5).<br />
# The loopback network interface<br />
auto lo<br />
iface lo inet loopback<br />
# The primary network interface<br />
auto eth0<br />
iface eth0 inet static<br />
address 200.135.37.100<br />
netmask 255.255.255.192<br />
gateway 200.135.37.126 <br />
<br />
- Edição do Arquivo do servidor DNS '''/etc/bind/named.conf''' <br />
<br />
Indica todos os arquivos que vai fazer a configuração dele<br />
<br />
// This is the primary configuration file for the BIND DNS server named.<br />
//<br />
// Please read /usr/share/doc/bind9/README.Debian.gz for information on the <br />
// structure of BIND configuration files in Debian, *BEFORE* you customize <br />
// this configuration file.<br />
//<br />
// If you are just adding zones, please do that in /etc/bind/named.conf.local<br />
include "/etc/bind/named.conf.options";<br />
include "/etc/bind/named.conf.local";<br />
include "/etc/bind/named.conf.default-zones";<br />
include "/etc/bind/servidor.conf";<br />
include "/etc/bind/tecnico.conf";<br />
include "/etc/bind/daniel.conf";<br />
<br />
- Edição do Arquivo de servidor DNS: named.conf.local '''/etc/bind/named.conf.local'''<br />
É um arquivo padrão do BIND onde foi configurado o o nosso dominino TELETEC.<br />
<br />
//<br />
// Do any local configuration here<br />
//<br />
<br />
// Consider adding the 1918 zones here, if they are not used in your<br />
// organization<br />
//include "/etc/bind/zones.rfc1918"8;<br />
zone "teletec.sj.ifsc.edu.br." IN {<br />
type master;<br />
file "/etc/bind/teletec.zone";<br />
allow-update { none; };<br />
};<br />
<br />
- Edição do Arquivo de DNS Reverso: '''/etc/bind/37.135.200.in-addr.arpa'''<br />
O DNS Reverso resolve um endereço IP para um nome de servidor – por exemplo, ele poderia resolver 200.176.3.142 para exemplo.hipotetico.com.br.<br />
<br />
$TTL 86400<br />
@ IN SOA servidor.teletec.sj.ifsc.edu.br. root (<br />
2011061500 ;<br />
1d ;<br />
1h ;<br />
1w ; <br />
1d ;<br />
)<br />
IN NS servidor.teletec.sj.ifsc.edu.br.<br />
100 IN PTR servidor.teletec.sj.ifsc.edu.br.<br />
<br />
- Edição do Arquivo para criar um subdomínio:'''/etc/bind/teletec.zone'''<br />
<br />
$TTL 86400<br />
@ IN SOA teletec.teletec.sj.ifsc.edu.br root (<br />
2011062901;<br />
3H;<br />
15M;<br />
1W;<br />
1D );<br />
IN NS teletec.teletec.sj.ifsc.edu.br.<br />
IN MX 0 mail.teletec.sj.ifsc.edu.br.<br />
localhost IN A 127.0.0.1<br />
$ORIGIN teletec.sj.ifsc.edu.br.<br />
teletec A 200.135.37.100<br />
www A 200.135.37.100<br />
mail A 200.135.37.100<br />
<br />
== Instalação de Equipamento de Redes (Modem, Switch e Roteadores) ==<br />
<br />
'''Configurações:''' <br />
<br />
Instalação:<br />
<br />
minicom -s<br />
<br />
Configuração do Roteador Cisco 1700: <br />
<br />
* Configuração dos Dois Roteadores Utilizando a ferramenta "Minicon" (Se fosse Windows seria Hyperterminal)<br />
* Configuração dos dispositivos: Serial e Ethernet<br />
* Configuração como Protocolo PPP<br />
<br />
- ''"Configuração da porta serial":''<br />
<br />
┌─────────────[configuração]──────────────┐<br />
│ Nomes de arquivos e rotas<br />
│ Protocolos de transferência de arquivos<br />
│ Configuração da porta serial<br />
│ Modem e discagem<br />
│ Tela e teclado<br />
│ Salvar configuração como dfl<br />
│ Salvar configuração como<br />
│ Sair<br />
│ Sair do Minicom<br />
└────────────────────────────────────────┘<br />
<br />
- ''"Alteração da Porta Serial"''<br />
┌──────────────────────────────────────────────────────────┐<br />
│ A – Dispositivo Serial : /dev/ttSy0 <br />
│ B – Localização do Arquivo de Travamento : /var/lock<br />
│ C – Programa de Entrada :<br />
│ D – Programa de Saída :<br />
│ E – Bps/Paridade/Bits : 9600 8N1 <br />
│ F – Controle de Fluxo por Hardware : Não<br />
│ G – Controle de Fluxo por Software : Não<br />
│<br />
│ Alterar qual configuração?<br />
└──────────────────────────────────────────────────────────┘<br />
<br />
- ''"Salvar configuração com dfl"''<br />
<br />
- ''Configurando a Interface Serial do Roteador:''<br />
<br />
enable;<br />
configure terminal;<br />
<br />
#Para configurar a interface serial:<br />
interface serial 0;<br />
ip address 10.0.0.1/30;<br />
encapsulation ppp;<br />
exit;<br />
<br />
#Para configurar a interface ethernet:<br />
interface fastethernet 0;<br />
ip address 172.18.0.1/24;<br />
exit;<br />
exit;<br />
<br />
#Para salvar as configurações:<br />
wr;<br />
<br />
== Cabeamento Estruturado ==<br />
<br />
Atividades Concluídas:<br />
<br />
- o A central telefônica ao DSLAM<br />
- o O DSLAM ao armário de telecom da equipe, através de uma linha telefone + DSL<br />
- o armário da equipe a uma área de trabalho. <br />
- O cabeamento permitiu a conexão do modem DSL no armário de telecom.<br />
- As tomadas da área de trabalho para conexão com Telefone e o Modem ADSL.<br />
<br />
== Programação para Redes de Computadores ==<br />
<br />
- Edição do Arquivo Verificação.php:<br />
<br />
<?<br />
session_start();<br />
$login = $_POST['login'];<br />
$senha = $_POST['senha'];<br />
if ( ( $login == "Administrador" ) && ( $senha == "orelha1234" ) ){<br />
$_SESSION['autorizado'] = $login;<br />
Header ("Location: principal.php");<br />
}else{<br />
Header ("Location: login.php");<br />
}<br />
?><br />
<br />
- Edição do Arquivo sair.php:<br />
<br />
<?<br />
session_start();<br />
session_destroy();<br />
Header ("Location: login.php");<br />
?><br />
<br />
- Edição do arquivo principal.php: <br />
<br />
<.?<br />
.session_start();<br />
.if (!isset($_SESSION['autorizado'])){<br />
.header ("Location: login.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Administrcao de Dominios</title><br />
<./head><br />
<.body><br />
<.p><a href="sair.php">Sair</a></p><br />
<.p></p><br />
<.p style="text-align:center;margin-left:auto;margin-right:auto;">Cliente Dominio Acao </p><br />
<br />
<.?<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$consulta = "SELECT * from clientes";<br />
$resultado = mysql_query($consulta,$conexao);<br />
while($linha = mysql_fetch_array($resultado)){<br />
$cliente = $linha['cliente'];<br />
$dominio = $linha['dominio'];<br />
.?><br />
<.form><br />
<.p style="text-align:center;margin-left:auto;margin-right:auto;"><br />
<.a name="cliente" id="cliente" href="alterar.php?id=<? echo $linha['dominio'];?>"> <?echo $.linha['cliente'];?></a> <br />
<.? echo $linha['dominio'];?> <a href="excluir.php?id=<? echo $linha['dominio'];?>"> Excluir</a></p><br />
<./form><br />
<.?<br />
.}<br />
.mysql_free_result($resultado);<br />
.mysql_close($conexao);<br />
.}<br />
.?><br />
<.p style="text-align:right;margin-left:auto;margin-right:0;"><br />
<.a href="adicionar.php"><span style="color:#ff0000">Adicionar novo dominio</span></a></p><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo mod-domínio.php:<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$cliente = $_POST['cliente'];<br />
$dominio = $_POST['dominio'];<br />
$antigo = $_POST['antigo'];;<br />
if (empty($dominio)) {<br />
$dominio = "invalido";<br />
} <br />
<br />
if (preg_match('/^[a-z0-9]+/', $dominio)){<br />
}else{<br />
$dominio = "invalido";<br />
} <br />
<br />
$arquivo = '/etc/bind/named.conf';<br />
$linhas = array();<br />
exec("cat $arquivo",$linhas);<br />
for ($i = 0 ; $i < sizeof($linhas); $i++){<br />
if ($linhas[$i] == "include \"/etc/bind/$dominio.conf\";"){<br />
$dominio = "invalido";<br />
}<br />
}<br />
if ($dominio == "invalido"){<br />
header ("Location: alterar.php");<br />
}else{ <br />
<br />
$script = "/etc/teletec/mod-dominio.sh $antigo '$cliente' $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$deletar = "DELETE FROM clientes WHERE dominio='$antigo.teletec.sj.ifsc.edu.br'";<br />
mysql_query($deletar,$conexao);<br />
mysql_close($conexao); <br />
<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$inserir = "INSERT INTO clientes (cliente,dominio) VALUES ('$cliente','$dominio.teletec.sj.ifsc.edu.br')";<br />
mysql_query($inserir,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php"); <br />
<br />
}<br />
.}<br />
?.><br />
<br />
- Edição do Arquivo login.php: <br />
<br />
.<?<br />
.session_start();<br />
.if (isset($_SESSION['autorizado'])){<br />
.Header ("Location: principal.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Hospedagem Web</title><br />
<./head><br />
<br />
<.body><br />
<.p></p><br />
<.p>Sistemas de Hospedagem de Sitios Web</p><br />
<.p></p><br />
<.form name="formTeste" action="verificacao.php" method="post"><br />
<.p>Usu&#xe1;rio:<br><br />
<.input type="text" name="login"> <br />
<.p>Senha:<br> <br />
<.input type="password" name="senha"> <br />
<.input type="submit" name="b_enviar" value="Entrar"><br />
<./form><br />
<.p></p><br />
<.?<br />
}<br />
.?><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo Index.php:<br />
<br />
<.?<br />
Header ("Location: login.php");<br />
.?><br />
<br />
- Edição do Arquivo excluir.php:<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){ <br />
header ("Location: login.php");<br />
}else{<br />
$id=$_GET['id'];<br />
$parte1 = explode(".", $id);<br />
$antigo = $parte1[0];<br />
?.><br />
<.html><br />
<head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Excluir o cliente</title><br />
<./head><br />
<.body><br />
<.p>Voce realmente deseja excluir o cliente?</p><br />
<br />
<.p><a href="del-dominio.php?id=<?echo $antigo;?>">Sim</a> <a<br />
.href="principal.php">Nao</a></p><br />
<.p></p><br />
<?<br />
}<br />
.?><br />
<./body><br />
<./html></div>Vagner.chttps://wiki.sj.ifsc.edu.br/index.php?title=Projeto_Integrador_-_2011.1_-_Teletec&diff=34778Projeto Integrador - 2011.1 - Teletec2011-07-08T23:57:20Z<p>Vagner.c: </p>
<hr />
<div>== * '''Equipe 2 : TELETEC''' ==<br />
<br />
----<br />
<br />
== INTEGRANTES TELETEC ==<br />
<br />
* '''Daniel Estefano'''; estefano.daniel@gmail.com <br />
* '''Denis Teixeira'''; denisteixeira3@gmail.com <br />
* '''Leonardo Oliveira P.'''; leonardo-op@live.com <br />
* '''Odair de Moraes'''; odairdmoraes@hotmail.com<br />
* '''Robson de Carvalho'''; rob_carvalho12@hotmail.com<br />
* '''Vagner Cordeiro.''' cordeirotelecom@gmail.com<br />
<br />
----<br />
<br />
'''EMPRESA TELETEC - PROVEDOR DE ACESSO Á INTERNET:'''<br />
<br />
A Empresa Oferece os seguintes serviços: <br />
<br />
# Conta de Usuário para cada cliente;<br />
# Conta de E-mail para cada cliente;<br />
# Uma página Web Padrão;<br />
# Instalação do Modem ADSL e do Cabeamento Estrurado;<br />
# Acesso Wirelles;<br />
<br />
<br />
== Etapas Iniciais de Configurações da Rede ==<br />
<br />
<br />
# Instalação do Sistema Operacional:Ubuntu-Server;<br />
# Definido Sistema de Arquivo, Dividido em 3 Partições: ''1 Partição Primátia, 1 Partição Secundária e uma Partição para Swap;'' <br />
# Definido nome do Domínio: teletec.sj.ifsc.edu.br;<br />
# Criado um Usuário: Tecnico;<br />
# Acesso via SSH ao Servidor Teletec.<br />
<br />
----<br />
<br />
== Gerencia de Redes: Apache, Postfix e DNS ==<br />
<br />
'''Configurações do servidor DNS:''' <br />
<br />
- Edição do Arquivo para IP Estático: '''/etc/network/interfaces''' <br />
<br />
# This file describes the network interfaces available on your system<br />
# and how to activate them. For more information, see interfaces(5).<br />
# The loopback network interface<br />
auto lo<br />
iface lo inet loopback<br />
# The primary network interface<br />
auto eth0<br />
iface eth0 inet static<br />
address 200.135.37.100<br />
netmask 255.255.255.192<br />
gateway 200.135.37.126 <br />
<br />
- Edição do Arquivo do servidor DNS '''/etc/bind/named.conf''' <br />
<br />
Indica todos os arquivos que vai fazer a configuração dele<br />
<br />
// This is the primary configuration file for the BIND DNS server named.<br />
//<br />
// Please read /usr/share/doc/bind9/README.Debian.gz for information on the <br />
// structure of BIND configuration files in Debian, *BEFORE* you customize <br />
// this configuration file.<br />
//<br />
// If you are just adding zones, please do that in /etc/bind/named.conf.local<br />
include "/etc/bind/named.conf.options";<br />
include "/etc/bind/named.conf.local";<br />
include "/etc/bind/named.conf.default-zones";<br />
include "/etc/bind/servidor.conf";<br />
include "/etc/bind/tecnico.conf";<br />
include "/etc/bind/daniel.conf";<br />
<br />
- Edição do Arquivo de servidor DNS: named.conf.local '''/etc/bind/named.conf.local'''<br />
É um arquivo padrão do BIND onde foi configurado o o nosso dominino TELETEC.<br />
<br />
//<br />
// Do any local configuration here<br />
//<br />
<br />
// Consider adding the 1918 zones here, if they are not used in your<br />
// organization<br />
//include "/etc/bind/zones.rfc1918"8;<br />
zone "teletec.sj.ifsc.edu.br." IN {<br />
type master;<br />
file "/etc/bind/teletec.zone";<br />
allow-update { none; };<br />
};<br />
<br />
- Edição do Arquivo de DNS Reverso: '''/etc/bind/37.135.200.in-addr.arpa'''<br />
O DNS Reverso resolve um endereço IP para um nome de servidor – por exemplo, ele poderia resolver 200.176.3.142 para exemplo.hipotetico.com.br.<br />
<br />
$TTL 86400<br />
@ IN SOA servidor.teletec.sj.ifsc.edu.br. root (<br />
2011061500 ;<br />
1d ;<br />
1h ;<br />
1w ; <br />
1d ;<br />
)<br />
IN NS servidor.teletec.sj.ifsc.edu.br.<br />
100 IN PTR servidor.teletec.sj.ifsc.edu.br.<br />
<br />
- Edição do Arquivo para criar um subdomínio:'''/etc/bind/teletec.zone'''<br />
<br />
$TTL 86400<br />
@ IN SOA teletec.teletec.sj.ifsc.edu.br root (<br />
2011062901;<br />
3H;<br />
15M;<br />
1W;<br />
1D );<br />
IN NS teletec.teletec.sj.ifsc.edu.br.<br />
IN MX 0 mail.teletec.sj.ifsc.edu.br.<br />
localhost IN A 127.0.0.1<br />
$ORIGIN teletec.sj.ifsc.edu.br.<br />
teletec A 200.135.37.100<br />
www A 200.135.37.100<br />
mail A 200.135.37.100<br />
<br />
== Instalação de Equipamento de Redes (Modem, Switch e Roteadores) ==<br />
<br />
'''Configurações:''' <br />
<br />
Instalação:<br />
<br />
minicom -s<br />
<br />
Configuração do Roteador Cisco 1700: <br />
<br />
* Configuração dos Dois Roteadores Utilizando a ferramenta "Minicon" (Se fosse Windows seria Hyperterminal)<br />
* Configuração dos dispositivos: Serial e Ethernet<br />
* Configuração como Protocolo PPP<br />
<br />
- ''"Configuração da porta serial":''<br />
<br />
┌─────────────[configuração]──────────────┐<br />
│ Nomes de arquivos e rotas<br />
│ Protocolos de transferência de arquivos<br />
│ Configuração da porta serial<br />
│ Modem e discagem<br />
│ Tela e teclado<br />
│ Salvar configuração como dfl<br />
│ Salvar configuração como<br />
│ Sair<br />
│ Sair do Minicom<br />
└────────────────────────────────────────┘<br />
<br />
- ''"Alteração da Porta Serial"''<br />
┌──────────────────────────────────────────────────────────┐<br />
│ A – Dispositivo Serial : /dev/ttSy0 <br />
│ B – Localização do Arquivo de Travamento : /var/lock<br />
│ C – Programa de Entrada :<br />
│ D – Programa de Saída :<br />
│ E – Bps/Paridade/Bits : 9600 8N1 <br />
│ F – Controle de Fluxo por Hardware : Não<br />
│ G – Controle de Fluxo por Software : Não<br />
│<br />
│ Alterar qual configuração?<br />
└──────────────────────────────────────────────────────────┘<br />
<br />
- ''"Salvar configuração com dfl"''<br />
<br />
- ''Configurando a Interface Serial do Roteador:''<br />
<br />
enable;<br />
configure terminal;<br />
<br />
#Para configurar a interface serial:<br />
interface serial 0;<br />
ip address 10.0.0.1/30;<br />
encapsulation ppp;<br />
exit;<br />
<br />
#Para configurar a interface ethernet:<br />
interface fastethernet 0;<br />
ip address 172.18.0.1/24;<br />
exit;<br />
exit;<br />
<br />
#Para salvar as configurações:<br />
wr;<br />
<br />
== Cabeamento Estruturado ==<br />
<br />
Atividades Concluídas:<br />
<br />
- o A central telefônica ao DSLAM<br />
- o O DSLAM ao armário de telecom da equipe, através de uma linha telefone + DSL<br />
- o armário da equipe a uma área de trabalho. <br />
- O cabeamento permitiu a conexão do modem DSL no armário de telecom.<br />
- As tomadas da área de trabalho para conexão com Telefone e o Modem ADSL.<br />
<br />
== Programação para Redes de Computadores ==<br />
<br />
- Edição do Arquivo Verificação.php:<br />
<br />
<?<br />
session_start();<br />
$login = $_POST['login'];<br />
$senha = $_POST['senha'];<br />
if ( ( $login == "Administrador" ) && ( $senha == "orelha1234" ) ){<br />
$_SESSION['autorizado'] = $login;<br />
Header ("Location: principal.php");<br />
}else{<br />
Header ("Location: login.php");<br />
}<br />
?><br />
<br />
- Edição do Arquivo sair.php:<br />
<br />
<?<br />
session_start();<br />
session_destroy();<br />
Header ("Location: login.php");<br />
?><br />
<br />
- Edição do arquivo principal.php: <br />
<br />
<.?<br />
.session_start();<br />
.if (!isset($_SESSION['autorizado'])){<br />
.header ("Location: login.php");<br />
.}else{<br />
.?><br />
<.html><br />
<.head><br />
<.meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<.title>Administrcao de Dominios</title><br />
<./head><br />
<.body><br />
<.p><a href="sair.php">Sair</a></p><br />
<.p></p><br />
<.p style="text-align:center;margin-left:auto;margin-right:auto;">Cliente Dominio Acao </p><br />
<br />
<.?<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$consulta = "SELECT * from clientes";<br />
$resultado = mysql_query($consulta,$conexao);<br />
while($linha = mysql_fetch_array($resultado)){<br />
$cliente = $linha['cliente'];<br />
$dominio = $linha['dominio'];<br />
.?><br />
<.form><br />
<.p style="text-align:center;margin-left:auto;margin-right:auto;"><br />
<.a name="cliente" id="cliente" href="alterar.php?id=<? echo $linha['dominio'];?>"> <?echo $.linha['cliente'];?></a> <br />
<.? echo $linha['dominio'];?> <a href="excluir.php?id=<? echo $linha['dominio'];?>"> Excluir</a></p><br />
<./form><br />
<.?<br />
.}<br />
.mysql_free_result($resultado);<br />
.mysql_close($conexao);<br />
.}<br />
.?><br />
<.p style="text-align:right;margin-left:auto;margin-right:0;"><br />
<.a href="adicionar.php"><span style="color:#ff0000">Adicionar novo dominio</span></a></p><br />
<./body><br />
<./html><br />
<br />
- Edição do Arquivo Domínio.php<br />
<br />
<.?<br />
session_start();<br />
if (!isset($_SESSION['autorizado'])){<br />
header ("Location: login.php");<br />
}else{<br />
$cliente = $_POST['cliente'];<br />
$dominio = $_POST['dominio'];<br />
$antigo = $_POST['antigo'];;<br />
if (empty($dominio)) {<br />
$dominio = "invalido";<br />
} <br />
<br />
if (preg_match('/^[a-z0-9]+/', $dominio)){<br />
}else{<br />
$dominio = "invalido";<br />
} <br />
<br />
$arquivo = '/etc/bind/named.conf';<br />
$linhas = array();<br />
exec("cat $arquivo",$linhas);<br />
for ($i = 0 ; $i < sizeof($linhas); $i++){<br />
if ($linhas[$i] == "include \"/etc/bind/$dominio.conf\";"){<br />
$dominio = "invalido";<br />
}<br />
}<br />
if ($dominio == "invalido"){<br />
header ("Location: alterar.php");<br />
}else{ <br />
<br />
$script = "/etc/teletec/mod-dominio.sh $antigo '$cliente' $dominio";<br />
exec("$script");<br />
exec("/etc/init.d/apache2 restart");<br />
<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$deletar = "DELETE FROM clientes WHERE dominio='$antigo.teletec.sj.ifsc.edu.br'";<br />
mysql_query($deletar,$conexao);<br />
mysql_close($conexao); <br />
<br />
$conexao = mysql_connect("localhost","www-data","orelha1234");<br />
$base_ok = mysql_select_db("teletec",$conexao);<br />
$inserir = "INSERT INTO clientes (cliente,dominio) VALUES ('$cliente','$dominio.teletec.sj.ifsc.edu.br')";<br />
mysql_query($inserir,$conexao);<br />
mysql_close($conexao);<br />
header ("Location: http://www.teletec.sj.ifsc.edu.br/principal.php"); <br />
<br />
}<br />
.}<br />
?.><br />
<br />
- Edição do Arquivo <br />
<br />
<?<br />
session_start();<br />
if (isset($_SESSION['autorizado'])){<br />
Header ("Location: principal.php");<br />
}else{<br />
?><br />
<html><br />
<head><br />
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><br />
<title>Hospedagem Web</title><br />
</head><br />
<br />
<body><br />
<p></p><br />
<p>Sistemas de Hospedagem de Sitios Web</p><br />
<p></p><br />
<form name="formTeste" action="verificacao.php" method="post"><br />
<p>Usu&#xe1;rio:<br><br />
<input type="text" name="login"><br />
<p>Senha:<br><br />
<input type="password" name="senha"><br />
<input type="submit" name="b_enviar" value="Entrar"><br />
</form><br />
<p></p><br />
<?<br />
}<br />
?><br />
</body><br />
</html></div>Vagner.chttps://wiki.sj.ifsc.edu.br/index.php?title=Projeto_Integrador_-_2011.1_-_Teletec&diff=34776Projeto Integrador - 2011.1 - Teletec2011-07-08T23:25:52Z<p>Vagner.c: /* Gerencia de Redes: Apache, Postfix e DNS */</p>
<hr />
<div>== * '''Equipe 2 : TELETEC''' ==<br />
<br />
----<br />
<br />
== INTEGRANTES TELETEC ==<br />
<br />
* '''Daniel Estefano'''; estefano.daniel@gmail.com <br />
* '''Denis Teixeira'''; denisteixeira3@gmail.com <br />
* '''Leonardo Oliveira P.'''; leonardo-op@live.com <br />
* '''Odair de Moraes'''; odairdmoraes@hotmail.com<br />
* '''Robson de Carvalho'''; rob_carvalho12@hotmail.com<br />
* '''Vagner Cordeiro.''' cordeirotelecom@gmail.com<br />
<br />
----<br />
<br />
== Etapas Iniciais de Configurações da Rede ==<br />
<br />
<br />
# Instalação do Sistema Operacional:Ubuntu-Server;<br />
# Definido Sistema de Arquivo, Dividido em 3 Partições: ''1 Partição Primátia, 1 Partição Secundária e uma Partição para Swap;'' <br />
# Definido nome do Domínio: teletec.sj.ifsc.edu.br;<br />
# Criado um Usuário: Tecnico;<br />
# Acesso via SSH ao Servidor Teletec.<br />
<br />
----<br />
<br />
== Gerencia de Redes: Apache, Postfix e DNS ==<br />
<br />
'''Configurações do servidor DNS:''' <br />
<br />
- Edição do Arquivo para IP Estático: '''/etc/network/interfaces''' <br />
<br />
# This file describes the network interfaces available on your system<br />
# and how to activate them. For more information, see interfaces(5).<br />
# The loopback network interface<br />
auto lo<br />
iface lo inet loopback<br />
# The primary network interface<br />
auto eth0<br />
iface eth0 inet static<br />
address 200.135.37.100<br />
netmask 255.255.255.192<br />
gateway 200.135.37.126 <br />
<br />
- Edição do Arquivo do servidor DNS '''/etc/bind/named.conf''' <br />
<br />
Indica todos os arquivos que vai fazer a configuração dele<br />
<br />
// This is the primary configuration file for the BIND DNS server named.<br />
//<br />
// Please read /usr/share/doc/bind9/README.Debian.gz for information on the <br />
// structure of BIND configuration files in Debian, *BEFORE* you customize <br />
// this configuration file.<br />
//<br />
// If you are just adding zones, please do that in /etc/bind/named.conf.local<br />
include "/etc/bind/named.conf.options";<br />
include "/etc/bind/named.conf.local";<br />
include "/etc/bind/named.conf.default-zones";<br />
include "/etc/bind/servidor.conf";<br />
include "/etc/bind/tecnico.conf";<br />
include "/etc/bind/daniel.conf";<br />
<br />
- Edição do Arquivo de servidor DNS: named.conf.local '''/etc/bind/named.conf.local'''<br />
<br />
//<br />
// Do any local configuration here<br />
//<br />
<br />
// Consider adding the 1918 zones here, if they are not used in your<br />
// organization<br />
//include "/etc/bind/zones.rfc1918"8;<br />
zone "teletec.sj.ifsc.edu.br." IN {<br />
type master;<br />
file "/etc/bind/teletec.zone";<br />
allow-update { none; };<br />
};<br />
<br />
- Edição do Arquivo de DNS Reverso: '''/etc/bind/37.135.200.in-addr.arpa'''<br />
<br />
$TTL 86400<br />
@ IN SOA servidor.teletec.sj.ifsc.edu.br. root (<br />
2011061500 ;<br />
1d ;<br />
1h ;<br />
1w ; <br />
1d ;<br />
)<br />
IN NS servidor.teletec.sj.ifsc.edu.br.<br />
100 IN PTR servidor.teletec.sj.ifsc.edu.br.<br />
<br />
- Edição do Arquivo para criar um subdomínio:'''/etc/bind/teletec.zone'''<br />
<br />
$TTL 86400<br />
@ IN SOA teletec.teletec.sj.ifsc.edu.br root (<br />
2011062901;<br />
3H;<br />
15M;<br />
1W;<br />
1D );<br />
IN NS teletec.teletec.sj.ifsc.edu.br.<br />
IN MX 0 mail.teletec.sj.ifsc.edu.br.<br />
localhost IN A 127.0.0.1<br />
$ORIGIN teletec.sj.ifsc.edu.br.<br />
teletec A 200.135.37.100<br />
www A 200.135.37.100<br />
mail A 200.135.37.100<br />
<br />
== Instalação de Equipamento de Redes (Modem, Switch e Roteadores) ==<br />
<br />
'''Configurações:''' <br />
<br />
Instalação:<br />
<br />
minicom -s<br />
<br />
Configuração do Roteador Cisco 1700: <br />
<br />
* Configuração dos Dois Roteadores Utilizando a ferramenta "Minicon" (Se fosse Windows seria Hyperterminal)<br />
* Configuração dos dispositivos: Serial e Ethernet<br />
* Configuração como Protocolo PPP<br />
<br />
- ''"Configuração da porta serial":''<br />
<br />
┌─────────────[configuração]──────────────┐<br />
│ Nomes de arquivos e rotas<br />
│ Protocolos de transferência de arquivos<br />
│ Configuração da porta serial<br />
│ Modem e discagem<br />
│ Tela e teclado<br />
│ Salvar configuração como dfl<br />
│ Salvar configuração como<br />
│ Sair<br />
│ Sair do Minicom<br />
└────────────────────────────────────────┘<br />
<br />
- ''"Alteração da Porta Serial"''<br />
┌──────────────────────────────────────────────────────────┐<br />
│ A – Dispositivo Serial : /dev/ttSy0 <br />
│ B – Localização do Arquivo de Travamento : /var/lock<br />
│ C – Programa de Entrada :<br />
│ D – Programa de Saída :<br />
│ E – Bps/Paridade/Bits : 9600 8N1 <br />
│ F – Controle de Fluxo por Hardware : Não<br />
│ G – Controle de Fluxo por Software : Não<br />
│<br />
│ Alterar qual configuração?<br />
└──────────────────────────────────────────────────────────┘<br />
<br />
- ''"Salvar configuração com dfl"''<br />
<br />
- ''Configurando a Interface Serial do Roteador:''<br />
<br />
enable;<br />
configure terminal;<br />
<br />
#Para configurar a interface serial:<br />
interface serial 0;<br />
ip address 10.0.0.1/30;<br />
encapsulation ppp;<br />
exit;<br />
<br />
#Para configurar a interface ethernet:<br />
interface fastethernet 0;<br />
ip address 172.18.0.1/24;<br />
exit;<br />
exit;<br />
<br />
#Para salvar as configurações:<br />
wr;<br />
<br />
== Cabeamento Estruturado ==<br />
<br />
Atividades Concluídas:<br />
<br />
- o A central telefônica ao DSLAM<br />
- o O DSLAM ao armário de telecom da equipe, através de uma linha telefone + DSL<br />
- o armário da equipe a uma área de trabalho. <br />
- O cabeamento permitiu a conexão do modem DSL no armário de telecom.<br />
- As tomadas da área de trabalho para conexão com Telefone e o Modem ADSL.</div>Vagner.chttps://wiki.sj.ifsc.edu.br/index.php?title=Projeto_Integrador_-_2011.1_-_Teletec&diff=34775Projeto Integrador - 2011.1 - Teletec2011-07-08T23:13:18Z<p>Vagner.c: /* Gerencia de Redes: Apache, Postfix e DNS */</p>
<hr />
<div>== * '''Equipe 2 : TELETEC''' ==<br />
<br />
----<br />
<br />
== INTEGRANTES TELETEC ==<br />
<br />
* '''Daniel Estefano'''; estefano.daniel@gmail.com <br />
* '''Denis Teixeira'''; denisteixeira3@gmail.com <br />
* '''Leonardo Oliveira P.'''; leonardo-op@live.com <br />
* '''Odair de Moraes'''; odairdmoraes@hotmail.com<br />
* '''Robson de Carvalho'''; rob_carvalho12@hotmail.com<br />
* '''Vagner Cordeiro.''' cordeirotelecom@gmail.com<br />
<br />
----<br />
<br />
== Etapas Iniciais de Configurações da Rede ==<br />
<br />
<br />
# Instalação do Sistema Operacional:Ubuntu-Server;<br />
# Definido Sistema de Arquivo, Dividido em 3 Partições: ''1 Partição Primátia, 1 Partição Secundária e uma Partição para Swap;'' <br />
# Definido nome do Domínio: teletec.sj.ifsc.edu.br;<br />
# Criado um Usuário: Tecnico;<br />
# Acesso via SSH ao Servidor Teletec.<br />
<br />
----<br />
<br />
== Gerencia de Redes: Apache, Postfix e DNS ==<br />
<br />
'''Configurações do servidor DNS:''' <br />
<br />
- Edição do Arquivo para IP Estático: '''/etc/network/interfaces''' <br />
<br />
# This file describes the network interfaces available on your system<br />
# and how to activate them. For more information, see interfaces(5).<br />
# The loopback network interface<br />
auto lo<br />
iface lo inet loopback<br />
# The primary network interface<br />
auto eth0<br />
iface eth0 inet static<br />
address 200.135.37.100<br />
netmask 255.255.255.192<br />
gateway 200.135.37.126 <br />
<br />
- Edição do Arquivo do servidor DNS '''/etc/bind/named.conf''' <br />
<br />
Indica todos os arquivos que vai fazer a configuração dele<br />
<br />
// This is the primary configuration file for the BIND DNS server named.<br />
//<br />
// Please read /usr/share/doc/bind9/README.Debian.gz for information on the <br />
// structure of BIND configuration files in Debian, *BEFORE* you customize <br />
// this configuration file.<br />
//<br />
// If you are just adding zones, please do that in /etc/bind/named.conf.local<br />
include "/etc/bind/named.conf.options";<br />
include "/etc/bind/named.conf.local";<br />
include "/etc/bind/named.conf.default-zones";<br />
include "/etc/bind/servidor.conf";<br />
include "/etc/bind/tecnico.conf";<br />
include "/etc/bind/daniel.conf";<br />
<br />
- Edição do Arquivo de servidor DNS: named.conf.local '''/etc/bind/named.conf.local'''<br />
<br />
//<br />
// Do any local configuration here<br />
//<br />
<br />
// Consider adding the 1918 zones here, if they are not used in your<br />
// organization<br />
//include "/etc/bind/zones.rfc1918"8;<br />
zone "teletec.sj.ifsc.edu.br." IN {<br />
type master;<br />
file "/etc/bind/teletec.zone";<br />
allow-update { none; };<br />
};<br />
<br />
- Edição do Arquivo de DNS Reverso: '''/etc/bind/37.135.200.in-addr.arpa'''<br />
<br />
$TTL 86400<br />
@ IN SOA servidor.teletec.sj.ifsc.edu.br. root (<br />
2011061500 ;<br />
1d ;<br />
1h ;<br />
1w ; <br />
1d ;<br />
)<br />
IN NS servidor.teletec.sj.ifsc.edu.br.<br />
100 IN PTR servidor.teletec.sj.ifsc.edu.br.<br />
<br />
- Edição do Arquivo '''/etc/bind/teletec.zone'''<br />
<br />
$TTL 86400<br />
@ IN SOA teletec.teletec.sj.ifsc.edu.br root (<br />
2011062901;<br />
3H;<br />
15M;<br />
1W;<br />
1D );<br />
IN NS teletec.teletec.sj.ifsc.edu.br.<br />
IN MX 0 mail.teletec.sj.ifsc.edu.br.<br />
localhost IN A 127.0.0.1<br />
$ORIGIN teletec.sj.ifsc.edu.br.<br />
teletec A 200.135.37.100<br />
www A 200.135.37.100<br />
mail A 200.135.37.100<br />
<br />
== Instalação de Equipamento de Redes (Modem, Switch e Roteadores) ==<br />
<br />
'''Configurações:''' <br />
<br />
Instalação:<br />
<br />
minicom -s<br />
<br />
Configuração do Roteador Cisco 1700: <br />
<br />
* Configuração dos Dois Roteadores Utilizando a ferramenta "Minicon" (Se fosse Windows seria Hyperterminal)<br />
* Configuração dos dispositivos: Serial e Ethernet<br />
* Configuração como Protocolo PPP<br />
<br />
- ''"Configuração da porta serial":''<br />
<br />
┌─────────────[configuração]──────────────┐<br />
│ Nomes de arquivos e rotas<br />
│ Protocolos de transferência de arquivos<br />
│ Configuração da porta serial<br />
│ Modem e discagem<br />
│ Tela e teclado<br />
│ Salvar configuração como dfl<br />
│ Salvar configuração como<br />
│ Sair<br />
│ Sair do Minicom<br />
└────────────────────────────────────────┘<br />
<br />
- ''"Alteração da Porta Serial"''<br />
┌──────────────────────────────────────────────────────────┐<br />
│ A – Dispositivo Serial : /dev/ttSy0 <br />
│ B – Localização do Arquivo de Travamento : /var/lock<br />
│ C – Programa de Entrada :<br />
│ D – Programa de Saída :<br />
│ E – Bps/Paridade/Bits : 9600 8N1 <br />
│ F – Controle de Fluxo por Hardware : Não<br />
│ G – Controle de Fluxo por Software : Não<br />
│<br />
│ Alterar qual configuração?<br />
└──────────────────────────────────────────────────────────┘<br />
<br />
- ''"Salvar configuração com dfl"''<br />
<br />
- ''Configurando a Interface Serial do Roteador:''<br />
<br />
enable;<br />
configure terminal;<br />
<br />
#Para configurar a interface serial:<br />
interface serial 0;<br />
ip address 10.0.0.1/30;<br />
encapsulation ppp;<br />
exit;<br />
<br />
#Para configurar a interface ethernet:<br />
interface fastethernet 0;<br />
ip address 172.18.0.1/24;<br />
exit;<br />
exit;<br />
<br />
#Para salvar as configurações:<br />
wr;<br />
<br />
== Cabeamento Estruturado ==<br />
<br />
Atividades Concluídas:<br />
<br />
- o A central telefônica ao DSLAM<br />
- o O DSLAM ao armário de telecom da equipe, através de uma linha telefone + DSL<br />
- o armário da equipe a uma área de trabalho. <br />
- O cabeamento permitiu a conexão do modem DSL no armário de telecom.<br />
- As tomadas da área de trabalho para conexão com Telefone e o Modem ADSL.</div>Vagner.chttps://wiki.sj.ifsc.edu.br/index.php?title=Projeto_Integrador_-_2011.1_-_Teletec&diff=34774Projeto Integrador - 2011.1 - Teletec2011-07-08T23:11:02Z<p>Vagner.c: /* Gerencia de Redes: Apache, Postfix e DNS */</p>
<hr />
<div>== * '''Equipe 2 : TELETEC''' ==<br />
<br />
----<br />
<br />
== INTEGRANTES TELETEC ==<br />
<br />
* '''Daniel Estefano'''; estefano.daniel@gmail.com <br />
* '''Denis Teixeira'''; denisteixeira3@gmail.com <br />
* '''Leonardo Oliveira P.'''; leonardo-op@live.com <br />
* '''Odair de Moraes'''; odairdmoraes@hotmail.com<br />
* '''Robson de Carvalho'''; rob_carvalho12@hotmail.com<br />
* '''Vagner Cordeiro.''' cordeirotelecom@gmail.com<br />
<br />
----<br />
<br />
== Etapas Iniciais de Configurações da Rede ==<br />
<br />
<br />
# Instalação do Sistema Operacional:Ubuntu-Server;<br />
# Definido Sistema de Arquivo, Dividido em 3 Partições: ''1 Partição Primátia, 1 Partição Secundária e uma Partição para Swap;'' <br />
# Definido nome do Domínio: teletec.sj.ifsc.edu.br;<br />
# Criado um Usuário: Tecnico;<br />
# Acesso via SSH ao Servidor Teletec.<br />
<br />
----<br />
<br />
== Gerencia de Redes: Apache, Postfix e DNS ==<br />
<br />
'''Configurações do servidor DNS:''' <br />
<br />
- Edição do Arquivo para IP Estático: '''/etc/network/interfaces''' <br />
<br />
# This file describes the network interfaces available on your system<br />
# and how to activate them. For more information, see interfaces(5).<br />
# The loopback network interface<br />
auto lo<br />
iface lo inet loopback<br />
# The primary network interface<br />
auto eth0<br />
iface eth0 inet static<br />
address 200.135.37.100<br />
netmask 255.255.255.192<br />
gateway 200.135.37.126 <br />
<br />
- Edição do Arquivo do servidor DNS '''/etc/bind/named.conf''' <br />
<br />
// This is the primary configuration file for the BIND DNS server named.<br />
//<br />
// Please read /usr/share/doc/bind9/README.Debian.gz for information on the <br />
// structure of BIND configuration files in Debian, *BEFORE* you customize <br />
// this configuration file.<br />
//<br />
// If you are just adding zones, please do that in /etc/bind/named.conf.local<br />
include "/etc/bind/named.conf.options";<br />
include "/etc/bind/named.conf.local";<br />
include "/etc/bind/named.conf.default-zones";<br />
include "/etc/bind/servidor.conf";<br />
include "/etc/bind/tecnico.conf";<br />
include "/etc/bind/daniel.conf";<br />
<br />
- Edição do Arquivo de servidor DNS: named.conf.local '''/etc/bind/named.conf.local'''<br />
<br />
//<br />
// Do any local configuration here<br />
//<br />
<br />
// Consider adding the 1918 zones here, if they are not used in your<br />
// organization<br />
//include "/etc/bind/zones.rfc1918"8;<br />
zone "teletec.sj.ifsc.edu.br." IN {<br />
type master;<br />
file "/etc/bind/teletec.zone";<br />
allow-update { none; };<br />
};<br />
<br />
- Edição do Arquivo de DNS Reverso: '''/etc/bind/37.135.200.in-addr.arpa'''<br />
<br />
$TTL 86400<br />
@ IN SOA servidor.teletec.sj.ifsc.edu.br. root (<br />
2011061500 ;<br />
1d ;<br />
1h ;<br />
1w ; <br />
1d ;<br />
)<br />
IN NS servidor.teletec.sj.ifsc.edu.br.<br />
100 IN PTR servidor.teletec.sj.ifsc.edu.br.<br />
<br />
- Edição do Arquivo '''/etc/bind/teletec.zone'''<br />
<br />
$TTL 86400<br />
@ IN SOA teletec.teletec.sj.ifsc.edu.br root (<br />
2011062901;<br />
3H;<br />
15M;<br />
1W;<br />
1D );<br />
IN NS teletec.teletec.sj.ifsc.edu.br.<br />
IN MX 0 mail.teletec.sj.ifsc.edu.br.<br />
localhost IN A 127.0.0.1<br />
$ORIGIN teletec.sj.ifsc.edu.br.<br />
teletec A 200.135.37.100<br />
www A 200.135.37.100<br />
mail A 200.135.37.100<br />
<br />
== Instalação de Equipamento de Redes (Modem, Switch e Roteadores) ==<br />
<br />
'''Configurações:''' <br />
<br />
Instalação:<br />
<br />
minicom -s<br />
<br />
Configuração do Roteador Cisco 1700: <br />
<br />
* Configuração dos Dois Roteadores Utilizando a ferramenta "Minicon" (Se fosse Windows seria Hyperterminal)<br />
* Configuração dos dispositivos: Serial e Ethernet<br />
* Configuração como Protocolo PPP<br />
<br />
- ''"Configuração da porta serial":''<br />
<br />
┌─────────────[configuração]──────────────┐<br />
│ Nomes de arquivos e rotas<br />
│ Protocolos de transferência de arquivos<br />
│ Configuração da porta serial<br />
│ Modem e discagem<br />
│ Tela e teclado<br />
│ Salvar configuração como dfl<br />
│ Salvar configuração como<br />
│ Sair<br />
│ Sair do Minicom<br />
└────────────────────────────────────────┘<br />
<br />
- ''"Alteração da Porta Serial"''<br />
┌──────────────────────────────────────────────────────────┐<br />
│ A – Dispositivo Serial : /dev/ttSy0 <br />
│ B – Localização do Arquivo de Travamento : /var/lock<br />
│ C – Programa de Entrada :<br />
│ D – Programa de Saída :<br />
│ E – Bps/Paridade/Bits : 9600 8N1 <br />
│ F – Controle de Fluxo por Hardware : Não<br />
│ G – Controle de Fluxo por Software : Não<br />
│<br />
│ Alterar qual configuração?<br />
└──────────────────────────────────────────────────────────┘<br />
<br />
- ''"Salvar configuração com dfl"''<br />
<br />
- ''Configurando a Interface Serial do Roteador:''<br />
<br />
enable;<br />
configure terminal;<br />
<br />
#Para configurar a interface serial:<br />
interface serial 0;<br />
ip address 10.0.0.1/30;<br />
encapsulation ppp;<br />
exit;<br />
<br />
#Para configurar a interface ethernet:<br />
interface fastethernet 0;<br />
ip address 172.18.0.1/24;<br />
exit;<br />
exit;<br />
<br />
#Para salvar as configurações:<br />
wr;<br />
<br />
== Cabeamento Estruturado ==<br />
<br />
Atividades Concluídas:<br />
<br />
- o A central telefônica ao DSLAM<br />
- o O DSLAM ao armário de telecom da equipe, através de uma linha telefone + DSL<br />
- o armário da equipe a uma área de trabalho. <br />
- O cabeamento permitiu a conexão do modem DSL no armário de telecom.<br />
- As tomadas da área de trabalho para conexão com Telefone e o Modem ADSL.</div>Vagner.chttps://wiki.sj.ifsc.edu.br/index.php?title=Projeto_Integrador_-_2011.1_-_Teletec&diff=34773Projeto Integrador - 2011.1 - Teletec2011-07-08T23:10:22Z<p>Vagner.c: /* Gerencia de Redes: Apache, Postfix e DNS */</p>
<hr />
<div>== * '''Equipe 2 : TELETEC''' ==<br />
<br />
----<br />
<br />
== INTEGRANTES TELETEC ==<br />
<br />
* '''Daniel Estefano'''; estefano.daniel@gmail.com <br />
* '''Denis Teixeira'''; denisteixeira3@gmail.com <br />
* '''Leonardo Oliveira P.'''; leonardo-op@live.com <br />
* '''Odair de Moraes'''; odairdmoraes@hotmail.com<br />
* '''Robson de Carvalho'''; rob_carvalho12@hotmail.com<br />
* '''Vagner Cordeiro.''' cordeirotelecom@gmail.com<br />
<br />
----<br />
<br />
== Etapas Iniciais de Configurações da Rede ==<br />
<br />
<br />
# Instalação do Sistema Operacional:Ubuntu-Server;<br />
# Definido Sistema de Arquivo, Dividido em 3 Partições: ''1 Partição Primátia, 1 Partição Secundária e uma Partição para Swap;'' <br />
# Definido nome do Domínio: teletec.sj.ifsc.edu.br;<br />
# Criado um Usuário: Tecnico;<br />
# Acesso via SSH ao Servidor Teletec.<br />
<br />
----<br />
<br />
== Gerencia de Redes: Apache, Postfix e DNS ==<br />
<br />
'''Configurações:''' <br />
<br />
- Edição do Arquivo para IP Estático: '''/etc/network/interfaces''' <br />
<br />
# This file describes the network interfaces available on your system<br />
# and how to activate them. For more information, see interfaces(5).<br />
# The loopback network interface<br />
auto lo<br />
iface lo inet loopback<br />
# The primary network interface<br />
auto eth0<br />
iface eth0 inet static<br />
address 200.135.37.100<br />
netmask 255.255.255.192<br />
gateway 200.135.37.126 <br />
<br />
- Edição do Arquivo do servidor DNS '''/etc/bind/named.conf''' <br />
<br />
// This is the primary configuration file for the BIND DNS server named.<br />
//<br />
// Please read /usr/share/doc/bind9/README.Debian.gz for information on the <br />
// structure of BIND configuration files in Debian, *BEFORE* you customize <br />
// this configuration file.<br />
//<br />
// If you are just adding zones, please do that in /etc/bind/named.conf.local<br />
include "/etc/bind/named.conf.options";<br />
include "/etc/bind/named.conf.local";<br />
include "/etc/bind/named.conf.default-zones";<br />
include "/etc/bind/servidor.conf";<br />
include "/etc/bind/tecnico.conf";<br />
include "/etc/bind/daniel.conf";<br />
<br />
- Edição do Arquivo de servidor DNS: named.conf.local '''/etc/bind/named.conf.local'''<br />
<br />
//<br />
// Do any local configuration here<br />
//<br />
<br />
// Consider adding the 1918 zones here, if they are not used in your<br />
// organization<br />
//include "/etc/bind/zones.rfc1918"8;<br />
zone "teletec.sj.ifsc.edu.br." IN {<br />
type master;<br />
file "/etc/bind/teletec.zone";<br />
allow-update { none; };<br />
};<br />
<br />
- Edição do Arquivo de DNS Reverso: '''/etc/bind/37.135.200.in-addr.arpa'''<br />
<br />
$TTL 86400<br />
@ IN SOA servidor.teletec.sj.ifsc.edu.br. root (<br />
2011061500 ;<br />
1d ;<br />
1h ;<br />
1w ; <br />
1d ;<br />
)<br />
IN NS servidor.teletec.sj.ifsc.edu.br.<br />
100 IN PTR servidor.teletec.sj.ifsc.edu.br.<br />
<br />
- Edição do Arquivo '''/etc/bind/teletec.zone'''<br />
<br />
$TTL 86400<br />
@ IN SOA teletec.teletec.sj.ifsc.edu.br root (<br />
2011062901;<br />
3H;<br />
15M;<br />
1W;<br />
1D );<br />
IN NS teletec.teletec.sj.ifsc.edu.br.<br />
IN MX 0 mail.teletec.sj.ifsc.edu.br.<br />
localhost IN A 127.0.0.1<br />
$ORIGIN teletec.sj.ifsc.edu.br.<br />
teletec A 200.135.37.100<br />
www A 200.135.37.100<br />
mail A 200.135.37.100<br />
<br />
== Instalação de Equipamento de Redes (Modem, Switch e Roteadores) ==<br />
<br />
'''Configurações:''' <br />
<br />
Instalação:<br />
<br />
minicom -s<br />
<br />
Configuração do Roteador Cisco 1700: <br />
<br />
* Configuração dos Dois Roteadores Utilizando a ferramenta "Minicon" (Se fosse Windows seria Hyperterminal)<br />
* Configuração dos dispositivos: Serial e Ethernet<br />
* Configuração como Protocolo PPP<br />
<br />
- ''"Configuração da porta serial":''<br />
<br />
┌─────────────[configuração]──────────────┐<br />
│ Nomes de arquivos e rotas<br />
│ Protocolos de transferência de arquivos<br />
│ Configuração da porta serial<br />
│ Modem e discagem<br />
│ Tela e teclado<br />
│ Salvar configuração como dfl<br />
│ Salvar configuração como<br />
│ Sair<br />
│ Sair do Minicom<br />
└────────────────────────────────────────┘<br />
<br />
- ''"Alteração da Porta Serial"''<br />
┌──────────────────────────────────────────────────────────┐<br />
│ A – Dispositivo Serial : /dev/ttSy0 <br />
│ B – Localização do Arquivo de Travamento : /var/lock<br />
│ C – Programa de Entrada :<br />
│ D – Programa de Saída :<br />
│ E – Bps/Paridade/Bits : 9600 8N1 <br />
│ F – Controle de Fluxo por Hardware : Não<br />
│ G – Controle de Fluxo por Software : Não<br />
│<br />
│ Alterar qual configuração?<br />
└──────────────────────────────────────────────────────────┘<br />
<br />
- ''"Salvar configuração com dfl"''<br />
<br />
- ''Configurando a Interface Serial do Roteador:''<br />
<br />
enable;<br />
configure terminal;<br />
<br />
#Para configurar a interface serial:<br />
interface serial 0;<br />
ip address 10.0.0.1/30;<br />
encapsulation ppp;<br />
exit;<br />
<br />
#Para configurar a interface ethernet:<br />
interface fastethernet 0;<br />
ip address 172.18.0.1/24;<br />
exit;<br />
exit;<br />
<br />
#Para salvar as configurações:<br />
wr;<br />
<br />
== Cabeamento Estruturado ==<br />
<br />
Atividades Concluídas:<br />
<br />
- o A central telefônica ao DSLAM<br />
- o O DSLAM ao armário de telecom da equipe, através de uma linha telefone + DSL<br />
- o armário da equipe a uma área de trabalho. <br />
- O cabeamento permitiu a conexão do modem DSL no armário de telecom.<br />
- As tomadas da área de trabalho para conexão com Telefone e o Modem ADSL.</div>Vagner.chttps://wiki.sj.ifsc.edu.br/index.php?title=Projeto_Integrador_-_2011.1_-_Teletec&diff=34772Projeto Integrador - 2011.1 - Teletec2011-07-08T23:06:31Z<p>Vagner.c: /* Etapas Iniciais de Configurações da Rede */</p>
<hr />
<div>== * '''Equipe 2 : TELETEC''' ==<br />
<br />
----<br />
<br />
== INTEGRANTES TELETEC ==<br />
<br />
* '''Daniel Estefano'''; estefano.daniel@gmail.com <br />
* '''Denis Teixeira'''; denisteixeira3@gmail.com <br />
* '''Leonardo Oliveira P.'''; leonardo-op@live.com <br />
* '''Odair de Moraes'''; odairdmoraes@hotmail.com<br />
* '''Robson de Carvalho'''; rob_carvalho12@hotmail.com<br />
* '''Vagner Cordeiro.''' cordeirotelecom@gmail.com<br />
<br />
----<br />
<br />
== Etapas Iniciais de Configurações da Rede ==<br />
<br />
<br />
# Instalação do Sistema Operacional:Ubuntu-Server;<br />
# Definido Sistema de Arquivo, Dividido em 3 Partições: ''1 Partição Primátia, 1 Partição Secundária e uma Partição para Swap;'' <br />
# Definido nome do Domínio: teletec.sj.ifsc.edu.br;<br />
# Criado um Usuário: Tecnico;<br />
# Acesso via SSH ao Servidor Teletec.<br />
<br />
----<br />
<br />
== Gerencia de Redes: Apache, Postfix e DNS ==<br />
<br />
'''Configurações:''' <br />
<br />
- Edição do Arquivo para IP Estático: '''/etc/network/interfaces''' <br />
<br />
# This file describes the network interfaces available on your system<br />
# and how to activate them. For more information, see interfaces(5).<br />
# The loopback network interface<br />
auto lo<br />
iface lo inet loopback<br />
# The primary network interface<br />
auto eth0<br />
iface eth0 inet static<br />
address 200.135.37.100<br />
netmask 255.255.255.192<br />
gateway 200.135.37.126 <br />
<br />
- Edição do Arquivo do servidor DNS '''/etc/bind/named.conf''' <br />
<br />
// This is the primary configuration file for the BIND DNS server named.<br />
//<br />
// Please read /usr/share/doc/bind9/README.Debian.gz for information on the <br />
// structure of BIND configuration files in Debian, *BEFORE* you customize <br />
// this configuration file.<br />
//<br />
// If you are just adding zones, please do that in /etc/bind/named.conf.local<br />
include "/etc/bind/named.conf.options";<br />
include "/etc/bind/named.conf.local";<br />
include "/etc/bind/named.conf.default-zones";<br />
include "/etc/bind/servidor.conf";<br />
include "/etc/bind/tecnico.conf";<br />
include "/etc/bind/daniel.conf";<br />
<br />
- Edição do Arquivo named.conf.local '''/etc/bind/named.conf.local'''<br />
<br />
//<br />
// Do any local configuration here<br />
//<br />
<br />
// Consider adding the 1918 zones here, if they are not used in your<br />
// organization<br />
//include "/etc/bind/zones.rfc1918"8;<br />
zone "teletec.sj.ifsc.edu.br." IN {<br />
type master;<br />
file "/etc/bind/teletec.zone";<br />
allow-update { none; };<br />
};<br />
<br />
- Edição do Arquivo '''/etc/bind/37.135.200.in-addr.arpa'''<br />
<br />
$TTL 86400<br />
@ IN SOA servidor.teletec.sj.ifsc.edu.br. root (<br />
2011061500 ;<br />
1d ;<br />
1h ;<br />
1w ; <br />
1d ;<br />
)<br />
IN NS servidor.teletec.sj.ifsc.edu.br.<br />
100 IN PTR servidor.teletec.sj.ifsc.edu.br.<br />
<br />
- Edição do Arquivo '''/etc/bind/teletec.zone'''<br />
<br />
$TTL 86400<br />
@ IN SOA teletec.teletec.sj.ifsc.edu.br root (<br />
2011062901;<br />
3H;<br />
15M;<br />
1W;<br />
1D );<br />
IN NS teletec.teletec.sj.ifsc.edu.br.<br />
IN MX 0 mail.teletec.sj.ifsc.edu.br.<br />
localhost IN A 127.0.0.1<br />
$ORIGIN teletec.sj.ifsc.edu.br.<br />
teletec A 200.135.37.100<br />
www A 200.135.37.100<br />
mail A 200.135.37.100<br />
<br />
== Instalação de Equipamento de Redes (Modem, Switch e Roteadores) ==<br />
<br />
'''Configurações:''' <br />
<br />
Instalação:<br />
<br />
minicom -s<br />
<br />
Configuração do Roteador Cisco 1700: <br />
<br />
* Configuração dos Dois Roteadores Utilizando a ferramenta "Minicon" (Se fosse Windows seria Hyperterminal)<br />
* Configuração dos dispositivos: Serial e Ethernet<br />
* Configuração como Protocolo PPP<br />
<br />
- ''"Configuração da porta serial":''<br />
<br />
┌─────────────[configuração]──────────────┐<br />
│ Nomes de arquivos e rotas<br />
│ Protocolos de transferência de arquivos<br />
│ Configuração da porta serial<br />
│ Modem e discagem<br />
│ Tela e teclado<br />
│ Salvar configuração como dfl<br />
│ Salvar configuração como<br />
│ Sair<br />
│ Sair do Minicom<br />
└────────────────────────────────────────┘<br />
<br />
- ''"Alteração da Porta Serial"''<br />
┌──────────────────────────────────────────────────────────┐<br />
│ A – Dispositivo Serial : /dev/ttSy0 <br />
│ B – Localização do Arquivo de Travamento : /var/lock<br />
│ C – Programa de Entrada :<br />
│ D – Programa de Saída :<br />
│ E – Bps/Paridade/Bits : 9600 8N1 <br />
│ F – Controle de Fluxo por Hardware : Não<br />
│ G – Controle de Fluxo por Software : Não<br />
│<br />
│ Alterar qual configuração?<br />
└──────────────────────────────────────────────────────────┘<br />
<br />
- ''"Salvar configuração com dfl"''<br />
<br />
- ''Configurando a Interface Serial do Roteador:''<br />
<br />
enable;<br />
configure terminal;<br />
<br />
#Para configurar a interface serial:<br />
interface serial 0;<br />
ip address 10.0.0.1/30;<br />
encapsulation ppp;<br />
exit;<br />
<br />
#Para configurar a interface ethernet:<br />
interface fastethernet 0;<br />
ip address 172.18.0.1/24;<br />
exit;<br />
exit;<br />
<br />
#Para salvar as configurações:<br />
wr;<br />
<br />
== Cabeamento Estruturado ==<br />
<br />
Atividades Concluídas:<br />
<br />
- o A central telefônica ao DSLAM<br />
- o O DSLAM ao armário de telecom da equipe, através de uma linha telefone + DSL<br />
- o armário da equipe a uma área de trabalho. <br />
- O cabeamento permitiu a conexão do modem DSL no armário de telecom.<br />
- As tomadas da área de trabalho para conexão com Telefone e o Modem ADSL.</div>Vagner.chttps://wiki.sj.ifsc.edu.br/index.php?title=Projeto_Integrador_-_2011.1_-_Teletec&diff=34756Projeto Integrador - 2011.1 - Teletec2011-07-06T23:39:00Z<p>Vagner.c: </p>
<hr />
<div>== * '''Equipe 2 : TELETEC''' ==<br />
<br />
----<br />
<br />
== INTEGRANTES TELETEC ==<br />
<br />
* '''Daniel Estefano'''; estefano.daniel@gmail.com <br />
* '''Denis Teixeira'''; denisteixeira3@gmail.com <br />
* '''Leonardo Oliveira P.'''; leonardo-op@live.com <br />
* '''Odair de Moraes'''; odairdmoraes@hotmail.com<br />
* '''Robson de Carvalho'''; rob_carvalho12@hotmail.com<br />
* '''Vagner Cordeiro.''' cordeirotelecom@gmail.com<br />
<br />
----<br />
<br />
== Etapas Iniciais de Configurações da Rede ==<br />
<br />
<br />
# Instalação do Sistema Operacional:Ubuntu-Server;<br />
# Definido Sistema de Arquivo, Dividido em 3 Partições: ''1 Partição Primátia, 1 Partição Secundária e uma Partição para Swap;'' <br />
# Definido nome do Domínio: teletec.sj.ifsc.edu.br;<br />
# Criado um Usuário: Teletec;<br />
# Acesso via SSH ao Servidor Teletec.<br />
<br />
----<br />
<br />
== Gerencia de Redes: Apache, Postfix e DNS ==<br />
<br />
'''Configurações:''' <br />
<br />
- Edição do Arquivo para IP Estático: '''/etc/network/interfaces''' <br />
<br />
# This file describes the network interfaces available on your system<br />
# and how to activate them. For more information, see interfaces(5).<br />
# The loopback network interface<br />
auto lo<br />
iface lo inet loopback<br />
# The primary network interface<br />
auto eth0<br />
iface eth0 inet static<br />
address 200.135.37.100<br />
netmask 255.255.255.192<br />
gateway 200.135.37.126 <br />
<br />
- Edição do Arquivo do servidor DNS '''/etc/bind/named.conf''' <br />
<br />
// This is the primary configuration file for the BIND DNS server named.<br />
//<br />
// Please read /usr/share/doc/bind9/README.Debian.gz for information on the <br />
// structure of BIND configuration files in Debian, *BEFORE* you customize <br />
// this configuration file.<br />
//<br />
// If you are just adding zones, please do that in /etc/bind/named.conf.local<br />
include "/etc/bind/named.conf.options";<br />
include "/etc/bind/named.conf.local";<br />
include "/etc/bind/named.conf.default-zones";<br />
include "/etc/bind/servidor.conf";<br />
include "/etc/bind/tecnico.conf";<br />
include "/etc/bind/daniel.conf";<br />
<br />
- Edição do Arquivo named.conf.local '''/etc/bind/named.conf.local'''<br />
<br />
//<br />
// Do any local configuration here<br />
//<br />
<br />
// Consider adding the 1918 zones here, if they are not used in your<br />
// organization<br />
//include "/etc/bind/zones.rfc1918"8;<br />
zone "teletec.sj.ifsc.edu.br." IN {<br />
type master;<br />
file "/etc/bind/teletec.zone";<br />
allow-update { none; };<br />
};<br />
<br />
- Edição do Arquivo '''/etc/bind/37.135.200.in-addr.arpa'''<br />
<br />
$TTL 86400<br />
@ IN SOA servidor.teletec.sj.ifsc.edu.br. root (<br />
2011061500 ;<br />
1d ;<br />
1h ;<br />
1w ; <br />
1d ;<br />
)<br />
IN NS servidor.teletec.sj.ifsc.edu.br.<br />
100 IN PTR servidor.teletec.sj.ifsc.edu.br.<br />
<br />
- Edição do Arquivo '''/etc/bind/teletec.zone'''<br />
<br />
$TTL 86400<br />
@ IN SOA teletec.teletec.sj.ifsc.edu.br root (<br />
2011062901;<br />
3H;<br />
15M;<br />
1W;<br />
1D );<br />
IN NS teletec.teletec.sj.ifsc.edu.br.<br />
IN MX 0 mail.teletec.sj.ifsc.edu.br.<br />
localhost IN A 127.0.0.1<br />
$ORIGIN teletec.sj.ifsc.edu.br.<br />
teletec A 200.135.37.100<br />
www A 200.135.37.100<br />
mail A 200.135.37.100<br />
<br />
== Instalação de Equipamento de Redes (Modem, Switch e Roteadores) ==<br />
<br />
'''Configurações:''' <br />
<br />
Instalação:<br />
<br />
minicom -s<br />
<br />
Configuração do Roteador Cisco 1700: <br />
<br />
* Configuração dos Dois Roteadores Utilizando a ferramenta "Minicon" (Se fosse Windows seria Hyperterminal)<br />
* Configuração dos dispositivos: Serial e Ethernet<br />
* Configuração como Protocolo PPP<br />
<br />
- ''"Configuração da porta serial":''<br />
<br />
┌─────────────[configuração]──────────────┐<br />
│ Nomes de arquivos e rotas<br />
│ Protocolos de transferência de arquivos<br />
│ Configuração da porta serial<br />
│ Modem e discagem<br />
│ Tela e teclado<br />
│ Salvar configuração como dfl<br />
│ Salvar configuração como<br />
│ Sair<br />
│ Sair do Minicom<br />
└────────────────────────────────────────┘<br />
<br />
- ''"Alteração da Porta Serial"''<br />
┌──────────────────────────────────────────────────────────┐<br />
│ A – Dispositivo Serial : /dev/ttSy0 <br />
│ B – Localização do Arquivo de Travamento : /var/lock<br />
│ C – Programa de Entrada :<br />
│ D – Programa de Saída :<br />
│ E – Bps/Paridade/Bits : 9600 8N1 <br />
│ F – Controle de Fluxo por Hardware : Não<br />
│ G – Controle de Fluxo por Software : Não<br />
│<br />
│ Alterar qual configuração?<br />
└──────────────────────────────────────────────────────────┘<br />
<br />
- ''"Salvar configuração com dfl"''<br />
<br />
- ''Configurando a Interface Serial do Roteador:''<br />
<br />
enable;<br />
configure terminal;<br />
<br />
#Para configurar a interface serial:<br />
interface serial 0;<br />
ip address 10.0.0.1/30;<br />
encapsulation ppp;<br />
exit;<br />
<br />
#Para configurar a interface ethernet:<br />
interface fastethernet 0;<br />
ip address 172.18.0.1/24;<br />
exit;<br />
exit;<br />
<br />
#Para salvar as configurações:<br />
wr;<br />
<br />
== Cabeamento Estruturado ==<br />
<br />
Atividades Concluídas:<br />
<br />
- o A central telefônica ao DSLAM<br />
- o O DSLAM ao armário de telecom da equipe, através de uma linha telefone + DSL<br />
- o armário da equipe a uma área de trabalho. <br />
- O cabeamento permitiu a conexão do modem DSL no armário de telecom.<br />
- As tomadas da área de trabalho para conexão com Telefone e o Modem ADSL.</div>Vagner.chttps://wiki.sj.ifsc.edu.br/index.php?title=Projeto_Integrador_-_2011.1_-_Teletec&diff=34754Projeto Integrador - 2011.1 - Teletec2011-07-06T23:31:58Z<p>Vagner.c: /* Gerencia de Redes: Apache, Postfix e DNS */</p>
<hr />
<div>== * '''Equipe 2 : TELETEC''' ==<br />
<br />
----<br />
<br />
== INTEGRANTES TELETEC ==<br />
<br />
* '''Daniel Estefano'''; estefano.daniel@gmail.com <br />
* '''Denis Teixeira'''; denisteixeira3@gmail.com <br />
* '''Leonardo Oliveira P.'''; leonardo-op@live.com <br />
* '''Odair de Moraes'''; odairdmoraes@hotmail.com<br />
* '''Robson de Carvalho'''; rob_carvalho12@hotmail.com<br />
* '''Vagner Cordeiro.''' cordeirotelecom@gmail.com<br />
<br />
----<br />
<br />
== Etapas Iniciais de Configurações da Rede ==<br />
<br />
<br />
# Instalação do Sistema Operacional:Ubuntu-Server;<br />
# Definido Sistema de Arquivo, Dividido em 3 Partições: ''1 Partição Primátia, 1 Partição Secundária e uma Partição para Swap;'' <br />
# Definido nome do Domínio: teletec.sj.ifsc.edu.br;<br />
# Criado um Usuário: Teletec;<br />
# Acesso via SSH ao Servidor Teletec.<br />
<br />
----<br />
<br />
== Gerencia de Redes: Apache, Postfix e DNS ==<br />
<br />
'''Configurações:''' <br />
<br />
- Edição do Arquivo para IP Estático: '''/etc/network/interfaces''' <br />
<br />
# This file describes the network interfaces available on your system<br />
# and how to activate them. For more information, see interfaces(5).<br />
# The loopback network interface<br />
auto lo<br />
iface lo inet loopback<br />
# The primary network interface<br />
auto eth0<br />
iface eth0 inet static<br />
address 200.135.37.100<br />
netmask 255.255.255.192<br />
gateway 200.135.37.126 <br />
<br />
- Edição do Arquivo do servidor DNS '''/etc/bind/named.conf''' <br />
<br />
// This is the primary configuration file for the BIND DNS server named.<br />
//<br />
// Please read /usr/share/doc/bind9/README.Debian.gz for information on the <br />
// structure of BIND configuration files in Debian, *BEFORE* you customize <br />
// this configuration file.<br />
//<br />
// If you are just adding zones, please do that in /etc/bind/named.conf.local<br />
include "/etc/bind/named.conf.options";<br />
include "/etc/bind/named.conf.local";<br />
include "/etc/bind/named.conf.default-zones";<br />
include "/etc/bind/servidor.conf";<br />
include "/etc/bind/tecnico.conf";<br />
include "/etc/bind/daniel.conf";<br />
<br />
- Edição do Arquivo named.conf.local '''/etc/bind/named.conf.local'''<br />
<br />
//<br />
// Do any local configuration here<br />
//<br />
<br />
// Consider adding the 1918 zones here, if they are not used in your<br />
// organization<br />
//include "/etc/bind/zones.rfc1918"8;<br />
zone "teletec.sj.ifsc.edu.br." IN {<br />
type master;<br />
file "/etc/bind/teletec.zone";<br />
allow-update { none; };<br />
};<br />
<br />
- Edição do Arquivo '''/etc/bind/37.135.200.in-addr.arpa'''<br />
<br />
$TTL 86400<br />
@ IN SOA servidor.teletec.sj.ifsc.edu.br. root (<br />
2011061500 ;<br />
1d ;<br />
1h ;<br />
1w ; <br />
1d ;<br />
)<br />
IN NS servidor.teletec.sj.ifsc.edu.br.<br />
100 IN PTR servidor.teletec.sj.ifsc.edu.br.<br />
<br />
- Edição do Arquivo '''/etc/bind/teletec.zone'''<br />
<br />
$TTL 86400<br />
@ IN SOA teletec.teletec.sj.ifsc.edu.br root (<br />
2011062901;<br />
3H;<br />
15M;<br />
1W;<br />
1D );<br />
IN NS teletec.teletec.sj.ifsc.edu.br.<br />
IN MX 0 mail.teletec.sj.ifsc.edu.br.<br />
localhost IN A 127.0.0.1<br />
$ORIGIN teletec.sj.ifsc.edu.br.<br />
teletec A 200.135.37.100<br />
www A 200.135.37.100<br />
mail A 200.135.37.100<br />
<br />
== Instalação de Equipamento de Redes (Modem, Switch e Roteadores) ==<br />
<br />
'''Configurações:''' <br />
<br />
Instalação:<br />
<br />
minicom -s<br />
<br />
Configuração do Roteador Cisco 1700: <br />
<br />
* Configuração dos Dois Roteadores Utilizando a ferramenta "Minicon" (Se fosse Windows seria Hyperterminal)<br />
* Configuração dos dispositivos: Serial e Ethernet<br />
* Configuração como Protocolo PPP<br />
<br />
- ''"Configuração da porta serial":''<br />
<br />
┌─────────────[configuração]──────────────┐<br />
│ Nomes de arquivos e rotas<br />
│ Protocolos de transferência de arquivos<br />
│ Configuração da porta serial<br />
│ Modem e discagem<br />
│ Tela e teclado<br />
│ Salvar configuração como dfl<br />
│ Salvar configuração como<br />
│ Sair<br />
│ Sair do Minicom<br />
└────────────────────────────────────────┘<br />
<br />
- ''"Alteração da Porta Serial"''<br />
┌──────────────────────────────────────────────────────────┐<br />
│ A – Dispositivo Serial : /dev/ttSy0 <br />
│ B – Localização do Arquivo de Travamento : /var/lock<br />
│ C – Programa de Entrada :<br />
│ D – Programa de Saída :<br />
│ E – Bps/Paridade/Bits : 9600 8N1 <br />
│ F – Controle de Fluxo por Hardware : Não<br />
│ G – Controle de Fluxo por Software : Não<br />
│<br />
│ Alterar qual configuração?<br />
└──────────────────────────────────────────────────────────┘<br />
<br />
- ''"Salvar configuração com dfl"''<br />
<br />
- ''Configurando a Interface Serial do Roteador:''<br />
<br />
enable;<br />
configure terminal;<br />
<br />
#Para configurar a interface serial:<br />
interface serial 0;<br />
ip address 10.0.0.1/30;<br />
encapsulation ppp;<br />
exit;<br />
<br />
#Para configurar a interface ethernet:<br />
interface fastethernet 0;<br />
ip address 172.18.0.1/24;<br />
exit;<br />
exit;<br />
<br />
#Para salvar as configurações:<br />
wr;</div>Vagner.chttps://wiki.sj.ifsc.edu.br/index.php?title=Projeto_Integrador_-_2011.1_-_Teletec&diff=34748Projeto Integrador - 2011.1 - Teletec2011-07-06T22:54:06Z<p>Vagner.c: /* Instalação de Equipamento de Redes (Modem, Switch e Roteadores) */</p>
<hr />
<div>== * '''Equipe 2 : TELETEC''' ==<br />
<br />
----<br />
<br />
== INTEGRANTES TELETEC ==<br />
<br />
* '''Daniel Estefano'''; estefano.daniel@gmail.com <br />
* '''Denis Teixeira'''; denisteixeira3@gmail.com <br />
* '''Leonardo Oliveira P.'''; leonardo-op@live.com <br />
* '''Odair de Moraes'''; odairdmoraes@hotmail.com<br />
* '''Robson de Carvalho'''; rob_carvalho12@hotmail.com<br />
* '''Vagner Cordeiro.''' cordeirotelecom@gmail.com<br />
<br />
----<br />
<br />
== Etapas Iniciais de Configurações da Rede ==<br />
<br />
<br />
# Instalação do Sistema Operacional:Ubuntu-Server;<br />
# Definido Sistema de Arquivo, Dividido em 3 Partições: ''1 Partição Primátia, 1 Partição Secundária e uma Partição para Swap;'' <br />
# Definido nome do Domínio: teletec.sj.ifsc.edu.br;<br />
# Criado um Usuário: Teletec;<br />
# Acesso via SSH ao Servidor Teletec.<br />
<br />
----<br />
<br />
== Gerencia de Redes: Apache, Postfix e DNS ==<br />
<br />
'''Configurações:''' <br />
<br />
- Edição do Arquivo para IP Estático: '''/etc/network/interfaces''' <br />
<br />
# This file describes the network interfaces available on your system<br />
# and how to activate them. For more information, see interfaces(5).<br />
# The loopback network interface<br />
auto lo<br />
iface lo inet loopback<br />
# The primary network interface<br />
auto eth0<br />
iface eth0 inet static<br />
address 200.135.37.100<br />
netmask 255.255.255.192<br />
gateway 200.135.37.126 <br />
<br />
- Edição do Arquivo do servidor DNS '''/etc/bind/named.conf''' <br />
<br />
// This is the primary configuration file for the BIND DNS server named.<br />
//<br />
// Please read /usr/share/doc/bind9/README.Debian.gz for information on the <br />
// structure of BIND configuration files in Debian, *BEFORE* you customize <br />
// this configuration file.<br />
//<br />
// If you are just adding zones, please do that in /etc/bind/named.conf.local<br />
include "/etc/bind/named.conf.options";<br />
include "/etc/bind/named.conf.local";<br />
include "/etc/bind/named.conf.default-zones";<br />
include "/etc/bind/servidor.conf";<br />
include "/etc/bind/tecnico.conf";<br />
include "/etc/bind/daniel.conf";<br />
<br />
- Edição do Arquivo named.conf.local '''/etc/bind/named.conf.local'''<br />
<br />
//<br />
// Do any local configuration here<br />
//<br />
<br />
// Consider adding the 1918 zones here, if they are not used in your<br />
// organization<br />
//include "/etc/bind/zones.rfc1918"8;<br />
zone "teletec.sj.ifsc.edu.br." IN {<br />
type master;<br />
file "/etc/bind/teletec.zone";<br />
allow-update { none; };<br />
};<br />
<br />
- Edição do Arquivo '''/etc/bind/in-addr.arpa'''<br />
<br />
$TTL 86400<br />
@ IN SOA servidor.teletec.sj.ifsc.edu.br. root (<br />
2011061500 ;<br />
1d ;<br />
1h ;<br />
1w ; <br />
1d ;<br />
)<br />
IN NS servidor.teletec.sj.ifsc.edu.br.<br />
100 IN PTR servidor.teletec.sj.ifsc.edu.br.<br />
<br />
- Edição do Arquivo '''/etc/bind/teletec.zone'''<br />
<br />
$TTL 86400<br />
@ IN SOA teletec.teletec.sj.ifsc.edu.br root (<br />
2011062901;<br />
3H;<br />
15M;<br />
1W;<br />
1D );<br />
IN NS teletec.teletec.sj.ifsc.edu.br.<br />
IN MX 0 mail.teletec.sj.ifsc.edu.br.<br />
localhost IN A 127.0.0.1<br />
$ORIGIN teletec.sj.ifsc.edu.br.<br />
teletec A 200.135.37.100<br />
www A 200.135.37.100<br />
mail A 200.135.37.100<br />
<br />
== Instalação de Equipamento de Redes (Modem, Switch e Roteadores) ==<br />
<br />
'''Configurações:''' <br />
<br />
Instalação:<br />
<br />
minicom -s<br />
<br />
Configuração do Roteador Cisco 1700: <br />
<br />
* Configuração dos Dois Roteadores Utilizando a ferramenta "Minicon" (Se fosse Windows seria Hyperterminal)<br />
* Configuração dos dispositivos: Serial e Ethernet<br />
* Configuração como Protocolo PPP<br />
<br />
- ''"Configuração da porta serial":''<br />
<br />
┌─────────────[configuração]──────────────┐<br />
│ Nomes de arquivos e rotas<br />
│ Protocolos de transferência de arquivos<br />
│ Configuração da porta serial<br />
│ Modem e discagem<br />
│ Tela e teclado<br />
│ Salvar configuração como dfl<br />
│ Salvar configuração como<br />
│ Sair<br />
│ Sair do Minicom<br />
└────────────────────────────────────────┘<br />
<br />
- ''"Alteração da Porta Serial"''<br />
┌──────────────────────────────────────────────────────────┐<br />
│ A – Dispositivo Serial : /dev/ttSy0 <br />
│ B – Localização do Arquivo de Travamento : /var/lock<br />
│ C – Programa de Entrada :<br />
│ D – Programa de Saída :<br />
│ E – Bps/Paridade/Bits : 9600 8N1 <br />
│ F – Controle de Fluxo por Hardware : Não<br />
│ G – Controle de Fluxo por Software : Não<br />
│<br />
│ Alterar qual configuração?<br />
└──────────────────────────────────────────────────────────┘<br />
<br />
- ''"Salvar configuração com dfl"''<br />
<br />
- ''Configurando a Interface Serial do Roteador:''<br />
<br />
enable;<br />
configure terminal;<br />
<br />
#Para configurar a interface serial:<br />
interface serial 0;<br />
ip address 10.0.0.1/30;<br />
encapsulation ppp;<br />
exit;<br />
<br />
#Para configurar a interface ethernet:<br />
interface fastethernet 0;<br />
ip address 172.18.0.1/24;<br />
exit;<br />
exit;<br />
<br />
#Para salvar as configurações:<br />
wr;</div>Vagner.chttps://wiki.sj.ifsc.edu.br/index.php?title=Projeto_Integrador_-_2011.1_-_Teletec&diff=34747Projeto Integrador - 2011.1 - Teletec2011-07-06T22:52:02Z<p>Vagner.c: /* Gerencia de Redes: Apache, Postfix e DNS */</p>
<hr />
<div>== * '''Equipe 2 : TELETEC''' ==<br />
<br />
----<br />
<br />
== INTEGRANTES TELETEC ==<br />
<br />
* '''Daniel Estefano'''; estefano.daniel@gmail.com <br />
* '''Denis Teixeira'''; denisteixeira3@gmail.com <br />
* '''Leonardo Oliveira P.'''; leonardo-op@live.com <br />
* '''Odair de Moraes'''; odairdmoraes@hotmail.com<br />
* '''Robson de Carvalho'''; rob_carvalho12@hotmail.com<br />
* '''Vagner Cordeiro.''' cordeirotelecom@gmail.com<br />
<br />
----<br />
<br />
== Etapas Iniciais de Configurações da Rede ==<br />
<br />
<br />
# Instalação do Sistema Operacional:Ubuntu-Server;<br />
# Definido Sistema de Arquivo, Dividido em 3 Partições: ''1 Partição Primátia, 1 Partição Secundária e uma Partição para Swap;'' <br />
# Definido nome do Domínio: teletec.sj.ifsc.edu.br;<br />
# Criado um Usuário: Teletec;<br />
# Acesso via SSH ao Servidor Teletec.<br />
<br />
----<br />
<br />
== Gerencia de Redes: Apache, Postfix e DNS ==<br />
<br />
'''Configurações:''' <br />
<br />
- Edição do Arquivo para IP Estático: '''/etc/network/interfaces''' <br />
<br />
# This file describes the network interfaces available on your system<br />
# and how to activate them. For more information, see interfaces(5).<br />
# The loopback network interface<br />
auto lo<br />
iface lo inet loopback<br />
# The primary network interface<br />
auto eth0<br />
iface eth0 inet static<br />
address 200.135.37.100<br />
netmask 255.255.255.192<br />
gateway 200.135.37.126 <br />
<br />
- Edição do Arquivo do servidor DNS '''/etc/bind/named.conf''' <br />
<br />
// This is the primary configuration file for the BIND DNS server named.<br />
//<br />
// Please read /usr/share/doc/bind9/README.Debian.gz for information on the <br />
// structure of BIND configuration files in Debian, *BEFORE* you customize <br />
// this configuration file.<br />
//<br />
// If you are just adding zones, please do that in /etc/bind/named.conf.local<br />
include "/etc/bind/named.conf.options";<br />
include "/etc/bind/named.conf.local";<br />
include "/etc/bind/named.conf.default-zones";<br />
include "/etc/bind/servidor.conf";<br />
include "/etc/bind/tecnico.conf";<br />
include "/etc/bind/daniel.conf";<br />
<br />
- Edição do Arquivo named.conf.local '''/etc/bind/named.conf.local'''<br />
<br />
//<br />
// Do any local configuration here<br />
//<br />
<br />
// Consider adding the 1918 zones here, if they are not used in your<br />
// organization<br />
//include "/etc/bind/zones.rfc1918"8;<br />
zone "teletec.sj.ifsc.edu.br." IN {<br />
type master;<br />
file "/etc/bind/teletec.zone";<br />
allow-update { none; };<br />
};<br />
<br />
- Edição do Arquivo '''/etc/bind/in-addr.arpa'''<br />
<br />
$TTL 86400<br />
@ IN SOA servidor.teletec.sj.ifsc.edu.br. root (<br />
2011061500 ;<br />
1d ;<br />
1h ;<br />
1w ; <br />
1d ;<br />
)<br />
IN NS servidor.teletec.sj.ifsc.edu.br.<br />
100 IN PTR servidor.teletec.sj.ifsc.edu.br.<br />
<br />
- Edição do Arquivo '''/etc/bind/teletec.zone'''<br />
<br />
$TTL 86400<br />
@ IN SOA teletec.teletec.sj.ifsc.edu.br root (<br />
2011062901;<br />
3H;<br />
15M;<br />
1W;<br />
1D );<br />
IN NS teletec.teletec.sj.ifsc.edu.br.<br />
IN MX 0 mail.teletec.sj.ifsc.edu.br.<br />
localhost IN A 127.0.0.1<br />
$ORIGIN teletec.sj.ifsc.edu.br.<br />
teletec A 200.135.37.100<br />
www A 200.135.37.100<br />
mail A 200.135.37.100<br />
<br />
== Instalação de Equipamento de Redes (Modem, Switch e Roteadores) ==<br />
<nowiki>.</nowiki><br />
Vagner (roteador Cisco 1700), Odair (roteador Cisco 2500).<br />
Os dois Membros verificaram estrutura física dos Equipamentos que vão se Interligar e suas respectivas configurações.<br />
<br />
'''Configurações:''' <br />
<br />
Instalação:<br />
<br />
minicom -s<br />
<br />
Configuração do Roteador Cisco 1700: <br />
<br />
* Configuração dos Dois Roteadores Utilizando a ferramenta "Minicon" (Se fosse Windows seria Hyperterminal)<br />
* Configuração dos dispositivos: Serial e Ethernet<br />
* Configuração como Protocolo PPP<br />
<br />
- ''"Configuração da porta serial":''<br />
<br />
┌─────────────[configuração]──────────────┐<br />
│ Nomes de arquivos e rotas<br />
│ Protocolos de transferência de arquivos<br />
│ Configuração da porta serial<br />
│ Modem e discagem<br />
│ Tela e teclado<br />
│ Salvar configuração como dfl<br />
│ Salvar configuração como<br />
│ Sair<br />
│ Sair do Minicom<br />
└────────────────────────────────────────┘<br />
<br />
- ''"Alteração da Porta Serial"''<br />
┌──────────────────────────────────────────────────────────┐<br />
│ A – Dispositivo Serial : /dev/ttSy0 <br />
│ B – Localização do Arquivo de Travamento : /var/lock<br />
│ C – Programa de Entrada :<br />
│ D – Programa de Saída :<br />
│ E – Bps/Paridade/Bits : 9600 8N1 <br />
│ F – Controle de Fluxo por Hardware : Não<br />
│ G – Controle de Fluxo por Software : Não<br />
│<br />
│ Alterar qual configuração?<br />
└──────────────────────────────────────────────────────────┘<br />
<br />
- ''"Salvar configuração com dfl"''<br />
<br />
- ''Configurando a Interface Serial do Roteador:''<br />
<br />
enable;<br />
configure terminal;<br />
<br />
#Para configurar a interface serial:<br />
interface serial 0;<br />
ip address 10.0.0.1/30;<br />
encapsulation ppp;<br />
exit;<br />
<br />
#Para configurar a interface ethernet:<br />
interface fastethernet 0;<br />
ip address 172.18.0.1/24;<br />
exit;<br />
exit;<br />
<br />
#Para salvar as configurações:<br />
wr;</div>Vagner.chttps://wiki.sj.ifsc.edu.br/index.php?title=Projeto_Integrador_-_2011.1_-_Teletec&diff=34730Projeto Integrador - 2011.1 - Teletec2011-07-04T23:57:09Z<p>Vagner.c: </p>
<hr />
<div>== * '''Equipe 2 : TELETEC''' ==<br />
<br />
----<br />
<br />
== INTEGRANTES TELETEC ==<br />
<br />
* '''Daniel Estefano'''; estefano.daniel@gmail.com <br />
* '''Denis Teixeira'''; denisteixeira3@gmail.com <br />
* '''Leonardo Oliveira P.'''; leonardo-op@live.com <br />
* '''Odair de Moraes'''; odairdmoraes@hotmail.com<br />
* '''Robson de Carvalho'''; rob_carvalho12@hotmail.com<br />
* '''Vagner Cordeiro.''' cordeirotelecom@gmail.com<br />
<br />
----<br />
<br />
== Etapas Iniciais de Configurações da Rede ==<br />
<br />
<br />
# Instalação do Sistema Operacional:Ubuntu-Server;<br />
# Definido Sistema de Arquivo, Dividido em 3 Partições: ''1 Partição Primátia, 1 Partição Secundária e uma Partição para Swap;'' <br />
# Definido nome do Domínio: teletec.sj.ifsc.edu.br;<br />
# Criado um Usuário: Teletec;<br />
# Acesso via SSH ao Servidor Teletec.<br />
<br />
----<br />
<br />
== Gerencia de Redes: Apache, Postfix e DNS ==<br />
<br />
'''Configurações:''' <br />
<br />
- Edição do Arquivo named.conf.local '''/etc/bind/named.conf.local'''<br />
<br />
//<br />
// Do any local configuration here<br />
//<br />
<br />
// Consider adding the 1918 zones here, if they are not used in your<br />
// organization<br />
//include "/etc/bind/zones.rfc1918"8;<br />
zone "teletec.sj.ifsc.edu.br." IN {<br />
type master;<br />
file "/etc/bind/teletec.zone";<br />
allow-update { none; };<br />
};<br />
<br />
- Edição do Arquivo para IP Estático: '''/etc/network/interfaces''' <br />
<br />
# This file describes the network interfaces available on your system<br />
# and how to activate them. For more information, see interfaces(5).<br />
# The loopback network interface<br />
auto lo<br />
iface lo inet loopback<br />
# The primary network interface<br />
auto eth0<br />
iface eth0 inet static<br />
address 200.135.37.100<br />
netmask 255.255.255.192<br />
gateway 200.135.37.126 <br />
<br />
- Edição do Arquivo do servidor DNS '''/etc/bind/named.conf''' <br />
<br />
// This is the primary configuration file for the BIND DNS server named.<br />
//<br />
// Please read /usr/share/doc/bind9/README.Debian.gz for information on the <br />
// structure of BIND configuration files in Debian, *BEFORE* you customize <br />
// this configuration file.<br />
//<br />
// If you are just adding zones, please do that in /etc/bind/named.conf.local<br />
include "/etc/bind/named.conf.options";<br />
include "/etc/bind/named.conf.local";<br />
include "/etc/bind/named.conf.default-zones";<br />
include "/etc/bind/servidor.conf";<br />
include "/etc/bind/tecnico.conf";<br />
include "/etc/bind/daniel.conf";<br />
<br />
== Instalação de Equipamento de Redes (Modem, Switch e Roteadores) ==<br />
<nowiki>.</nowiki><br />
Vagner (roteador Cisco 1700), Odair (roteador Cisco 2500).<br />
Os dois Membros verificaram estrutura física dos Equipamentos que vão se Interligar e suas respectivas configurações.<br />
<br />
'''Configurações:''' <br />
<br />
Instalação:<br />
<br />
minicom -s<br />
<br />
Configuração do Roteador Cisco 1700: <br />
<br />
* Configuração dos Dois Roteadores Utilizando a ferramenta "Minicon" (Se fosse Windows seria Hyperterminal)<br />
* Configuração dos dispositivos: Serial e Ethernet<br />
* Configuração como Protocolo PPP<br />
<br />
- ''"Configuração da porta serial":''<br />
<br />
┌─────────────[configuração]──────────────┐<br />
│ Nomes de arquivos e rotas<br />
│ Protocolos de transferência de arquivos<br />
│ Configuração da porta serial<br />
│ Modem e discagem<br />
│ Tela e teclado<br />
│ Salvar configuração como dfl<br />
│ Salvar configuração como<br />
│ Sair<br />
│ Sair do Minicom<br />
└────────────────────────────────────────┘<br />
<br />
- ''"Alteração da Porta Serial"''<br />
┌──────────────────────────────────────────────────────────┐<br />
│ A – Dispositivo Serial : /dev/ttSy0 <br />
│ B – Localização do Arquivo de Travamento : /var/lock<br />
│ C – Programa de Entrada :<br />
│ D – Programa de Saída :<br />
│ E – Bps/Paridade/Bits : 9600 8N1 <br />
│ F – Controle de Fluxo por Hardware : Não<br />
│ G – Controle de Fluxo por Software : Não<br />
│<br />
│ Alterar qual configuração?<br />
└──────────────────────────────────────────────────────────┘<br />
<br />
- ''"Salvar configuração com dfl"''<br />
<br />
- ''Configurando a Interface Serial do Roteador:''<br />
<br />
enable;<br />
configure terminal;<br />
<br />
#Para configurar a interface serial:<br />
interface serial 0;<br />
ip address 10.0.0.1/30;<br />
encapsulation ppp;<br />
exit;<br />
<br />
#Para configurar a interface ethernet:<br />
interface fastethernet 0;<br />
ip address 172.18.0.1/24;<br />
exit;<br />
exit;<br />
<br />
#Para salvar as configurações:<br />
wr;</div>Vagner.chttps://wiki.sj.ifsc.edu.br/index.php?title=Projeto_Integrador_-_2011.1_-_Teletec&diff=34510Projeto Integrador - 2011.1 - Teletec2011-06-27T22:46:27Z<p>Vagner.c: </p>
<hr />
<div>== * '''Equipe 2 : TELETEC''' ==<br />
<br />
----<br />
<br />
== INTEGRANTES TELETEC ==<br />
<br />
* '''Daniel Estefano'''; estefano.daniel@gmail.com <br />
* '''Denis Teixeira'''; denisteixeira3@gmail.com <br />
* '''Leonardo Oliveira P.'''; leonardo-op@live.com <br />
* '''Odair de Moraes'''; odairdmoraes@hotmail.com<br />
* '''Robson de Carvalho'''; rob_carvalho12@hotmail.com<br />
* '''Vagner Cordeiro.''' cordeirotelecom@gmail.com<br />
<br />
----<br />
<br />
== Dia 13/06/2011 ==<br />
<br />
<br />
# Instalação do Sistema Operacional:Ubuntu-Server;<br />
# Definido Sistema de Arquivo, Dividido em 3 Partições: ''1 Partição Primátia, 1 Partição Secundária e uma Partição para Swap;'' <br />
# Definido nome do Domínio: teletec.sj.ifsc.edu.br;<br />
# Criado um Usuário: Teletec;<br />
# Acesso via SSH ao Servidor Teletec.<br />
<br />
----<br />
<br />
== Dia 14/06/2011 ==<br />
<br />
# Saul repassou informações sobre o Cabeamento Estruturado.<br />
<br />
----<br />
<br />
== Dia 15/06/2011 ==<br />
<br />
<br />
*'''Gerencia de Redes: Apache, Postfix e DNS:''' <br />
<nowiki>.</nowiki><br />
Daniel, Denis, Robson, Leonardo.<br />
<nowiki>.</nowiki><br />
<br />
'''Configurações:''' <br />
<br />
- Edição do Arquivo named.conf.local '''/etc/bind/named.conf.local'''<br />
<br />
//<br />
// Do any local configuration here<br />
//<br />
<br />
// Consider adding the 1918 zones here, if they are not used in your<br />
// organization<br />
//include "/etc/bind/zones.rfc1918"8;<br />
zone "teletec.sj.ifsc.edu.br." IN {<br />
type master;<br />
file "/etc/bind/teletec.zone";<br />
allow-update { none; };<br />
};<br />
<br />
- Edição do Arquivo para IP Estático: '''/etc/network/interfaces''' <br />
<br />
# This file describes the network interfaces available on your system<br />
# and how to activate them. For more information, see interfaces(5).<br />
# The loopback network interface<br />
auto lo<br />
iface lo inet loopback<br />
# The primary network interface<br />
auto eth0<br />
iface eth0 inet static<br />
address 200.135.37.100<br />
netmask 255.255.255.192<br />
gateway 200.135.37.126 <br />
<br />
- Edição do Arquivo do servidor DNS '''/etc/bind/named.conf''' <br />
<br />
// This is the primary configuration file for the BIND DNS server named.<br />
//<br />
// Please read /usr/share/doc/bind9/README.Debian.gz for information on the <br />
// structure of BIND configuration files in Debian, *BEFORE* you customize <br />
// this configuration file.<br />
//<br />
// If you are just adding zones, please do that in /etc/bind/named.conf.local<br />
include "/etc/bind/named.conf.options";<br />
include "/etc/bind/named.conf.local";<br />
include "/etc/bind/named.conf.default-zones";<br />
include "/etc/bind/servidor.conf";<br />
include "/etc/bind/tecnico.conf";<br />
include "/etc/bind/daniel.conf";<br />
<br />
*'''Instalação de Equipamento de Redes (Modem, Switch e Roteadores)''': <br />
<nowiki>.</nowiki><br />
Vagner (roteador Cisco 1700), Odair (roteador Cisco 2500).<br />
Os dois Membros verificaram estrutura física dos Equipamentos que vão se Interligar e suas respectivas configurações.<br />
<br />
'''Configurações:''' <br />
<br />
Instalação:<br />
<br />
minicom -s<br />
<br />
Configuração do Roteador Cisco 1700: <br />
<br />
* Configuração dos Dois Roteadores Utilizando a ferramenta "Minicon" (Se fosse Windows seria Hyperterminal)<br />
* Configuração dos dispositivos: Serial e Ethernet<br />
* Configuração como Protocolo PPP<br />
<br />
- ''"Configuração da porta serial":''<br />
<br />
┌─────────────[configuração]──────────────┐<br />
│ Nomes de arquivos e rotas<br />
│ Protocolos de transferência de arquivos<br />
│ Configuração da porta serial<br />
│ Modem e discagem<br />
│ Tela e teclado<br />
│ Salvar configuração como dfl<br />
│ Salvar configuração como<br />
│ Sair<br />
│ Sair do Minicom<br />
└────────────────────────────────────────┘<br />
<br />
- ''"Alteração da Porta Serial"''<br />
┌──────────────────────────────────────────────────────────┐<br />
│ A – Dispositivo Serial : /dev/ttSy0 <br />
│ B – Localização do Arquivo de Travamento : /var/lock<br />
│ C – Programa de Entrada :<br />
│ D – Programa de Saída :<br />
│ E – Bps/Paridade/Bits : 9600 8N1 <br />
│ F – Controle de Fluxo por Hardware : Não<br />
│ G – Controle de Fluxo por Software : Não<br />
│<br />
│ Alterar qual configuração?<br />
└──────────────────────────────────────────────────────────┘<br />
<br />
- ''"Salvar configuração com dfl"''<br />
<br />
- ''Configurando a Interface Serial do Roteador:''<br />
<br />
enable;<br />
configure terminal;<br />
<br />
#Para configurar a interface serial:<br />
interface serial 0;<br />
ip address 10.0.0.1/30;<br />
encapsulation ppp;<br />
exit;<br />
<br />
#Para configurar a interface ethernet:<br />
interface fastethernet 0;<br />
ip address 172.18.0.1/24;<br />
exit;<br />
exit;<br />
<br />
#Para salvar as configurações:<br />
wr;</div>Vagner.chttps://wiki.sj.ifsc.edu.br/index.php?title=Projeto_Integrador_-_2011.1_-_Teletec&diff=34508Projeto Integrador - 2011.1 - Teletec2011-06-27T22:03:29Z<p>Vagner.c: </p>
<hr />
<div>== * '''Equipe 2 : TELETEC''' ==<br />
<br />
* Dia [[13/06/2011]]<br />
* Dia [[14/06/2011]]<br />
* Dia [[15/06/2011]]<br />
* Dia [[16/06/2011]]<br />
* Dia [[17/06/2011]]<br />
* Dia [[20/06/2011]]<br />
* Dia [[21/06/2011]]<br />
* Dia [[22/06/2011]]<br />
* Dia [[23/06/2011]]<br />
* Dia [[24/06/2011]]<br />
* Dia [[26/06/2011]]<br />
* Dia [[27/06/2011]]<br />
* Dia [[28/06/2011]]<br />
* Dia [[29/06/2011]]<br />
* Dia [[30/06/2011]]<br />
* Dia [[01/07/2011]]<br />
* Dia [[04/07/2011]]<br />
* Dia [[05/07/2011]]<br />
* Dia [[06/07/2011]]<br />
* Dia [[07/07/2011]]<br />
* Dia [[08/07/2011]]<br />
* Dia [[11/07/2011]]<br />
* Dia [[12/07/2011]]<br />
<br />
<br />
----<br />
<br />
== '''INTEGRANTES TELETEC''' ==<br />
<nowiki>.</nowiki><br />
* '''Daniel Estefano'''; estefano.daniel@gmail.com <br />
* '''Denis Teixeira'''; denisteixeira3@gmail.com <br />
* '''Leonardo Oliveira P.'''; leonardo-op@live.com <br />
* '''Odair de Moraes'''; odairdmoraes@hotmail.com<br />
* '''Robson de Carvalho'''; rob_carvalho12@hotmail.com<br />
* '''Vagner Cordeiro.''' cordeirotelecom@gmail.com<br />
<br />
<nowiki>.</nowiki><br />
----<br />
<br />
'''Dia 13/06/2011'''<br />
<br />
# Instalação do Sistema Operacional:Ubuntu-Server;<br />
# Definido Sistema de Arquivo, Dividido em 3 Partições: ''1 Partição Primátia, 1 Partição Secundária e uma Partição para Swap;'' <br />
# Definido nome do Domínio: teletec.sj.ifsc.edu.br;<br />
# Criado um Usuário: Teletec;<br />
# Acesso via SSH ao Servidor Teletec.<br />
<br />
<br />
----<br />
<br />
'''Dia 14/06/2011'''<br />
<br />
<nowiki>.</nowiki><br />
# Saul repassou informações sobre o Cabeamento Estruturado.<br />
<nowiki>.</nowiki><br />
----<br />
<br />
'''Dia 15/06/2011'''<br />
<br />
*'''Gerencia de Redes: Apache, Postfix e DNS:''' <br />
<nowiki>.</nowiki><br />
Daniel, Denis, Robson, Leonardo.<br />
<nowiki>.</nowiki><br />
<br />
'''Configurações:''' <br />
<br />
- Edição do Arquivo para IP Estático: '''/etc/network/interfaces''' <br />
<br />
- Edição do Arquivo do servidor DNS '''/etc/bind/named.conf''' <br />
<br />
<nowiki>.</nowiki><br />
<br />
*'''Instalação de Equipamento de Redes (Modem, Switch e Roteadores)''': <br />
<nowiki>.</nowiki><br />
Vagner (roteador Cisco 1700), Odair (roteador Cisco 2500).<br />
Os dois Membros verificaram estrutura física dos Equipamentos que vão se Interligar e suas respectivas configurações.<br />
<br />
'''Configurações:''' <br />
<br />
- Configuração dos Dois Roteadores Utilizando a ferramenta "Minicon" (Se fosse Windows seria Hyperterminal)<br />
- Configuração dos dispositivos: Serial e Ethernet<br />
- Configuração como Protocolo PPP</div>Vagner.chttps://wiki.sj.ifsc.edu.br/index.php?title=Projeto_Integrador_-_2011.1_-_Teletec&diff=34493Projeto Integrador - 2011.1 - Teletec2011-06-26T18:42:17Z<p>Vagner.c: </p>
<hr />
<div>== * '''Equipe 2 : TELETEC''' ==<br />
<br />
* Dia [[13/06/2011]]<br />
* Dia [[14/06/2011]]<br />
* Dia [[15/06/2011]]<br />
* Dia [[16/06/2011]]<br />
* Dia [[17/06/2011]]<br />
* Dia [[20/06/2011]]<br />
* Dia [[21/06/2011]]<br />
* Dia [[22/06/2011]]<br />
* Dia [[23/06/2011]]<br />
* Dia [[24/06/2011]]<br />
* Dia [[26/06/2011]]<br />
* Dia [[27/06/2011]]<br />
* Dia [[28/06/2011]]<br />
* Dia [[29/06/2011]]<br />
* Dia [[30/06/2011]]<br />
* Dia [[01/07/2011]]<br />
* Dia [[04/07/2011]]<br />
* Dia [[05/07/2011]]<br />
* Dia [[06/07/2011]]<br />
* Dia [[07/07/2011]]<br />
* Dia [[08/07/2011]]<br />
* Dia [[11/07/2011]]<br />
* Dia [[12/07/2011]]<br />
<br />
<br />
----<br />
<br />
== '''INTEGRANTES TELETEC''' ==<br />
<nowiki>.</nowiki><br />
* '''Daniel Estefano'''; estefano.daniel@gmail.com <br />
* '''Denis Teixeira'''; denisteixeira3@gmail.com <br />
* '''Leonardo Oliveira P.'''; leonardo-op@live.com <br />
* '''Odair de Moraes'''; <br />
* '''Robson de Carvalho'''; rob_carvalho12@hotmail.com<br />
* '''Vagner Cordeiro.''' cordeirotelecom@gmail.com<br />
<br />
<nowiki>.</nowiki><br />
----<br />
<br />
'''Dia 13/06/2011'''<br />
<br />
# Instalação do Sistema Operacional:Ubuntu-Server;<br />
# Definido Sistema de Arquivo, Dividido em 3 Partições: ''1 Partição Primátia, 1 Partição Secundária e uma Partição para Swap;'' <br />
# Definido nome do Domínio: teletec.sj.ifsc.edu.br;<br />
# Criado um Usuário: Teletec;<br />
# Acesso via SSH ao Servidor Teletec.<br />
<br />
<br />
----<br />
<br />
'''Dia 14/06/2011'''<br />
<br />
<nowiki>.</nowiki><br />
# Saul repassou informações sobre o Cabeamento Estruturado.<br />
<nowiki>.</nowiki><br />
----<br />
<br />
'''Dia 15/06/2011'''<br />
<br />
*'''Gerencia de Redes: Apache, Postfix e DNS:''' <br />
<nowiki>.</nowiki><br />
Daniel, Denis, Robson, Leonardo.<br />
<nowiki>.</nowiki><br />
<br />
'''Configurações:''' <br />
<br />
- Edição do Arquivo para IP Estático: '''/etc/network/interfaces''' <br />
<br />
- Edição do Arquivo do servidor DNS '''/etc/bind/named.conf''' <br />
<br />
<nowiki>.</nowiki><br />
<br />
*'''Instalação de Equipamento de Redes (Modem, Switch e Roteadores)''': <br />
<nowiki>.</nowiki><br />
Vagner (roteador Cisco), Odair (roteador Digitel).<br />
Os dois Membros verificaram estrutura física dos Equipamentos que vão se Interligar e suas respectivas configurações.<br />
<br />
'''Configurações:''' <br />
<br />
- Configuração dos Dois Roteadores Utilizando a ferramenta "Minicon" (Se fosse Windows seria Hyperterminal)<br />
- Configuração dos dispositivos: Serial e Ethernet<br />
- Configuração como Protocolo PPP</div>Vagner.chttps://wiki.sj.ifsc.edu.br/index.php?title=Projeto_Integrador_-_2011.1_-_Teletec&diff=34490Projeto Integrador - 2011.1 - Teletec2011-06-26T17:57:16Z<p>Vagner.c: /* INTEGRANTES TELETEC */</p>
<hr />
<div>== * '''Equipe 2 : TELETEC''' ==<br />
<br />
* Dia [[13/06/2011]]<br />
* Dia [[14/06/2011]]<br />
* Dia [[15/06/2011]]<br />
* Dia [[16/06/2011]]<br />
* Dia [[17/06/2011]]<br />
* Dia [[20/06/2011]]<br />
* Dia [[21/06/2011]]<br />
* Dia [[22/06/2011]]<br />
* Dia [[23/06/2011]]<br />
* Dia [[24/06/2011]]<br />
* Dia [[26/06/2011]]<br />
* Dia [[27/06/2011]]<br />
* Dia [[28/06/2011]]<br />
* Dia [[29/06/2011]]<br />
* Dia [[30/06/2011]]<br />
* Dia [[01/07/2011]]<br />
* Dia [[04/07/2011]]<br />
* Dia [[05/07/2011]]<br />
* Dia [[06/07/2011]]<br />
* Dia [[07/07/2011]]<br />
* Dia [[08/07/2011]]<br />
* Dia [[11/07/2011]]<br />
* Dia [[12/07/2011]]<br />
<br />
<br />
----<br />
<br />
== '''INTEGRANTES TELETEC''' ==<br />
<nowiki>.</nowiki><br />
<br />
* '''Daniel Estefano'''; estefano.daniel@gmail.com <br />
* '''Denis Teixeira'''; denisteixeira3@gmail.com <br />
* '''Leonardo Oliveira P.'''; leonardo-op@live.com <br />
* '''Odair de Moraes'''; <br />
* '''Robson de Carvalho'''; rob_carvalho12@hotmail.com<br />
* '''Vagner Cordeiro.''' cordeirotelecom@gmail.com<br />
<br />
<nowiki>.</nowiki><br />
----<br />
<br />
'''Dia 13/06/2011'''<br />
<br />
a) Instalação do Sistema Operacional:Ubuntu-Server;<br />
b) Definido Sistema de Arquivo, Dividido em 3 Partições: 1 Partição Primátia, 1 Partição Secundária e uma Partição para Swap; <br />
c) Definido nome do Domínio: teletec.sj.ifsc.edu.br;<br />
d) Criado um Usuário: Teletec;<br />
e) Acesso via SSH ao Servidor Teletec.<br />
<br />
<br />
----<br />
<br />
'''Dia 14/06/2011'''<br />
<br />
a) Saul deu informações sobre o Cabeamento Estruturado.<br />
<br />
----<br />
<br />
'''Dia 15/06/2011'''<br />
<br />
a) Definição das Tarefas:<br />
<br />
* Gerencia de Redes: Apache, Postfix e DNS: <br />
<br />
* Instalação de Equipamentos de Rede: <br />
Subdivisão: Vagner ( Configuração Roteador Cisco) , Odair ( Configuração do Roteador "Digitel" ).<br />
Os dois Membros verificaram estrutura física dos Equipamentos que vão se Interligar.<br />
<br />
b.1) ''Itens Trabalhados GER:''<br />
<br />
- Configurações <br />
<br />
b.2) ''Itens Trabalhados IER:''<br />
<br />
- Configuração dos Dois Roteadores Utilizando a ferramenta "Minicon" ( Se fosse Windows seria Hyperterminal )<br />
- Configuração dos dispositivos: Serial e Ethernet<br />
- Configuração como Protocolo PPP<br />
<br />
c) Configuração da Rede:<br />
<br />
Edição do Arquivo '''/etc/network/interfaces;'''''Texto em itálico'' IP Estático<br />
Edição do Arquivo '''/etc/bind/named.conf'''''Texto em itálico''; - Servidor DNS</div>Vagner.chttps://wiki.sj.ifsc.edu.br/index.php?title=Projeto_Integrador_-_2011.1_-_Teletec&diff=34489Projeto Integrador - 2011.1 - Teletec2011-06-26T17:56:11Z<p>Vagner.c: /* INTEGRANTES TELETEC */</p>
<hr />
<div>== * '''Equipe 2 : TELETEC''' ==<br />
<br />
* Dia [[13/06/2011]]<br />
* Dia [[14/06/2011]]<br />
* Dia [[15/06/2011]]<br />
* Dia [[16/06/2011]]<br />
* Dia [[17/06/2011]]<br />
* Dia [[20/06/2011]]<br />
* Dia [[21/06/2011]]<br />
* Dia [[22/06/2011]]<br />
* Dia [[23/06/2011]]<br />
* Dia [[24/06/2011]]<br />
* Dia [[26/06/2011]]<br />
* Dia [[27/06/2011]]<br />
* Dia [[28/06/2011]]<br />
* Dia [[29/06/2011]]<br />
* Dia [[30/06/2011]]<br />
* Dia [[01/07/2011]]<br />
* Dia [[04/07/2011]]<br />
* Dia [[05/07/2011]]<br />
* Dia [[06/07/2011]]<br />
* Dia [[07/07/2011]]<br />
* Dia [[08/07/2011]]<br />
* Dia [[11/07/2011]]<br />
* Dia [[12/07/2011]]<br />
<br />
<br />
----<br />
<br />
== '''INTEGRANTES TELETEC''' ==<br />
<br />
<br />
* '''Daniel Estefano'''; estefano.daniel@gmail.com <br />
* '''Denis Teixeira'''; denisteixeira3@gmail.com <br />
* '''Leonardo Oliveira P.'''; leonardo-op@live.com <br />
* '''Odair de Moraes'''; <br />
* '''Robson de Carvalho'''; rob_carvalho12@hotmail.com<br />
* '''Vagner Cordeiro.''' cordeirotelecom@gmail.com<br />
<br />
<nowiki>Inserir texto não-formatado aqui</nowiki><br />
----<br />
<br />
'''Dia 13/06/2011'''<br />
<br />
a) Instalação do Sistema Operacional:Ubuntu-Server;<br />
b) Definido Sistema de Arquivo, Dividido em 3 Partições: 1 Partição Primátia, 1 Partição Secundária e uma Partição para Swap; <br />
c) Definido nome do Domínio: teletec.sj.ifsc.edu.br;<br />
d) Criado um Usuário: Teletec;<br />
e) Acesso via SSH ao Servidor Teletec.<br />
<br />
<br />
----<br />
<br />
'''Dia 14/06/2011'''<br />
<br />
a) Saul deu informações sobre o Cabeamento Estruturado.<br />
<br />
----<br />
<br />
'''Dia 15/06/2011'''<br />
<br />
a) Definição das Tarefas:<br />
<br />
* Gerencia de Redes: Apache, Postfix e DNS: <br />
<br />
* Instalação de Equipamentos de Rede: <br />
Subdivisão: Vagner ( Configuração Roteador Cisco) , Odair ( Configuração do Roteador "Digitel" ).<br />
Os dois Membros verificaram estrutura física dos Equipamentos que vão se Interligar.<br />
<br />
b.1) ''Itens Trabalhados GER:''<br />
<br />
- Configurações <br />
<br />
b.2) ''Itens Trabalhados IER:''<br />
<br />
- Configuração dos Dois Roteadores Utilizando a ferramenta "Minicon" ( Se fosse Windows seria Hyperterminal )<br />
- Configuração dos dispositivos: Serial e Ethernet<br />
- Configuração como Protocolo PPP<br />
<br />
c) Configuração da Rede:<br />
<br />
Edição do Arquivo '''/etc/network/interfaces;'''''Texto em itálico'' IP Estático<br />
Edição do Arquivo '''/etc/bind/named.conf'''''Texto em itálico''; - Servidor DNS</div>Vagner.chttps://wiki.sj.ifsc.edu.br/index.php?title=Projeto_Integrador_-_2011.1_-_Teletec&diff=34488Projeto Integrador - 2011.1 - Teletec2011-06-26T17:55:37Z<p>Vagner.c: /* INTEGRANTES TELETEC */</p>
<hr />
<div>== * '''Equipe 2 : TELETEC''' ==<br />
<br />
* Dia [[13/06/2011]]<br />
* Dia [[14/06/2011]]<br />
* Dia [[15/06/2011]]<br />
* Dia [[16/06/2011]]<br />
* Dia [[17/06/2011]]<br />
* Dia [[20/06/2011]]<br />
* Dia [[21/06/2011]]<br />
* Dia [[22/06/2011]]<br />
* Dia [[23/06/2011]]<br />
* Dia [[24/06/2011]]<br />
* Dia [[26/06/2011]]<br />
* Dia [[27/06/2011]]<br />
* Dia [[28/06/2011]]<br />
* Dia [[29/06/2011]]<br />
* Dia [[30/06/2011]]<br />
* Dia [[01/07/2011]]<br />
* Dia [[04/07/2011]]<br />
* Dia [[05/07/2011]]<br />
* Dia [[06/07/2011]]<br />
* Dia [[07/07/2011]]<br />
* Dia [[08/07/2011]]<br />
* Dia [[11/07/2011]]<br />
* Dia [[12/07/2011]]<br />
<br />
<br />
----<br />
<br />
== '''INTEGRANTES TELETEC''' ==<br />
<br />
<br />
* '''Daniel Estefano'''; estefano.daniel@gmail.com <br />
* '''Denis Teixeira'''; denisteixeira3@gmail.com <br />
* '''Leonardo Oliveira P.'''; leonardo-op@live.com <br />
* '''Odair de Moraes'''; <br />
* '''Robson de Carvalho'''; rob_carvalho12@hotmail.com<br />
* '''Vagner Cordeiro.''' cordeirotelecom@gmail.com<br />
<br />
----<br />
<br />
'''Dia 13/06/2011'''<br />
<br />
a) Instalação do Sistema Operacional:Ubuntu-Server;<br />
b) Definido Sistema de Arquivo, Dividido em 3 Partições: 1 Partição Primátia, 1 Partição Secundária e uma Partição para Swap; <br />
c) Definido nome do Domínio: teletec.sj.ifsc.edu.br;<br />
d) Criado um Usuário: Teletec;<br />
e) Acesso via SSH ao Servidor Teletec.<br />
<br />
<br />
----<br />
<br />
'''Dia 14/06/2011'''<br />
<br />
a) Saul deu informações sobre o Cabeamento Estruturado.<br />
<br />
----<br />
<br />
'''Dia 15/06/2011'''<br />
<br />
a) Definição das Tarefas:<br />
<br />
* Gerencia de Redes: Apache, Postfix e DNS: <br />
<br />
* Instalação de Equipamentos de Rede: <br />
Subdivisão: Vagner ( Configuração Roteador Cisco) , Odair ( Configuração do Roteador "Digitel" ).<br />
Os dois Membros verificaram estrutura física dos Equipamentos que vão se Interligar.<br />
<br />
b.1) ''Itens Trabalhados GER:''<br />
<br />
- Configurações <br />
<br />
b.2) ''Itens Trabalhados IER:''<br />
<br />
- Configuração dos Dois Roteadores Utilizando a ferramenta "Minicon" ( Se fosse Windows seria Hyperterminal )<br />
- Configuração dos dispositivos: Serial e Ethernet<br />
- Configuração como Protocolo PPP<br />
<br />
c) Configuração da Rede:<br />
<br />
Edição do Arquivo '''/etc/network/interfaces;'''''Texto em itálico'' IP Estático<br />
Edição do Arquivo '''/etc/bind/named.conf'''''Texto em itálico''; - Servidor DNS</div>Vagner.chttps://wiki.sj.ifsc.edu.br/index.php?title=Projeto_Integrador_-_2011.1_-_Teletec&diff=34487Projeto Integrador - 2011.1 - Teletec2011-06-26T17:45:36Z<p>Vagner.c: /* INTEGRANTES TELETEC */</p>
<hr />
<div>== * '''Equipe 2 : TELETEC''' ==<br />
<br />
* Dia [[13/06/2011]]<br />
* Dia [[14/06/2011]]<br />
* Dia [[15/06/2011]]<br />
* Dia [[16/06/2011]]<br />
* Dia [[17/06/2011]]<br />
* Dia [[20/06/2011]]<br />
* Dia [[21/06/2011]]<br />
* Dia [[22/06/2011]]<br />
* Dia [[23/06/2011]]<br />
* Dia [[24/06/2011]]<br />
* Dia [[26/06/2011]]<br />
* Dia [[27/06/2011]]<br />
* Dia [[28/06/2011]]<br />
* Dia [[29/06/2011]]<br />
* Dia [[30/06/2011]]<br />
* Dia [[01/07/2011]]<br />
* Dia [[04/07/2011]]<br />
* Dia [[05/07/2011]]<br />
* Dia [[06/07/2011]]<br />
* Dia [[07/07/2011]]<br />
* Dia [[08/07/2011]]<br />
* Dia [[11/07/2011]]<br />
* Dia [[12/07/2011]]<br />
<br />
<br />
----<br />
<br />
== '''INTEGRANTES TELETEC''' ==<br />
<br />
<br />
* '''Daniel Estefano'''; <br />
* '''Denis Teixeira''';<br />
* '''Leonardo Oliveira P.'''; <br />
* '''Odair de Moraes'''; <br />
* '''Robson de Carvalho'''; <br />
* '''Vagner Cordeiro.'''<br />
<br />
----<br />
<br />
'''1º Dia - 13/06/2011'''<br />
<br />
a) Instalação do Sistema Operacional:Ubuntu-Server;<br />
b) Definido Sistema de Arquivo, Dividido em 3 Partições: 1 Partição Primátia, 1 Partição Secundária e uma Partição para Swap; <br />
c) Definido nome do Domínio: teletec.sj.ifsc.edu.br;<br />
d) Criado um Usuário: Teletec;<br />
e) Acesso via SSH ao Servidor Teletec.<br />
<br />
<br />
----<br />
<br />
'''2º Dia - 14/06/2011'''<br />
<br />
a) Saul deu informações sobre o Cabeamento Estruturado.<br />
<br />
----<br />
<br />
'''3º Dia - 15/06/2011'''<br />
<br />
a) Definição das Tarefas:<br />
<br />
* Gerencia de Redes: Apache, Postfix e DNS: <br />
<br />
* Instalação de Equipamentos de Rede: <br />
Subdivisão: Vagner ( Configuração Roteador Cisco) , Odair ( Configuração do Roteador "Digitel" ).<br />
Os dois Membros verificaram estrutura física dos Equipamentos que vão se Interligar.<br />
<br />
b.1) ''Itens Trabalhados GER:''<br />
<br />
- Configurações <br />
<br />
b.2) ''Itens Trabalhados IER:''<br />
<br />
- Configuração dos Dois Roteadores Utilizando a ferramenta "Minicon" ( Se fosse Windows seria Hyperterminal )<br />
- Configuração dos dispositivos: Serial e Ethernet<br />
- Configuração como Protocolo PPP<br />
<br />
c) Configuração da Rede:<br />
<br />
Edição do Arquivo '''/etc/network/interfaces;'''''Texto em itálico'' IP Estático<br />
Edição do Arquivo '''/etc/bind/named.conf'''''Texto em itálico''; - Servidor DNS</div>Vagner.chttps://wiki.sj.ifsc.edu.br/index.php?title=Projeto_Integrador_-_2011.1_-_Teletec&diff=34486Projeto Integrador - 2011.1 - Teletec2011-06-26T17:44:16Z<p>Vagner.c: /* * Equipe 2 : TELETEC */</p>
<hr />
<div>== * '''Equipe 2 : TELETEC''' ==<br />
<br />
* Dia [[13/06/2011]]<br />
* Dia [[14/06/2011]]<br />
* Dia [[15/06/2011]]<br />
* Dia [[16/06/2011]]<br />
* Dia [[17/06/2011]]<br />
* Dia [[20/06/2011]]<br />
* Dia [[21/06/2011]]<br />
* Dia [[22/06/2011]]<br />
* Dia [[23/06/2011]]<br />
* Dia [[24/06/2011]]<br />
* Dia [[26/06/2011]]<br />
* Dia [[27/06/2011]]<br />
* Dia [[28/06/2011]]<br />
* Dia [[29/06/2011]]<br />
* Dia [[30/06/2011]]<br />
* Dia [[01/07/2011]]<br />
* Dia [[04/07/2011]]<br />
* Dia [[05/07/2011]]<br />
* Dia [[06/07/2011]]<br />
* Dia [[07/07/2011]]<br />
* Dia [[08/07/2011]]<br />
* Dia [[11/07/2011]]<br />
* Dia [[12/07/2011]]<br />
<br />
<br />
----<br />
<br />
== '''INTEGRANTES TELETEC''' ==<br />
<br />
<br />
* Daniel Estefano <br />
* Denis Teixeira <br />
* Leonardo Oliveira P. <br />
* Odair de Moraes <br />
* Robson de Carvalho <br />
* Vagner Cordeiro<br />
<br />
----<br />
<br />
'''1º Dia - 13/06/2011'''<br />
<br />
a) Instalação do Sistema Operacional:Ubuntu-Server;<br />
b) Definido Sistema de Arquivo, Dividido em 3 Partições: 1 Partição Primátia, 1 Partição Secundária e uma Partição para Swap; <br />
c) Definido nome do Domínio: teletec.sj.ifsc.edu.br;<br />
d) Criado um Usuário: Teletec;<br />
e) Acesso via SSH ao Servidor Teletec.<br />
<br />
<br />
----<br />
<br />
'''2º Dia - 14/06/2011'''<br />
<br />
a) Saul deu informações sobre o Cabeamento Estruturado.<br />
<br />
----<br />
<br />
'''3º Dia - 15/06/2011'''<br />
<br />
a) Definição das Tarefas:<br />
<br />
* Gerencia de Redes: Apache, Postfix e DNS: <br />
<br />
* Instalação de Equipamentos de Rede: <br />
Subdivisão: Vagner ( Configuração Roteador Cisco) , Odair ( Configuração do Roteador "Digitel" ).<br />
Os dois Membros verificaram estrutura física dos Equipamentos que vão se Interligar.<br />
<br />
b.1) ''Itens Trabalhados GER:''<br />
<br />
- Configurações <br />
<br />
b.2) ''Itens Trabalhados IER:''<br />
<br />
- Configuração dos Dois Roteadores Utilizando a ferramenta "Minicon" ( Se fosse Windows seria Hyperterminal )<br />
- Configuração dos dispositivos: Serial e Ethernet<br />
- Configuração como Protocolo PPP<br />
<br />
c) Configuração da Rede:<br />
<br />
Edição do Arquivo '''/etc/network/interfaces;'''''Texto em itálico'' IP Estático<br />
Edição do Arquivo '''/etc/bind/named.conf'''''Texto em itálico''; - Servidor DNS</div>Vagner.chttps://wiki.sj.ifsc.edu.br/index.php?title=Projeto_Integrador_-_2011.1_-_Teletec&diff=34485Projeto Integrador - 2011.1 - Teletec2011-06-26T17:37:52Z<p>Vagner.c: /* * Equipe 2 : TELETEC */</p>
<hr />
<div>== * '''Equipe 2 : TELETEC''' ==<br />
<br />
* 1º Dia [[13/06/2011]].<br />
* 2º Dia [[14/06/2011]].<br />
* 3º Dia [[15/06/2011]].<br />
* 4º Dia [[16/06/2011]].<br />
<br />
----<br />
<br />
== '''INTEGRANTES TELETEC''' ==<br />
<br />
<br />
* Daniel Estefano <br />
* Denis Teixeira <br />
* Leonardo Oliveira P. <br />
* Odair de Moraes <br />
* Robson de Carvalho <br />
* Vagner Cordeiro<br />
<br />
----<br />
<br />
'''1º Dia - 13/06/2011'''<br />
<br />
a) Instalação do Sistema Operacional:Ubuntu-Server;<br />
b) Definido Sistema de Arquivo, Dividido em 3 Partições: 1 Partição Primátia, 1 Partição Secundária e uma Partição para Swap; <br />
c) Definido nome do Domínio: teletec.sj.ifsc.edu.br;<br />
d) Criado um Usuário: Teletec;<br />
e) Acesso via SSH ao Servidor Teletec.<br />
<br />
<br />
----<br />
<br />
'''2º Dia - 14/06/2011'''<br />
<br />
a) Saul deu informações sobre o Cabeamento Estruturado.<br />
<br />
----<br />
<br />
'''3º Dia - 15/06/2011'''<br />
<br />
a) Definição das Tarefas:<br />
<br />
* Gerencia de Redes: Apache, Postfix e DNS: <br />
<br />
* Instalação de Equipamentos de Rede: <br />
Subdivisão: Vagner ( Configuração Roteador Cisco) , Odair ( Configuração do Roteador "Digitel" ).<br />
Os dois Membros verificaram estrutura física dos Equipamentos que vão se Interligar.<br />
<br />
b.1) ''Itens Trabalhados GER:''<br />
<br />
- Configurações <br />
<br />
b.2) ''Itens Trabalhados IER:''<br />
<br />
- Configuração dos Dois Roteadores Utilizando a ferramenta "Minicon" ( Se fosse Windows seria Hyperterminal )<br />
- Configuração dos dispositivos: Serial e Ethernet<br />
- Configuração como Protocolo PPP<br />
<br />
c) Configuração da Rede:<br />
<br />
Edição do Arquivo '''/etc/network/interfaces;'''''Texto em itálico'' IP Estático<br />
Edição do Arquivo '''/etc/bind/named.conf'''''Texto em itálico''; - Servidor DNS</div>Vagner.chttps://wiki.sj.ifsc.edu.br/index.php?title=Projeto_Integrador_-_2011.1_-_Teletec&diff=34484Projeto Integrador - 2011.1 - Teletec2011-06-26T17:26:13Z<p>Vagner.c: </p>
<hr />
<div>== * '''Equipe 2 : TELETEC''' ==<br />
<br />
o 1º Dia 13/06/2011<br />
o 2º Dia 14/06/2011<br />
o 3º Dia 15/06/2011<br />
o 4º Dia 16/06/2011<br />
<br />
----<br />
<br />
== '''INTEGRANTES TELETEC''' ==<br />
<br />
<br />
* Daniel Estefano <br />
* Denis Teixeira <br />
* Leonardo Oliveira P. <br />
* Odair de Moraes <br />
* Robson de Carvalho <br />
* Vagner Cordeiro<br />
<br />
----<br />
<br />
'''1º Dia - 13/06/2011'''<br />
<br />
a) Instalação do Sistema Operacional:Ubuntu-Server;<br />
b) Definido Sistema de Arquivo, Dividido em 3 Partições: 1 Partição Primátia, 1 Partição Secundária e uma Partição para Swap; <br />
c) Definido nome do Domínio: teletec.sj.ifsc.edu.br;<br />
d) Criado um Usuário: Teletec;<br />
e) Acesso via SSH ao Servidor Teletec.<br />
<br />
<br />
----<br />
<br />
'''2º Dia - 14/06/2011'''<br />
<br />
a) Saul deu informações sobre o Cabeamento Estruturado.<br />
<br />
----<br />
<br />
'''3º Dia - 15/06/2011'''<br />
<br />
a) Definição das Tarefas:<br />
<br />
* Gerencia de Redes: Apache, Postfix e DNS: <br />
<br />
* Instalação de Equipamentos de Rede: <br />
Subdivisão: Vagner ( Configuração Roteador Cisco) , Odair ( Configuração do Roteador "Digitel" ).<br />
Os dois Membros verificaram estrutura física dos Equipamentos que vão se Interligar.<br />
<br />
b.1) ''Itens Trabalhados GER:''<br />
<br />
- Configurações <br />
<br />
b.2) ''Itens Trabalhados IER:''<br />
<br />
- Configuração dos Dois Roteadores Utilizando a ferramenta "Minicon" ( Se fosse Windows seria Hyperterminal )<br />
- Configuração dos dispositivos: Serial e Ethernet<br />
- Configuração como Protocolo PPP<br />
<br />
c) Configuração da Rede:<br />
<br />
Edição do Arquivo '''/etc/network/interfaces;'''''Texto em itálico'' IP Estático<br />
Edição do Arquivo '''/etc/bind/named.conf'''''Texto em itálico''; - Servidor DNS</div>Vagner.c