mar 262018
 

I have wrote a post regarding on how to access ftp host using curl. And this time, let us look at how to mount the ftp host to a local directory on top of FUSE.

FUSE (Filesystem in userland) is a userland build on top of virtual filesystem, it allows you to implement functional filesystem in userspace application. Robson Braga Araujo wrote an app based on fuse and curl that allows you to mount a ftp host to a local directory, curlftpfs.

What is the benefit of mounting ftp host to a local directory?
The most obvious benefit is easing file management in ftp host. After mounting ftp host to a local dir, you can simply copy, move and delete files using command such as cp, mv, rm. You can easily transfer files from your localhost to ftp host and vice versa.

Continue reading »

Criando um servidor de dns local com o bind no debian

 Clusterweb, ClusterWeb, Leitura Recomendada, Linux, Profissional de TI, Redes, Segurança, Ubuntu  Comentários desativados em Criando um servidor de dns local com o bind no debian
nov 212014
 

Mas aí você se pergunta: O que é DNS?

O DNS é o banco de dados distribuído de traduções de nome para endereço IP. Tecnicamente não é necessário usar nomes de host e de domínio, como www.meudominio.com.br, porque é o endereço IP que o computador usa para estabelecer comunicação.

O DNS foi criado para permitir o uso de nomes de domínios mais convenientes. Por exemplo, quando o usuário digita um nome DNS como parte de uma URL em um navegador, a parte do nome é enviada para o servidor DNS para que seja resolvido em um endereço IP. Uma vez encontrado o endereço, ele é usado para se reescrever a URL e obter diretamente a página web.

Um dos servidores DNS mais conhecido é o Bind. Nesse exemplo estaremos usando o Bind9, que é uma versão mais atualizada e mais segura deste software. Continue reading »

Vamos aprender como fazer um DNS local de maneira simples.

 Clusterweb, Linux, Redes  Comentários desativados em Vamos aprender como fazer um DNS local de maneira simples.
nov 302012
 

Amigos,

Saudações Pinguianas a todos!
Neste artigo, vamos aprender como fazer um DNS local de maneira simples, rápida e prática.

Mas aí você se pergunta: O que é DNS?

O DNS é o banco de dados distribuído de traduções de nome para endereço IP. Tecnicamente não é necessário usar nomes de host e de domínio, como www.meudominio.com.br, porque é o endereço IP que o computador usa para estabelecer comunicação.

O DNS foi criado para permitir o uso de nomes de domínios mais convenientes. Por exemplo, quando o usuário digita um nome DNS como parte de uma URL em um navegador, a parte do nome é enviada para o servidor DNS para que seja resolvido em um endereço IP. Uma vez encontrado o endereço, ele é usado para se reescrever a URL e obter diretamente a página web.

Um dos servidores DNS mais conhecido é o Bind. Nesse exemplo estaremos usando o Bind9, que é uma versão mais atualizada e mais segura deste software.

O primeiro passo é instalar o Bind:

# apt-get install bind9

Agora com o Bind instalado, vamos conhecer e configurar os arquivos usados por ele:

Arquivos de configuração DNS:

Edite seu resolv.conf para ele fazer a busca do DNS local:

# vim /etc/resolv.conf

Este arquivo lista os endereços IP dos servidores de nomes:

1
2
nameserver 127.0.0.1
nameserver 192.168.254.1

Agora vamos configurar os arquivos do Bind:

# vim /etc/bind/named.conf.local

Este arquivo é onde você indicará em que caminho estarão suas zonas. Edite-o e inclua estas linhas:

1
2
3
4
5
6
7
8
9
10
11
12
## minhas zonas ##
zone "meudominio.com.br"{
type master;
file "db.meudominio.com.br";
};
## reverso da rede 192.168.254.0
zone "254.168.192.in-addr.arpa"{
type master;
file "db.254.168.192";
};
## fim das minhas zonas ##

Agora criaremos os arquivos db.meudominio.com.br e db.254.168.192:

Dentro do diretório /etc/bind existe um arquivo db.local que poderemos copiar para fazermos nosso db.meudominio.com.br. Como root execute:

