Você está na página 1de 14

Esta postagem foi republicada em http://www.ericxavier.com.b...

s 21:24:17 de 8/1/2014

Servidor
Configuraes Bsicas.

Fstab # /etc/fstab: static file system information. # # Use 'blkid' to print the universally unique identifier for a # device; this may be used with UUID= as a more robust way to name devices # that works even if disks are added and removed. See fstab(5). # # <file system> <mount point> <type> <options> proc /dev/sda1 /dev/sdd2 /dev/sda3 /dev/sdb3 /dev/sdc4 /dev/sdd3 /dev/sdb2 /dev/sdc5 /dev/sda5 /dev/sdc2 /dev/sdc6 /dev/sda4 /dev/sdb1 /dev/sdc1 /proc / /backup /hd/disco1 /hd/disco2 /hd/disco3 /hd/disco4 /home /tmp /usr /var /var/www none none none proc defaults 0 0 1 2 <dump> <pass>

ext3 errors=remount-ro,acl,user_xattr 0

ext3 relatime,nodev,nosuid,noexec,sync 0 ext3 defaults ext3 defaults ext3 defaults ext3 defaults ext3 defaults ext3 defaults 0 0 2 0 2 0 0 0 0 2 2 2 2 2

ext3 defaults,acl,user_xattr ext3 defaults ext4 defaults swap sw swap sw swap sw 0 0 0 0 2 0 0 0 0 2

/dev/sdd1 /dev/sde1

none

swap sw

0 0

/media/usb0

auto rw,user,noauto 0

Configurao da Rede

root@server:~# cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak root@server:~# vi /etc/ssh/sshd_config

Introduo e instalao do servio

Em algum momento, ns, administradores de redes, somos surpreendidos com um problema que nunca imaginvamos que poderia nos trazer dor de cabea, principalmente quando estamos tratando de um parque considervel de mquinas clientes de sua rede, onde o tempo todo esto acessando e alterando arquivos da rede, trabalhando online, entre outras tarefas, em que o horrio realmente importante. No meu caso, que trabalho em uma instituio de ensino que adotou o Moodle como plataforma para algumas avaliaes, primordial que toda as mquinas estejam com o horrio correto, para que no haja diferena entre o horrio do computador e o horrio do servidor. Outro fator importante, para que eu precise que todas as mquinas tenham o horrio correto, o log de acesso a arquivos do servidor, podemos tambm utilizar o nosso servidor NTP para sincronizao de horrio para DVRs, APs, routers, switches, servers entre muitos outros que suportem o recurso de NTP, ou seja, ter um servidor NTP na sua rede uma "mo na roda", pois, imagine ter que acertar o horrio de todos estes dispositivos manualmente... O primeiro passo, instalarmos o servio no nosso servidor. Para isso, devemos executar o seguinte comando: # apt-get update; # apt-get install ntp ntpdate tzdata

Devemos agora configurar o servio, editando o arquivo "/etc/ntp.conf" deixando-o da seguinte maneira: driftfile /var/lib/ntp/ntp.drift statsdir /var/log/ntpstats/ statistics loopstats peerstats clockstats filegen loopstats file loopstats type day enable filegen peerstats file peerstats type day enable filegen clockstats file clockstats type day enable server server server server server server server server a.st1.ntp.br b.st1.ntp.br c.st1.ntp.br d.st1.ntp.br a.ntp.br b.ntp.br c.ntp.br gps.ntp.br

# By default, exchange time with everybody, but don't allow configuration. restrict -4 default kod notrap nomodify nopeer noquery restrict -6 default kod notrap nomodify nopeer noquery # Local users may interrogate the ntp server more closely. restrict 127.0.0.1 restrict ::1

Explicando:

driftfile :: especifica o arquivo que armazenar a frequncia de atualizao do relgio, para que, se houver queda de comunicao com os servidores, o horrio se mantenha correto. Ou, se for necessrio reiniciar o servio NTP, ele toma o valor armazenado neste arquivo como inicial, mantendo o horrio correto at a prxima sincronizao.

