RNP - Rede Nacional de Ensino e Pesquisa
 
Segurança de redes 
 

Alterações de configuração necessárias para o Horário de Verão 2005/2006

Alerta do CAIS 06102005

[CAIS, 06.10.2005-14:41, revisão 01]


Como foi devidamente anunciado pelo CAIS, o Horário de Verão 2005/2006 inicia em 16 de Outubro de 2005 e termina em 19 de Fevereiro de 2006. Com isto, algumas configurações nos sistemas se fazem necessárias.

O Horário de Verão está relacionado ao TIMEZONE adotado. O timezone funciona como uma "máscara" sobre o relógio do sistema, fazendo um ajuste no horário mostrado ao usuário e utilizado pelos programas (localtime), mas deixando intacto o relógio do sistema operacional (horário absoluto), sempre em UTC (GMT 0).

Se o relógio do sistema (horário absoluto) marca 16:00 UTC (GMT 0), ajustado sempre por NTP, então temos que:

  • Se utilizamos o timezone do Brasil (GMT-3), o horário mostrado ao usuário será 13:00 - GMT-3 (localtime)
  • Se o micro estiver configurado para utilizar o timezone de Paris (França - GMT+1), por exemplo, o horário mostrado ao usuário seria 17:00 - GMT+1 (localtime)

Assim, nenhuma modificação nas configurações do serviço 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 modificações de configuração para o Horário de Verão. Caso o servidor NTP detecte uma diferença maior que 20 minutos entre o horário do sistema (horário absoluto) e o horário registrado pelo servidor NTP (ntpd, OpenNTPD), o serviço NTPD poderá parar. Assim, deve-se redobrar a atenção durante o processo de configuração do Horário de Verão em hosts que provêem este serviço.

A seguir são descritos os procedimentos de atualização 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 é preciso que se saiba de antemão o timezone da sua região.

DICA: Consulte o site do Observatório Nacional para saber qual timezone se aplica à região do Brasil na qual seus sistemas estão.

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

1. Cisco IOS

Nos arquivos de configuração dos roteadores Cisco será preciso incluir (ou atualizar) as seguintes linhas:

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

*OBS: Os logs gerados pelo Cisco passarão a informar a hora como GMT-2, que é a nova configuração do timezone.


2. GNU/Linux

* Atenção: o daemon crond deve ser reinicializado assim que o Horário de Verão entrar em vigor.

Usuários de sistemas baseados em GNU/Linux devem seguir o procedimento abaixo:


1. Verificar a existência do arquivo '/etc/localtime' e se este arquivo é um link simbólico ou não.

Não é recomendado possuir o arquivo /etc/localtime como link simbólico para o arquivo /usr/share/zoneinfo/Brazil/East, pois em sistemas que o diretório /usr não estiver acessível (não tiver sido montado, por exemplo) no momento de inicialização da máquina, as informações contidas no arquivo localtime não serão carregadas.

2. Verificar se existe no diretório /usr/share/zoneinfo/Brazil algum arquivo que contenha informações relativas a outros horários de verão (DICA: geralmente um arquivo com extensão .zic).


a) Se não existir nenhum arquivo com tais informações então crie um novo, de nome 'verão.2005.zic' por exemplo, no diretório /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 informações de Horário de Verão de outros anos basta inserir as linhas mencionadas.

As duas primeiras linhas de configuração acima informam quando se inicia o Horário de Verão, quando termina, e qual a ação a ser tomada. Lembre-se de que no início do Horário de Verão deve ser adicionada uma hora ao horário mostrado ao usuário (localtime).

A última linha diz qual arquivo será modificado pelo comando 'zic'. No exemplo acima, será o arquivo 'East' (dentro do diretório Brazil). Esta linha também informa qual o timezone original da região - no caso de São Paulo (East) temos UTC-3. Caso você esteja utilizando um timezone diferente do adotado em São Paulo (East), modifique estes parâmetros para o timezone que afeta sua região.

#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 Brasília:
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, disponível 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



4. Neste caso em particular o comando atualizará o arquivo East.

Para verificar se as configurações corretas foram feitas, execute o comando 'zdump', conforme segue abaixo (troque East pelo timezone de sua região):

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

Você deverá 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 não está no Horário de Verão (indicação 'BRT'). No segundo seguinte as modificações do Horário de Verão entram em vigor, adiantando o localtime em uma hora: "Sun Oct 16 01:00:00 2005 BRST" (O horário mostrado ao usuário passará para 1 da manhã, e não para meia-noite, mostrando o adiantamento do horário).

Em "Sat Feb 18 23:59:59 2006 BRST", o Horário de Verão terminará no segundo seguinte, com o localtime sendo então atrasado em 1 hora: "Sat Feb 18 23:00:00 2006 BRT" (o horário mostrado ao usuário voltará para às 23:00).



5. Por último, 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



3. FreeBSD

* Atenção: o daemon crond deve ser reinicializado assim que o Horário de Verão entrar em vigor.

