[SECURITY-L] CAIS-Alerta: Alteracoes de configuracao necessarias para o Horario de Verao 2005/2006

CSIRT - UNICAMP security em unicamp.br
Sex Out 7 10:16:39 -03 2005


----- Forwarded message from Centro de Atendimento a Incidentes de Seguranca <cais em cais.rnp.br> -----

From: Centro de Atendimento a Incidentes de Seguranca <cais em cais.rnp.br>
Subject:  CAIS-Alerta: Alteracoes de configuracao necessarias para o Horario
 de Verao 2005/2006
To: rnp-alerta em cais.rnp.br, rnp-seg em cais.rnp.br
Date: Thu, 6 Oct 2005 14:41:54 -0300 (BRST)

-----BEGIN PGP SIGNED MESSAGE-----


Prezados,


Como foi devidamente anunciado pelo CAIS, o Horario de Verao 2005/2006 
inicia em 16 de Outubro de 2005 e termina em 19 de Fevereiro de 2006. Com 
isto, algumas configuracoes nos sistemas se fazem necessarias.

O Horario de Verao esta relacionado ao TIMEZONE adotado. O timezone 
funciona como uma "mascara" sobre o relogio do sistema, fazendo um ajuste 
no horario mostrado ao usuario e utilizado pelos programas (localtime), 
mas deixando intacto o relogio do sistema operacional (horario absoluto), 
sempre em UTC (GMT 0).

Se o relogio do sistema (horario absoluto) marca 16:00 UTC (GMT 0), 
ajustado sempre por NTP, entao temos que:


. Se utilizamos o timezone do Brasil (GMT-3), o horario mostrado ao
  usuario sera 13:00 - GMT-3 (localtime)

. Se o micro estiver configurado para utilizar o timezone de Paris 
  (Franca - GMT+1), por exemplo, o horario mostrado ao usuario seria 
  17:00 - GMT+1 (localtime)


Assim, nenhuma modificacao nas configuracoes do servico de NTP deve ser 
feita nos sistemas. Entretanto, deve-se tomar um cuidado especial com os 
*servidores* NTP (Stratum 1, Stratum 2 e outros) quando das modificacoes 
de configuracao para o Horario de Verao. Caso o servidor NTP detecte uma 
diferenca maior que 20 minutos entre o horario do sistema (horario 
absoluto) e o horario registrado pelo servidor NTP (ntpd, OpenNTPD), o 
servico NTPD podera' parar. Assim, deve-se redobrar a atencao durante o 
processo de configuracao do Horario de Verao em hosts que proveem este 
servico.

A seguir sao descritos os procedimentos de atualizacao do localtime em 
sistemas FreeBSD, GNU/Linux, Solaris, AIX e Windows, bem como em alguns 
equipamentos Cisco que usem o IOS. Antes de prosseguir com estes 
procedimentos e' preciso que se saiba de antemao o timezone da sua regiao.