# cd /etc/bind
# touch /var/cache/bind/db.meudominio.com.br
# cat db.local > /var/cache/bind/db.meudominio.com.br

Agora edite o seu arquivo /var/cache/bind/db.meudominio.com.br para ficar assim:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
;
; BIND zone file for home.lan
;
$TTL    3D
@       IN      SOA     ns.meudominio.com.br.    root.meudominio.com.br. (
                        01              ; serial
                        8H              ; refresh
                        2H              ; retry
                        4W              ; expire
                        1D )            ; minimum
;
                NS      ns              ; Inet address of name server
                MX      10 mail         ; Primary mail exchanger
; Necessario para funfar
ns              IN      A       192.168.254.1
;
; Hosts Reais
www             IN      A       192.168.254.1
ftp             IN      A       192.168.254.1
smtp            IN      A       192.168.254.1
imap            IN      A       192.168.254.1
;
gateway         CNAME   router
gw      CNAME   router

Ainda como root, crie o db reverso de sua rede:

# touch /var/cache/bind/db.254.168.192

Edite o arquivo para que fique assim:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
;
; BIND zone file for 192.168.1.xxx
;
$TTL    3D
@       IN      SOA     ns.home.lan.    root.home.lan. (
                        2010111101      ; serial
                        8H              ; refresh
                        2H              ; retry
                        4W              ; expire
                        1D )            ; minimum
;
                NS      ns.meudominio.com.br.    ; Nameserver address
100             PTR     server.meudominio.com.br.
100             PTR     ns.meudominio.com.br.
100             PTR     mail.meudominio.com.br.
101             PTR     virtual.meudominio.com.br.
1               PTR     router.meudominio.com.br.

Agora vamos editar o arquivo named.conf.options

# vim /etc/bind/named.conf.options

Deixe-o assim:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
options {
        directory "/var/cache/bind";
        // If there is a firewall between you and nameservers you want
        // to talk to, you may need to fix the firewall to allow multiple
        // ports to talk.  See http://www.kb.cert.org/vuls/id/800113
        // If your ISP provided one or more IP addresses for stable
        // nameservers, you probably want to use them as forwarders.
        // Uncomment the following block, and insert the addresses replacing
        // the all-0's placeholder.
        // Security options
        listen-on port 53 { 127.0.0.1; 192.168.254.1; };
        allow-query { 127.0.0.1; 192.168.254.0/24; };
        allow-recursion { 127.0.0.1; 192.168.254.0/24; };
        allow-transfer { none; };
        auth-nxdomain no;    # conform to RFC1035
        // listen-on-v6 { any; };
};

Feito isso reinicie seu bind:

# /etc/init.d/bind9 restart

Agora já podemos pingar internet.meudominio.com.br e mail.meudominio.com.br:

# ping internet.meudominio.com.br
PING internet.meudominio.com.br (192.168.254.1) 56(84) bytes of data.
64 bytes from 192.168.254.1: icmp_seq=1 ttl=64 time=4.86 ms
64 bytes from 192.168.254.1: icmp_seq=2 ttl=64 time=0.228 ms
64 bytes from 192.168.254.1: icmp_seq=3 ttl=64 time=0.229 ms

Utilidades e checando configurações DNS:

Um servidor DNS interno é muito útil para os administradores de redes, por exemplo: se você tem um servidor proxy autenticado, nos navegadores dos clientes podemos usar um endereço de proxy como internet.empresa.com.br, assim se um dia necessitar alterar o ip de seu proxy, só mude as configurações de DNS no seu db.empresa.com.br.

Podemos usar alguns comandos para checar as configurações de seu dns.

named-checkconf (verifica as configurações do Bind)

# named-checkconf

Se não retornar nada é que está ok.

named-checkzone (verifica suas zonas):

# named-checkzone zonename db.meudominio.com.br
zone zonename/IN: loaded serial 2
OK

Servidor DNS pronto e funcionando! Você já pode dar nomes a seus IPs, facilite seu trabalho.

Espero ter colaborado!