statsdir :: diretrio de logs do servio. restrict :: politicas de acesso ao servio. server :: servidores para sincronizao de horrio.

Agora, devemos aguardar a sincronizao com os servidores principais serem feitos (normalmente, demora aproximadamente 5 minutos). Para acompanharmos isso, podemos utilizar o comando: # ntpq -c rl | grep stratum | cut -d "," -f4 Ou: # ntpq -c rl Obs.: caso utilize o segundo comando, procure uma linha onde encontre algo como "stratum=2". Caso o valor do parmetro stratum seja 16, significa que o seu servidor NTP ainda no sincronizou com os servidores principais, caso ela seja 2 ou 3, significa que o seu servidor j est sincronizado. Aqui, o seu servidor NTP j estar rodando.

# service ntp restart

Pra sincronizar com um servidor NTP, faamos o seguinte:


ntpdate -q a.ntp.br # a.ntp.br um dos servidores brasileiros de time sync. # Procure no google outros servidores se quiser...

Para verificar a data e hora atual digite # date

O horrio est correto, e note tambm que o Timezone indica BRST, que significa BRazilian SummerTime. Quando estamos fora do horrio de vero, o Timezone muda para BRT.

SSH # Package generated configuration file # See the sshd_config(5) manpage for details # What ports, IPs and protocols we listen for Port 22 # Use these options to restrict which interfaces/protocols sshd will bind to #ListenAddress :: ListenAddress 192.168.1.200 Protocol 2 # HostKeys for protocol version 2 HostKey /etc/ssh/ssh_host_rsa_key HostKey /etc/ssh/ssh_host_dsa_key #Privilege Separation is turned on for security UsePrivilegeSeparation yes # Lifetime and size of ephemeral version 1 server key KeyRegenerationInterval 3600 ServerKeyBits 768 # Logging SyslogFacility AUTH LogLevel INFO

# Authentication: LoginGraceTime 120 PermitRootLogin no StrictModes yes AllowUsers xavier #Caso no tenha nenhuma atividade em 1800 segundos ou tempo a determinar em segundos cai a conexo automaticamente ClientAliveCountMax 0 ClientAliveInterval 1800 RSAAuthentication yes PubkeyAuthentication yes AuthorizedKeysFile %h/.ssh/authorized_keys # Don't read the user's ~/.rhosts and ~/.shosts files IgnoreRhosts yes # For this to work you will also need host keys in /etc/ssh_known_hosts RhostsRSAAuthentication no # similar for protocol version 2 HostbasedAuthentication no # Uncomment if you don't trust ~/.ssh/known_hosts for RhostsRSAAuthentication #IgnoreUserKnownHosts yes # To enable empty passwords, change to yes (NOT RECOMMENDED) PermitEmptyPasswords no # Change to yes to enable challenge-response passwords (beware issues with # some PAM modules and threads) ChallengeResponseAuthentication no # Change to no to disable tunnelled clear text passwords PasswordAuthentication no # Kerberos options #KerberosAuthentication no #KerberosGetAFSToken no #KerberosOrLocalPasswd yes #KerberosTicketCleanup yes # GSSAPI options #GSSAPIAuthentication no #GSSAPICleanupCredentials yes X11Forwarding yes X11DisplayOffset 10 PrintMotd no PrintLastLog yes TCPKeepAlive yes #UseLogin no #MaxStartups 10:30:60 #Banner /etc/issue.net # Allow client to pass locale environment variables AcceptEnv LANG LC_* Subsystem sftp /usr/lib/openssh/sftp-server

# Set this to 'yes' to enable PAM authentication, account processing, # and session processing. If this is enabled, PAM authentication will # be allowed through the ChallengeResponseAuthentication and # PasswordAuthentication. Depending on your PAM configuration, # PAM authentication via ChallengeResponseAuthentication may bypass # the setting of "PermitRootLogin without-password". # If you just want the PAM account and session checks to run without # PAM authentication, then enable this but set PasswordAuthentication # and ChallengeResponseAuthentication to 'no'. UsePAM yes