DICA: Consulte o site do Observatorio Nacional (http://pcdsh01.on.br/fusobrasil.htm) 
      para saber qual timezone se aplica 'a regiao do Brasil na qual seus 
      sistemas estao.


Indice:
- -------
1. CISCO IOS
2. GNU/Linux
3. FreeBSD
4. Solaris
5. AIX
6. MS Windows



1. Cisco IOS
============

Nos arquivos de configuracao dos roteadores Cisco sera' preciso incluir 
(ou atualizar) as seguintes linhas:

 clock timezone GMT-3 -3
 clock summer-time GMT-2 date Out 16 2005 0:00 Feb 19 2006 0:00

 *OBS: Os logs gerados pelo Cisco passarao a informar a hora como GMT-2,
       que e' a nova configuracao do timezone.


2. GNU/Linux
============

* Atencao: o daemon crond deve ser reinicializado assim que o Horario de 
  Verao entrar em vigor.


Usuarios de sistemas baseados em GNU/Linux devem seguir o procedimento 
abaixo:


1. Verificar a existencia do arquivo '/etc/localtime' e se este arquivo e'
   um link simbolico ou nao.

   Nao e' recomendado possuir o arquivo /etc/localtime como link simbolico
   para o arquivo /usr/share/zoneinfo/Brazil/East, pois em sistemas que
   o diretorio /usr nao estiver acessivel (nao tiver sido montado, por
   exemplo) no momento de inicializacao da maquina, as informacoes
   contidas no arquivo localtime nao serao carregadas.


2. Verificar se existe no diretorio /usr/share/zoneinfo/Brazil algum
   arquivo que contenha informacoes relativas a outros horarios de 
   verao (DICA: geralmente um arquivo com extensao .zic).

   a) Se nao existir nenhum arquivo com tais informacoes entao crie um 
      novo, de nome 'verao.2005.zic' por exemplo, no diretorio 
      /usr/share/zoneinfo/Brazil/. Este arquivo devera' conter as seguintes 
      linhas:

      Rule Brazil  2005    only     -       Oct    16   00:00   1       S
      Rule Brazil  2006    only     -       Feb    19   00:00   0       -

      Zone    Brazil/East             -3:00   Brazil          BR%sT


   b) Se existir algum arquivo com informacoes de Horario de Verao de
      outros anos basta inserir as linhas mencionadas.


   As duas primeiras linhas de configuracao acima informam quando se 
   inicia o Horario de Verao, quando termina, e qual a acao a ser tomada. 
   Lembre-se de que no inicio do Horario de Verao deve ser adicionada uma 
   hora ao horario mostrado ao usuario (localtime).

   A ultima linha diz qual arquivo sera' modificado pelo comando 
   'zic'. No exemplo acima, sera' o arquivo 'East' (dentro do diretorio 
   Brazil). Esta linha tambem informa qual o timezone original da regiao 
   - no caso de Sao Paulo (East) temos UTC-3. Caso voce esteja utilizando 
   um timezone diferente do adotado em Sao Paulo (East), modifique estes 
   parametros para o timezone que afeta sua regiao.


   #Cidades que seguem o timezone definido para Fernando de Noronha:
   Zone    Brazil/DeNoronha	-2:00   Brazil          FN%sT

   #Cidades que seguem o timezone definido para Brasilia:
   Zone    Brazil/East		-3:00   Brazil          BR%sT

   #Cidades que seguem o timezone definido para o Amazonas:
   Zone    Brazil/West		-4:00   Brazil          AM%sT

   #Cidades que seguem o timezone definido para o Acre:
   Zone    Brazil/Acre		-5:00   Brazil          AC%sT


   * Parametros definidos pela glibc presente em sistemas Linux, 
     disponivel para download em http://www.gnu.org/


3. Uma vez feitos os devidos ajustes no arquivo 'verao.2005.zic' execute o 
   comando 'zic':

    # zic verao.2005.zic

   Neste caso em particular o comando atualizara' o arquivo East.


4. Para verificar se as configuracoes corretas foram feitas, execute o 
   comando 'zdump', conforme segue abaixo (troque East pelo timezone de 
   sua regiao):

    # zdump -v Brazil/East |grep 200[56]

   Voce devera obter uma resposta como a que segue abaixo:

    Brazil/East  Sun Oct 16 02:59:59 2005 UTC = Sat Oct 15 23:59:59 2005 BRT isdst=0 gmtoff=-10800
    Brazil/East  Sun Oct 16 03:00:00 2005 UTC = Sun Oct 16 01:00:00 2005 BRST isdst=1 gmtoff=-7200
    Brazil/East  Sun Feb 19 01:59:59 2006 UTC = Sat Feb 18 23:59:59 2006 BRST isdst=1 gmtoff=-7200
    Brazil/East  Sun Feb 19 02:00:00 2006 UTC = Sat Feb 18 23:00:00 2006 BRT isdst=0 gmtoff=-10800

   Note que em "Sat Oct 15 23:59:59 2005" o sistema ainda nao esta no 
   Horario de Verao (indicacao 'BRT'). No segundo seguinte as 
   modificacoes do Horario de Verao entram em vigor, adiantando o 
   localtime em uma hora: "Sun Oct 16 01:00:00 2005 BRST" (O horario 
   mostrado ao usuario passara' para 1 da manha, e nao para meia-noite, 
   mostrando o adiantamento do horario).

   Em "Sat Feb 18 23:59:59 2006 BRST", o Horario de Verao terminara' no 
   segundo seguinte, com o localtime sendo entao atrasado em 1 hora: "Sat 
   Feb 18 23:00:00 2006 BRT" (o horario mostrado ao usuario voltara' para 
   as 23:00).


5. Por ultimo, se o arquivo /etc/localtime NAO for um link para o arquivo
   /usr/share/zoneinfo/Brazil/East, deve-se copiar o arquivo East para 
   /etc/localtime

    # cp East /etc/localtime


3. FreeBSD
==========

* Atencao: o daemon crond deve ser reinicializado assim que o Horario de 
  Verao entrar em vigor.


