quinta-feira, 29 de setembro de 2011

E-mail via linha de comando.

Pacote necessário: matt
# yum / apt-get install matt

Sintaxe :

# matt -a /caminhodoanexo -s "Assunto" contadeemail@dominio

É possível utilizar a concatenação de comandos:

# cat /caminho/corpodoemail.txt | grep mutt -a /caminhodoanexo -s "Assunto" contadeemail@dominio

quarta-feira, 29 de junho de 2011

Aplicando diretivas diferentes em máquina local e Terminal Service para o mesmo usuário, utilizando GPOs diferentes, em um domínio com Active Directory.

Em um domínio com Active Directory utilizando Terminal Service, pode ocorrer de ser necessário aplicar diretivas de grupos  diferentes para a máquina local e o terminal service.
Quando por exemplo o TS é utilizado somente para acesso a uma determinada aplicação, e na máquina local o acesso é mais abrangente, como acessos a aplicativos de e-mails, planilhas, ect .
A primeira solução que vem em mente é criar dois usuários para a mesma pessoa que irá utilizar, e cada usuário seria alocado em Unidades Organizacionais (OUs) diferentes, aplicando assim uma GPOs para cada OU.
Entretanto, utilizando filtragem WMI (Instrumentação de Gerenciamento do Windows) usando GPMC , é possível aplicar diretivas diferentes para um único usuário da máquina local e do TS, veja o exemplo de um DC WS2003 e máquinas locais com Windows XP Professional:
  • Na OU onde foram criados os usuários, crie duas GPOs ("ts" / "local" ).
  • Quando uma GPO é criada, por padrão a GPO é aplicada no grupo de usuários autenticados, fazendo com que todos os usuários logados no domínio, participantes da OU onde se aplica a GPO sejam afetados pelas diretivas configuradas. Sendo assim, é recomendável que o grupo de usuários autenticados sejam removidos da aba segurança em propiedades da GPO.
  • Para a GPO "local", em propiedades, na aba Filtro WMI, adicione um filtro com as seguintes intruções:
    Root\CimV2; Select * from Win32_OperatingSystem where
    Caption = "Microsoft Windows XP Professional" 
As intruções do filtro, diz para a GPO "local" que seja aplicada somente em máquinas cujo o sistema operacional seja Windows XP, ou seja, o filtro é verdadeiro para Windows XP e falso para outros sistemas operacionas.
  • Já na GPO "ts", podemos inserir um filtro onde diz que as diretivas não sejam aplicadas nas máquinas cujo o sistema operacional  seja Windows XP, ou seja, o filtro é falso para Windows XP e não serão aplicadas nos computadores do domínio com Windows XP.
Root\CimV2; Select * from Win32_OperatingSystem where 
Caption <> "Microsoft Windows XP Professional"
  • Após criar as GPOs na mesma OU, com filtros diferentes, cada uma pode ser configurada individualmente com as suas diretivas em particular.
OBS.: A filtragem WMI usando GPMC é muito poderosa, e pode ser usada para outras atribuições de software e também hardware , como outro exemplo a aplicar a GPO em computadores que possuem pelo menos 600 MB de disco disponíveis:       
Root\CimV2; Select * from Win32_LogicalDisk where FreeSpace 
> 629145600 AND Description <> "Network Connection"


Referência:

segunda-feira, 27 de junho de 2011

Utilizando a ferramenta RSYNC para cópia de arquivos.

O RSYNC é uma ferramenta open source de sincronização eficiente de arquivos entre máquinas na rede.
Baseado no antigo rcp (remoty copy) e com propiedades do ssh, a transmissão dos arquivos é realizada de forma segura, utilizando criptografia.
Sua utilização pode ser realizada nas seguintes situações :
  • Cópia fíel entre arquivos ou diretórios de uma máquina.
  • Cópia de arquivos entre uma máquina local e um servidor remoto.
  • Cópia de arquivos entre um servidor e máquina local.
  • Listagem de arquivos de uma máquina remota ("remote list").
            Instalação em ambiente Linux:

# apt-get install rsync  (deb)
# yum install rsync (rpm)

            Sintaxe:

# rsync [opções] origem destino