Instalando e configurando o modem lspci -v | grep Communication

# vi /etc/hosts.allow # vi /etc/hosts.deny

ALL: ALL : spawn (/bin/echo `/bin/date` Host %a tentativa de acesso negado >> /var/log/acesso_negado.log) : deny Exemplo de arquivo de log

All:All: twist /var/noaccess %h %d ; \ /bin/echo -e "%h tentou acessar %d " >> /var/log/security.log ; Essa linha far o seguinte , todo IP que tentar acessar qualquer servio de sua mquina , ir executar o programa noaccess e ira logar o IP da mquina e o servio que tentou acessar no arquivo /var/log/security.log Comandos do shell Como mencionado acima, voc pode casar as regras a determinados comandos shell usando as duas seguintes opes. spawn - Esta opo lana um comando shell como processo filho. Por exemplo, veja a regra a seguir: sshd : 192.168.5.5 : spawn /bin/echo `/bin/date` from %h >> /var/log/ssh.log : deny Cada vez que a regra atendida, a data atual e o nome do cliente, %h, adicionado ao final do arquivo ssh.log. twist - Esta uma opo que substitui o pedido feito com o comando especificado. Por exemplo, se voc quiser enviar ao cliente que est tentando se conectar sua mquina usando ssh uma mensagem informando que ele est proibido de usar estes comando, voc pode usar a opo: sshd : client1.xyz.com : twist /bin/echo "You are prohibited from accessing this service!!" : deny

Ao usar spawn e twist, voc pode usar um conjunto de expresses. So elas: %a Endereo IP do cliente %A Endereo IP do servidor %c Fornece diversas informaes sobre o cliente, como o nome do usurio e o nome do computador, ou o nome do usurio e endereo IP %d Nome do processo daemon %h Nome do computador cliente (ou endereo IP, se o nome do computador no estiver disponvel) %H Nome do computador servidor (ou endereo IP, se o nome do computador no estiver disponvel) %n Nome do computador cliente. Se no estiver disponvel, unknown impresso. Se o nome do computador cliente ou endereo IP no baterem, impresso paranoid %N Nome do computador servidor. Se no estiver disponvel, unknown impresso. Se o nome do computador servidor ou endereo IP no baterem, impresso paranoid %p Identificao do processo %s Diversas informaes sobre o servidor, como a identificao do processo do daemon e o nome do servidor ou seu endereo IP %u Nome do cliente. Se no estiver disponvel, impresso unknown

#apt-get install php5-mysql php5-cli php5-curl php5-dev php5-gd php5-imagick php5-imap php5-interbase php5-mcrypt php5-memcache php5-mysql php-pear php5-pgsql php5-pspell php5-recode php5-sybase php5-tidy php5-xmlrpc php5-xsl

# # # # #

a2enmod a2enmod a2enmod a2enmod a2enmod

actons ssl rewrite suexec include

# apt-get install bind9 bind9-doc bind9utils dnsutils

# named -u bind -g # wget http://ftp.samba.org/pub/samba/stable/samba-4.1.3.tar.gz

# tar xf samba-4.1.3.tar.gz # apt-get install gcc gdb wget


apt-get install build-essential libacl1-dev libattr1-dev \ libblkid-dev libgnutls-dev libreadline-dev python-dev \ python-dnspython gdb pkg-config libpopt-dev libldap2-dev \

dnsutils libbsd-dev attr krb5-user docbook-xsl libcups2-dev

#./configure --prefix=/usr/local/samba --sysconfdir=/etc --localstatedir=/var --mandir=/usr/share/man --enable-fhs --enable-debug --bindir=/usr/bin --sbindir=/usr/sbin --libdir=/lib \ --enable-developer

\ \ \ \ \ \ \ \ \ \

./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var --with-piddir=/run/samba

\ \ \ \ \

--with-pammodulesdir=/lib/security \ --enable-fhs --enable-nss-wrapper \

# ./configure # make # make install

Você também pode gostar