Usuarios do sistema FreeBSD devem proceder da mesma forma que usuarios 
GNU/Linux. A unica diferenca esta' no diretorio onde devera' ser criado o 
arquivo 'verao.2005.zic' - /usr/share/zoneinfo. As linhas a serem 
incluidas neste arquivo, assim como em sistemas GNU/Linux, sao:


 Rule Brazil  2005    only     -       Oct     16   00:00   1       S
 Rule Brazil  2006    only     -       Feb     19   00:00   0       -

 Zone    hv2005             -3:00   Brazil          BR%sT


No exemplo acima, o nome 'hv2005' representa o arquivo que sera' criado ao 
executar o comando 'zic verao.2005.zic', o qual contera' as informacoes do 
Horario de Verao. Este novo arquivo devera' ser copiado sobre 
/etc/localtime, lembrando que sera' preciso fazer uma copia de seguranca 
do arquivo /etc/localtime antes de sobrescreve-lo.


4. Solaris
==========

* Atencao: o daemon crond deve ser reinicializado assim que o Horario de 
  Verao entrar em vigor.


Usuarios de Solaris devem seguir o procedimento abaixo:

1. Verificar o zoneinfo respectivo. O arquivo /etc/TIMEZONE contem as
   informacoes relativas a qual arquivo sera' consultado para verificar o
   zoneinfo.

    # more /etc/TIMEZONE

    TZ=Brazil/East

   No exemplo acima, devera' ser consultado o arquivo East, no diretorio
   Brazil. Por padrao, este diretorio deve estar em 
   /usr/share/lib/zoneinfo.


2. Verificar se existe no diretorio /usr/share/lib/zoneinfo algum arquivo
   em formato texto que contenha informacoes relativas a outros horarios 
   de verao (DICA: geralmente um arquivo com extensao .zic)

   a) Se nao existir nenhum arquivo com tais informacoes, devera' ser
      criado um novo arquivo, de nome 'brazil.zic' por exemplo, e
      inserir as seguintes linhas.

       Rule Brazil  2005    only     -       Oct     16   00:00   1       S
       Rule Brazil  2006    only     -       Feb     19   00:00   0       -

       Zone    Brazil/East             -3:00   Brazil          BR%sT


   b) Se existir um arquivo com informacoes de Horario de Verao de outros
      anos basta inserir as linhas acima.


   As duas primeiras linhas informam quando inicia o Horario de
   Verao, quando termina e qual a acao a ser tomada. Lembre-se de que no
   inicio do Horario de Verao deve ser adicionada uma hora.

   A ultima linha diz qual arquivo sera' gerado pelo comando 'zic' - no
   exemplo sera' o arquivo 'East' (dentro do diretorio Brazil). Esta linha
   tambem informa o timezone da regiao, no caso o de Sao Paulo, UTC-3.

   No exemplo que se segue existe um diretorio 'Brazil' dentro de
   /usr/share/lib/zoneinfo que contem um arquivo brazil.zic, que deve ser
   atualizado com as linhas mencionadas acima.


3. Deve-se entao gerar o novo arquivo (em formato binario) como segue:

    # zic brazil.zic


4. Para verificar se as configuracoes foram feitas corretamente, execute o
   comando 'zdump' conforme segue abaixo (troque East pelo timezone de sua
   regiao):

    # zdump -v Brazil/East |grep 200[56]

   Voce devera obter uma resposta como a que segue abaixo:

    Brazil/East  Sun Oct 16 02:59:59 2005 UTC = Sat Oct 15 23:59:59 2005 BRT isdst=0 
    Brazil/East  Sun Oct 16 03:00:00 2005 UTC = Sun Oct 16 01:00:00 2005 BRST isdst=1
    Brazil/East  Sun Feb 19 01:59:59 2006 UTC = Sat Feb 18 23:59:59 2006 BRST isdst=1
    Brazil/East  Sun Feb 19 02:00:00 2006 UTC = Sat Feb 18 23:00:00 2006 BRT isdst=0


5. AIX
======

Usuarios de AIX devem alterar o arquivo /etc/environment colocando a
diretiva:

 2005: TZ=GRNLNDST3GRNLNDDT,M10.3.0/00:00:00,M2.3.0/00:00:00
                                                                                                                                                              
Isto indica que o Horario de Verao se inicia `as 00:00 do terceiro
domingo do mes 10 (16 de Outubro) e finaliza `as 00:00 do terceiro
domingo do mes 2 (19 de Fevereiro) , seguindo a seguinte sintaxe:
                                                                                                                                                              
 2005: TZ=GRNLNDST3GRNLNDDT,Mm.w.wd/hh:mm
                                                                                                                                                              
  * m - mês ( 1 < m < 12 )
  * w - ocorrencia do dia da semana no mes contados a 
	partir do dia 1o. (1 < d < 5)
  * wd - dia da semana ( 0 < n < 5 : Domingo corresponde a 0)
  * hh:mm - horário