Realizando uma cópia fiel de dois diretório locais:

#rsysnc -avz /home/usuario /backup/usuario

Realizando cópias entre a máquina local e um servidor remoto:

#rsync -Cravzp /home/usuario usuarioremoto@endereço_remoto:/backup/usuario

Realizando cópias entre o servidor e a máquina local:

#rsysnc -Cravzp usuarioremoto@endereço_remoto:/backup/usuario /home/usuario

Automatizando um backups remotos utilizando o RSYNC.

Toda vez que  o utilitário RSYNC e executado entre hosts da rede, o host remoto solicita a senha do usuário para conexão, uma forma para que não seja solicitado a senha, é criando uma chave de acesso utilizando o ssh-keygen e copiá-la para a o host remoto.

#ssh-keygen -t dsa -f ~/.ssh/id_dsa
#cat ~/.ssh/id_dsa.pub | ssh usuarioremoto@endereço_remoto 'cat - >> ~/.ssh/authorized_keys'
# cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys

Na primeira linha é criada uma chave dsa, nas últimas linhas a chave é colocada nos arquivos de chaves autorizadas, tanto na máquina local quanto na máquina remota.

Referência :
http://rsync.samba.org/

terça-feira, 7 de setembro de 2010

Compartilhando arquivos em rede usando NFS.

O NFS (Network File System) foi projetado para compartilhar partições ou arquivos em rede, sendo que os compartilhamentos remotos se comportam como se fossem locais.
Basicamente para montar um servidor NFS é preciso configurar três arquivos:

/etc/exports
/etc/hosts.allow
/etc/hosts.deny

  •  /etc/exports 
Neste arquivo contêm a lista de entradas de compartilhamento, nele define o volume que será compartilhado, a lista de hosts ou rede que tera acesso, e as permissões de acesso.
Sua estrutura segue a seguinte forma:

/compartilhamento host1(opcao1, opcao2) host2(opcao1, opcao2)

Onde:

/compartilhamento é o arquivo que será exportado para a rede.
Host1 e host2 são os endereços das máquina que terão acesso ao compartilhamento. Podendo ser descriminadas por nome ou endereço IP.
            Opcao1 e opcao2 são as permissões que cada host terá sobre o arquivo. 

Tipos de permissões:

ro:  O Host tem permissão somente  de leitura.
rw: Leitura e gravação.
no_root_squash: Esta opção define que os níveis de acesso do host remoto sejam os mesmos que o níveis locais, caso essa opção não seja especificada o host remoto terá acesso ao compartilhamento como root.
no_subtree_check: Desabilita a checagem do bloco quando é feita a solicitação de um arquivo, essa opções quando marcada pode melhorar o desempenho do serviço NFS sobre a rede.
sync : Por padrão a forma de gravação é assíncrona, ou seja a gravação e feita no servidor depois que o arquivo é terminado pelo cliente. Essa forma de gravação pode ocasionar arquivos corrompidos e a opção sync evita isso.

Supondo que queremos compartilhar o diretório /home e /usr/local, a configuração do arquivo /etc/exports  ficaria da seguinte forma:

#cat /etc/exports


/usr/local 10.0.0.1(ro) 10.0.0.2(ro)
/home 10.0.0.1(rw) 10.0.0.2(rw)

Neste caso o diretório /usr/local está compartilhado para as máquinas com endereço 10.0.0.1 e 10.0.0.2 com o nível de acesso somente leitura (ro) read only. Já o diretório /home está compartilhado para as máquinas  como leitura e escrita (rw) read and write .

É possível compartilhar usando a faixa de ips da rede, por exemplo :

Rede 10.0.0.0/24

O arquivo ficaria da seguinte forma:

#cat /etc/exports


/usr/local 10.0.0.0/255.255.255.0(ro)
/home 10.0.0.0/255.255.255.0(rw)

Resumindo o arquivo /etc/exports possue a seguinte estrutura:

<volume> [host/rede]<opções>

  • /etc/hosts.deny 


 o arquivo /etc/hosts.deny define os hosts ou rede que não terão acesso ao compartilhamento.

Sua estrutura segue a seguinte forma:

<serviço>:[host/rede]<opções>

#cat /etc/hosts.deny 

ALL:ALL

Neste caso foi negado os o acesso de qualquer serviço e de qualquer host ou rede. Iremos definir as permissões de acessos no arquivo /etc/hosts.allow

  • /etc/hosts.allow
O arquivo /etc/hosts.allow define os serviços liberados que serão liberados para acesso e quais hosts ou rede terão acesso a esses serviços:

#cat /etc/hosts.allow 

ALL : 10.0.0.0/24

Netse caso, foi liberado o acesso a todos os serviços que usam tcpd (tcp  wrapper) ou sshd , inclusive o NFS para a rede 10.0.0.0/24 .
É possível liberar somente os serviços exclusivos, também é possível adicionar exceções as regras, como por exemplo o sistema NFS necessita apenas de alguns serviços, vejamos como ficaria o arquivo /etc/hosts.allow:

#cat /etc/hosts.allow

portmap: 10.0.0.0/24 EXCEPT 10.0.0.1
lockd: 10.0.0.0/24 EXCEPT 10.0.0.1
rquotad: 10.0.0.0/24 EXCEPT 10.0.0.1
mountd: 10.0.0.0/24 EXCEPT 10.0.0.1
statd: 10.0.0.0/24 EXCEPT 10.0.0.1

Com essa configuração, foi liberado apenas os serviços portmap, lockd, rquotad,mountd e statd para rede 10.0.0.0/24 exceto para o host 10.0.0.1 .

Além dos arquivos exports, hosts.deny e hosts.allow que ficam localizados dentro de /etc estarem devidamente configurados,  alguns processos devem estar em execução:

/etc/init.d/portmap start
/etc/init.d/nfs start

Foi usado aqui a distribuição CentOS kernel  2.6.18-194.el5.
Para configurar os serviços para executarem na inicialização, basta executar o comando ntsysv e marcar as opções:

#ntsysv 

[X] nfs
[X] portmap


Após a configuração do servidor, é necessário montar o compartilhamento no cliente que é exportado pelo servidor:

root@client:~# mkdir /mnt/nfs

Obs: Iremos montar o diretório /home exportado pelo servidor em /mnt/nfs no cliente:

root@cliet:~# mount -t nfs servidornfs.net:/home /mnt/nfs

Após a montagem, para que não seja perdida após reiniciar o cliente, basta adicionar a linha de comando acima no arquivo /etc/fstab .

root@cliet:~# vi /etc/fstab

servidornfs.net:/home /mnt/nfs nfs rw 0 0



Segue a sintaxe:
[endereço do servidor:/arquivoexportado] <arquivolocal> <fs-type> <opções> [dump] [fsckoder]

Source: http://nfs.sourceforge.net/nfs-howto/

segunda-feira, 6 de setembro de 2010

Estilo MacGyver: Consertando o teclado do notebook.

Veja como é fácil e prático consertar o teclado de seu notebook.

http://sqlshow.wordpress.com/category/oficina-do-macgyver/

By: Cleyton

Copiando arquivos entre hosts usando scp.

O SCP (Secury Copy) assim como o RCP, são ferramenta para fazer cópias de arquivos entre hosts. A diferença entre as duas ferramentas é que o RCP faz a transferência dos dados de forma plana , já o SCP faz a cifragem dos dados durante a cópia, garantindo a segurança caso ocorra de um sniffer na rede querer extrair informações dos pacotes.
O SCP em si não faz nenhum tipo de autenticação, responsabiliza apenas pela transferência do arquivo, a segurança é garantida pelo protocolo SSH, que é utilizado pelo SCP .

Cópia do host local para o host remoto:
$scp ArquivoFonte usuário@host:/ArquivoAlvo

Cópia do host remoto para o host local:
$scp usuário@host:/ArquivoFonte /ArquivoAlvo

Para fazer cópias recursivas deve-se ser acrescentado a opção -r .
Exemplo :

root@localhost tmp# scp -r /tmp root@192.168.0.1:/tmp/

Foi feito a cópia de todos os arquivos que estavam em localhost:/tmp para 192.168.0.1:/tmp/

:)