Usuários do sistema FreeBSD devem proceder da mesma forma que usuários GNU/Linux. A única diferença está no diretório onde deverá ser criado o arquivo 'verao.2005.zic' - /usr/share/zoneinfo. As linhas a serem incluidas neste arquivo, assim como em sistemas GNU/Linux, são:

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 será criado ao executar o comando 'zic verao.2005.zic', o qual conterá as informações do Horário de Verão. Este novo arquivo deverá ser copiado sobre /etc/localtime, lembrando que será preciso fazer uma cópia de segurança do arquivo /etc/localtime antes de sobrescrevê-lo.



4. Solaris

* Atenção: o daemon crond deve ser reinicializado assim que o Horário de Verão entrar em vigor.


Usuários de Solaris devem seguir o procedimento abaixo:

1. Verificar o zoneinfo respectivo. O arquivo /etc/TIMEZONE contém as informações relativas a qual arquivo será consultado para verificar o zoneinfo.

# more /etc/TIMEZONE


TZ=Brazil/East

No exemplo acima, deverá ser consultado o arquivo East, no diretório Brazil. Por padrão, este diretório deve estar em /usr/share/lib/zoneinfo.



2. Verificar se existe no diretório /usr/share/lib/zoneinfo algum arquivo em formato texto que contenha informações relativas a outros horários de verão (DICA: geralmente um arquivo com extensão .zic)

a) Se não existir nenhum arquivo com tais informações, deverá 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 informações de Horário de Verão de outros anos basta inserir as linhas acima.

As duas primeiras linhas informam quando inicia o Horário de Verão, quando termina e qual a ação a ser tomada. Lembre-se de que no início do Horário de Verão deve ser adicionada uma hora.

A última linha diz qual arquivo será gerado pelo comando 'zic' - no exemplo será o arquivo 'East' (dentro do diretorio Brazil). Esta linha também informa o timezone da região, no caso o de São Paulo, UTC-3.

No exemplo que se segue existe um diretório 'Brazil' dentro de /usr/share/lib/zoneinfo que contém um arquivo brazil.zic, que deve ser atualizado com as linhas mencionadas acima.



3. Deve-se então gerar o novo arquivo (em formato binário) como segue:

# zic brazil.zic



4. Para verificar se as configurações foram feitas corretamente, execute o comando 'zdump' conforme segue abaixo (troque East pelo timezone de sua região):


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

Você deverá 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

Usuários 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 Horário de Verão se inicia às 00:00 do terceiro domingo do mês 10 (16 de Outubro) e finaliza às 00:00 do terceiro domingo do mês 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 mês 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 utilitário TZEDIT (tzedit.exe), incluido no CD do Resource Kit que acompanha a distribuição do sistema. Não existe URL oficial para fazer download deste programa no site da Microsoft, mas ele pode ser facilmente encontrado na Internet, lembrando que neste último caso *não* se garante a integridade do programa.

Uma segunda opção para modificação do timezone em WindowsXP é a utilização do utilitário 'timezone.exe', disponível para download em:

Microsoft Download Center - Windows XP Service Pack 2 Support Tools


OBS: O download é precedido de um processo de validação, que verifica se sua cópia de Microsoft Windows é genuína.

Administradores que queiram automatizar a atualização do Horário de Verão em redes com elevado número de máquinas Windows podem encontrar mais informações em:

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

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


1. Faça o download do "Windows XP Service Pack 2 Support Tools" e instale-o no seu sistema, caso você não possua o utilitário 'timezone.exe'.

2. Em um prompt de comando (cmd.exe) execute, a partir do diretório "Program Files\Support Tools" se foi utilizada a instalação padrão, o seguinte comando:


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

As configurações acima seguem o formato:

Hora:DiaDaSemana:Dia:Mes - (Início Horário de Verão)
Hora:DiaDaSemana:Dia:Mês - (Fim Horário de Verão)

Hora: Hora (00 ate 23)
DiaDaSemana: Dia da semana (0 - 6 : 0 = Domingo, 1 = Segunda, etc)
Dia: Ocorrência do dia da semana no mês ( 1 - 5 : Exemplo -> no caso do dia da semana ser Terça-Feira: 1 - primeira terça do mês, 2 - segunda terca do mês, etc)
Mês: Mês do ano (01 - 12)

3. Execute o seguinte comando para verificar se as modificações 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 configurações do Horário de Verão:

5. Vá em Start -> Settings -> Control Panel -> Date and Time -> Timezone;

6. Certifique-se que você está utilizando o timezone de Brasilia (UTC-0300) Brasília;

7. Certifique-se que a caixa "Automaticamente ajuste o relógio para o horário de verão" está marcada.


O CAIS está à disposição para maiores esclarecimentos.



Centro de Atendimento a Incidentes de Segurança

Consulta em alertas

 


Contato com o Cais:

+55 (19) 3787-3300
+55 (19) 3787-3301

cais@cais.rnp.br


Chave PGP pública do Cais