6. Windows
==========

Para sistemas Windows 9*/NT/2000/XP recomenda-se o uso do utilitario 
TZEDIT (tzedit.exe), incluido no CD do Resource Kit que acompanha a 
distribuicao do sistema. Nao existe URL oficial para fazer download deste 
programa no site da Microsoft, mas ele pode ser facilmente encontrado na 
Internet, lembrando que neste ultimo caso *nao* se garante a integridade 
do programa.

Uma segunda opcao para modificacao do timezone em WindowsXP e' a 
utilizacao do utilitario 'timezone.exe', disponivel para download 
em:


 Microsoft Download Center - Windows XP Service Pack 2 Support Tools
 http://www.microsoft.com/downloads/details.aspx?FamilyID=49ae8576-9bb9-4126-9761-ba8011fabf38&displaylang=en

 OBS: O download e' precedido de um processo de validacao, que verifica se 
      sua copia de Microsoft Windows e' genuina.


Administradores que queiram automatizar a atualizacao do Horario de Verao 
em redes com elevado numero de maquinas Windows podem encontrar mais 
informacoes em:


  Microsoft Support Knowledge Base
  How to configure daylight saving time dates for Brazil
  http://support.microsoft.com/?kbid=317211


Para a configuracao de timezone do seu sistema utilizando o comando 
'timezone.exe' siga os seguintes passos:


1. Faca o download do "Windows XP Service Pack 2 Support Tools" e 
   instale-o no seu sistema, caso voce nao possua o utilitario 
   'timezone.exe'.


2. Em um prompt de comando (cmd.exe) execute, a partir do diretorio 
   "Program Files\Support Tools" se foi utilizada a instalacao padrao, o 
   seguinte comando:

   C:\Program Files\Support Tools>timezone.exe /s 00:0:3:10  00:0:3:02

   As configuracoes acima seguem o formato:

    Hora:DiaDaSemana:Dia:Mes    Hora:DiaDaSemana:Dia:Mes
    (Inicio Horario de Verao)   (Fim Horario de Verao)

    Hora: 		Hora (00 ate 23)
    DiaDaSemana:	Dia da semana (0 - 6 : 0 = Domingo,
                        1 = Segunda, etc)
    Dia: 		Ocorrencia do dia da semana no mes ( 1 - 5 :
                        Exemplo -> no caso do dia da semana ser 
                        Terca-Feira:  1 - primeira terca do mes, 
        		2 - segunda terca do mes, etc)
    Mes: 		Mes do ano (01 - 12)


3. Execute o seguinte comando para verificar se as modificacoes foram 
   corretamente executadas:

    C:\Program Files\Support Tools>timezone.exe /g

    Current Timezone is :

      Daylight Saving Time begins at 00:0:3:10
      Daylight Saving Time ends at 00:0:3:02


4. Configure o sistema para utilizar automaticamente as configuracoes do
   Horario de Verao:
  
   . Va' em Start -> Settings -> Control Panel -> Date and Time -> 
     Timezone;
   . Certifique-se que voce esta' utilizando o timezone de Brasilia (UTC-0300) 
     Brasilia;
   . Certifique-se que a caixa "Automaticamente ajuste o relogio para o
     horario de verao" esta marcada.



O CAIS esta' a disposicao para maiores esclarecimentos.

Atenciosamente,

################################################################
#   CENTRO DE ATENDIMENTO A INCIDENTES DE SEGURANCA (CAIS)     #
#       Rede Nacional de Ensino e Pesquisa (RNP)               #
#                                                              #
# cais em cais.rnp.br       http://www.cais.rnp.br                #
# Tel. 019-37873300      Fax. 019-37873301                     #
# Chave PGP disponivel   http://www.rnp.br/cais/cais-pgp.key   #
################################################################

-----BEGIN PGP SIGNATURE-----
Version: PGP 6.5.8

iQCVAwUBQ0Vh7Okli63F4U8VAQFT8gQAkm2DWCcKug9/1YvrHVQxe9DdkM1GmaQ4
R3EDJH8qOTaaQLBw7jE6ihFcxEnTy7V1IsQc/2GNizfuq+LCdsWbudRUC012V41E
VVjlW9zyK4fhGzpSwD71RxHnM6Ig8+PcA9PbdfIqTQS281a3iUOClfuRvVoKyuLU
mZU9YjFYK58=
=TTCT
-----END PGP SIGNATURE-----
----- End forwarded message -----



Mais detalhes sobre a lista de discussão SECURITY-L