|
|||||||
| Wiki | Classificados | Galeria | Reviews | Jogos | Comunidades | RSS Feeds | FAQ | Termos de Uso | Sobre |
| Cadastre-se | Fotos | Blogs | Lista de Membros | Calendário | Pesquisar | Mensagens de Hoje | Marcar Fóruns Como Lidos |
FerramentasPublicidade |
From UnderLinux Wiki
[editar] OpenBSD como servidor de InternetEsse artigo tem por objetivo ensinar ao leitor como configurar um servidor de internet, rodando Bind ,qmail, apache(PHP),e o packetfilter, no OpenBSD. [editar] BindNesse nosso WebServer, utilizaremos o Bind 4.9.8, que vem como padrão no OpenBSD 3.1. Nosso domínio "exemplo" será o "open.opensolutions.com.br", com ip (fictício) 200.259.111.1. Utilizaremos o diretório /var/named/namedb como base dos arquivos, e o nosso arquivo principal de configuração será o /var/named/named.boot. Por padrão, o named no OpenBSD ja vem com uma configuração bem segura, rodando em um anbiente "chroot" (/var/named), e sendo executado pelo usuário named. Abaixo segue os arquivos de configuração do nosso domínio. Onde tiver ";"(ponto e vírgula) é um comentário. Cada arquivo começa com um comentário mostrando a sua localização no sistema e termina com um "EOF arquivo". Qualquer dúvida consulte nossos textos sobre DNS.
directory /namedb ;diretório base cache . named.ca primary 0.0.127.IN-ADDR.ARPA named.local primary open.opensolutions.com.br open.db primary 1.111.259.200.IN-ADDR.ARPA 200.259.111.1.db
@ IN SOA localhost. root.localhost. (
1 ; Serial
3600 ; Refresh
900 ; Retry
3600000 ; Expire
3600 ) ; Minimum
IN NS localhost.
1 IN PTR localhost.
@ IN SOA open.opensolutions.com.br. daniel.underlinux.com.br. (
1 ; serial
3600 ; refresh
900 ; retry
3600000 ; expire
3600 ) ; minimum
;NameServer
@ IN NS open.opensolutions.com.br.
;SubDomains
@ IN A 200.259.111.1
ns IN A 200.259.111.1
www IN A 200.259.111.1
@ IN MX 5 open.opensolutions.com.br.
@ IN SOA open.opensolutions.com.br. daniel.underlinux.com.br. (
1 ; serial
3600 ; refresh
900 ; retry
3600000 ; expire
3600 ) ; minimum
@ IN PTR open.opensolutions.com.br.
@ IN NS open.opensolutions.com.br.
O arquivo named.ca, é um arquivo a parte, e pode ser obtido, renomeando-se o /var/named/namedb/root.cache, ou então baixando-o de ftp.internic.net. mv /var/named/namedb/root.cache /var/named/namedb/named.ca Feito isso, é só iniciar o named: ndc start [editar] qmailAgora iremos falar do qmail. O OpenBSD vem com o sendmail como MTA padrão, mas por motivos de segurança e de facilidade, vamos instalar e configurar o qmail. Para começar, devemos criar o diretório que irá ser usado pelo qmail: mkdir /var/qmail Criar os usuários e grupos utilizados por ele, baixar o qmail e então instalá-lo: groupadd nofiles groupadd qmail useradd -g nofiles -d /var/qmail/alias -m alias useradd -g nofiles -d /var/qmail qmaild useradd -g nofiles -d /var/qmail qmailp useradd -g nofiles -d /var/qmail qmaill useradd -g qmail -d /var/qmail qmailq useradd -g qmail -d /var/qmail qmails useradd -g qmail -d /var/qmail qmailr wget http://cr.yp.to/software/qmail-1.03.tar.gz tar -zxvf qmail-1.03.tar.gz cd qmail-1.03 make setup check ./config-fast open.opensolutions.com.br (dominio da sua maquina) wget http://cr.yp.to/ucspi-tcp/ucspi-tcp-0.88.tar.gz tar -zxvf ucspi-tcp-0.88.tar.gz cd ucspi-tcp-0.88 make setup check wget http://cr.yp.to/checkpwd/checkpassword-0.90.tar.gz tar -zxvf checkpassword-0.90.tar.gz cd checkpassword-0.90 make make setup check Feito isso, devemos configurar alguns "alias" necessários para o qmail, "desabilitar" o sendmail" e então iniciar o qmail: cd ~alias touch .qmail-postmaster touch .qmail-mailer-daemon touch .qmail-root chmod 644 ~alias/* chmod 0 /usr/sbin/sendmail mv /usr/sbin/sendmail /usr/sbin/sendmail-old ln -s /var/qmail/bin/sendmail /usr/sbin/sendmail sh -cf '/var/qmail/boot/home &' /usr/local/bin/tcpserver -u (qmaild id) -g (qmaild gid) 0 25 /var/qmail/bin/qmail-smtpd 2>/dev/null& (na mesma linha) /usr/local/bin/tcpserver 0 110 /var/qmail/bin/qmail-popup open.opensolutions.com.br /bin/checkpassword /var/qmail/bin/qmail-pop3d Mailbox 2>/dev/null& (na mesma linha tudo) Pronto, espero que não tenha ficado muito chato. Mas basta seguir esses passos para funcionar corretamente. Para mais detalhes, veja www.qmail.org. Para iniciar o qmail durante o boot, veja a ultima parte. [editar] ApacheO Apache já vem pré-instalado no OpenBSD, bastando apenas algumas modificações para o seu funcionamento desejado. No nosso exemplo, queremos rodar ele com suporte a PHP, então devemos instalar o PHP: cd /usr/ports/www/php4 make make install /usr/local/sbin/php4-enable E depois adicionar as seguintes linhas no /var/www/conf/httpd.conf, para ele aceitar seus scripts PHP: LoadModule php4_module /usr/lib/apache/modules/libphp4.so DirectoryIndex index.php index.html index.wml index.php3 AddType application/x-httpd-php .php .php3 .phtml AddType application/x-httpd-php-source .phps E então reiniciar o apache: apachectl restart [editar] pfO OpenBSD ( a partir do 3.0) vem com o packetfilter (pf), que é um excelente filtro de pacotes, mas com uma configuração bem simples, toda dentro do arquivo "/etc/pf.conf" (nat.conf para nat). No nosso exemplo, usaremos a política de bloquear todo o acesso a nossa máquina, liberando apenas as portas usadas por nós (22,25,53,80 e 110). O acesso de saída será totalmente liberado. Nosso arquivo de configuração ficaria então desse modo: #echo >> /etc/pf.conf << EOF
#Arquivos comecados com "#" sao comentarios e nao serao lidos.
#"dc0" e a nossa interface de rede. Troque pela a da sua maquina.
#ver /etc/hostname.xxx (xxx = interface de rede)
scrub in all
pass in log quick on dc0 inet proto tcp from any to any port 22 flags S/SA
pass in quick on dc0 inet proto tcp from any to any port 25 flags S/SA
pass in quick on dc0 inet proto tcp from any to any port 80 flags S/SA
pass in quick on dc0 inet proto tcp from any to any port 110 flags S/SA
pass in quick on dc0 inet proto tcp from any to any port 53 flags S/SA
pass in quick on dc0 inet proto udp from any to any port 53 flags S/SA
block in on dc0 inet from {127.0.0.0/8, 192.168.0.0/16 } to any
block in on dc0 from any to any
pass out on dc0 from any to any keep state
#EOF
Bem, agora basta iniciar o pf: pfctl -R /etc/pf.conf pfctl -e [editar] Iniciando tudo durante o bootTodos os nossos serviços já foram iniciados, mas para automatizar esse processo durante o boot, é necessário de mais algumas configurações. Para iniciar o "qmail" durante o boot, devemos adicionar as seguintes linha no final do arquivo /etc/rc (antes de exit 0): echo "iniciando o qmail" sh -cf '/var/qmail/boot/home &' /usr/local/bin/tcpserver -u 1003 -g 1000 0 25 /var/qmail/bin/qmail-smtpd 2>/dev/null & /usr/local/bin/tcpserver 0 110 /var/qmail/bin/qmail-popup open.opensolutions.com.br /bin/checkpassword /var/qmail/bin/qmail-pop3d Mailbox 2>/dev/null& E para iniciar o named, o Apache e o pf, basta deixar as seguintes linhas no arquivo /etc/rc.conf na forma: named_flags="" httpd_flags="" pf=YES [editar] ConclusãoApos ter seguido todos esses passos, é só dar um logoff e deixar sua máquina trabalhando. E ó que ela trabalha... olha o Uptime do meu servidor (p100 com 16 de ram): uptime 6:36PM up 43 days, 9:50, 3 users, load averages: 0.58, 0.22, 0.14 Bem, deixando a "grannde" performance do meu p100 de lado, se tiver alguma duvida,sugestão ou crítica, mail me: Daniel B. Cid daniel@underlinux.com.br |