Introdução
Este documento descreve como fazer backup do .chassisidfile (ID do chassi) nas versões 20 e superiores do StarOS.
Informações de Apoio
A chave do chassi é usada para criptografar e descriptografar senhas criptografadas no arquivo de configuração. Se dois ou mais chassis forem configurados com o mesmo valor de chave de chassi, as senhas criptografadas poderão ser descriptografadas por qualquer chassi que compartilhe o mesmo valor de chave de chassi. Como corolário disso, um determinado valor de chave de chassi não pode descriptografar senhas que foram criptografadas com um valor de chave de chassi diferente.
A chave do chassi é usada para gerar o ID do chassi que é armazenado em um arquivo e é usado como a chave primária para proteger dados confidenciais (como senhas e segredos) em arquivos de configuração
Para a versão 15.0 e posterior, o ID do chassi é um hash SHA256 da chave do chassi. A chave do chassi pode ser definida pelos usuários por meio de um comando CLI ou do Assistente de instalação rápida. Se o ID do chassi não existir, um endereço MAC local será usado para gerar o ID do chassi.
Para a versão 19.2 e posterior, o usuário deve definir explicitamente a chave do chassi por meio do Assistente de configuração rápida ou do comando CLI. Se não for definido, um ID de chassi padrão usando o endereço MAC local será gerado. Na ausência de uma chave de chassi (e, portanto, a ID do chassi), os dados confidenciais não aparecem em um arquivo de configuração salvo.
O ID do chassi é o hash SHA256 (codificado no formato base36) da chave do chassi inserida pelo usuário mais um número aleatório seguro de 32 bytes. Isso garante que a chave do chassi e o ID do chassi tenham entropia de 32 bytes para segurança de chave.
Se uma ID de chassi não estiver disponível, a criptografia e a descriptografia de dados confidenciais nos arquivos de configuração não funcionarão.
Problema: insuficiente para fazer backup do valor da chave do chassi para executar a mesma configuração no mesmo nó.
Devido à mudança no comportamento a partir da versão 19.2, não é mais suficiente fazer backup do valor da chave do chassi para poder executar a mesma configuração no mesmo nó.
Além disso, devido ao número aleatório de 32 bytes anexado à chave de chassi configurada, sempre há IDs de chassi diferentes gerados com base nas mesmas chaves de chassi.
Essa é a razão pela qual o comando cli chassis keycheck está oculto agora, já que ele sempre retorna negativo, mesmo que a mesma chave antiga seja inserida.
Para ser capaz de recuperar uma máquina StarOS de uma configuração salva (quando, por exemplo, todo o conteúdo da unidade /flash foi perdido) é necessário fazer backup do .chassisid (onde o StarOS armazena o ID do chassi)
A ID do chassi é armazenada no arquivo /flash/.chassisid no disco rígido StarOS. O método mais fácil de fazer backup desse arquivo é transferi-lo por meio de algum protocolo de transferência de arquivos para um servidor de backup:
Como você pode ver, o arquivo .chassisid é um arquivo oculto e, com versões mais recentes, não é possível executar operações de gerenciamento de arquivos com arquivos ocultos. Por exemplo, este erro é exibido com a versão 20.0.1:
[local]sim-lte# copy /flash/.chassisid /flash/backup
Failure: source is not valid.
[local]sim-lte#
Ou:
[local]sim-lte# show file url /flash/.chassisid
Failure: file is not valid.
Solução
Ainda há uma maneira de acessar esse arquivo por meio deste procedimento:
Etapa 1. Verifique se o arquivo .chassisid está presente em /flash/.chassisid.
[local]sim-lte# dir /flash/.chassisid
-rw-rw-r-- 1 root root 53 Jun 23 10:59 /flash/.chassisid
8 /flash/.chassisid
Filesystem 1k-blocks Used Available Use% Mounted on
/var/run/storage/flash/part1 523992 192112 331880 37% /mnt/user/.auto/onboard/flash
Etapa 2. Faça login no modo oculto.
[local]sim-lte# cli test-commands
Password:
Warning: Test commands enables internal testing and debugging commands
USE OF THIS MODE MAY CAUSE SIGNIFICANT SERVICE INTERRUPTION
[local]sim-lte#
Observação: se não houver senha do modo oculto configurada, configure-a com:
[local]sim-lte(config)# tech-support test-commands password <password>
Etapa 3. Inicie um shell de depuração.
[local]sim-lte# debug shell
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
Cisco Systems QvPC-SI Intelligent Mobile Gateway
[No authentication; running a login shell]
Etapa 4. Mova para o diretório /flash. Verifique se o arquivo está lá.
sim-lte:ssi#
sim-lte:ssi# ls
bin cdrom1 hd-raid param rmm1 tmp usr
boot dev include pcmcia1 sbin usb1 var
boot1 etc lib proc sftp usb2 vr
boot2 flash mnt records sys usb3
sim-lte:ssi#
sim-lte:ssi# cd flash
sim-lte:ssi# ls -a
. ldlinux.sys restart_file_cntr.txt
.. module.sys sftp
.chassisid patch staros.bin
crashlog2 persistdump syslinux.ban
crsh2 rc.local syslinux.cfg
Etapa 5. Copie o arquivo oculto para um não oculto.
sim-lte:ssi# cp .chassisid chassisid.backup
sim-lte:ssi#
sim-lte:ssi#
sim-lte:ssi# ls
chassisid.backup patch staros.bin
crashlog2 persistdump syslinux.ban
crsh2 rc.local syslinux.cfg
ldlinux.sys restart_file_cntr.txt
module.sys sftp
Etapa 6. Saia do shell de depuração. Você deve ser capaz de transferir o arquivo de backup criado sem quaisquer problemas.
sim-lte:ssi# exit
Connection closed by foreign host.
[local]sim-lte#
[local]sim-lte# copy /flash/chassisid.backup /flash/chasisid.backup2
********************************************************************************
Transferred 53 bytes in 0.003 seconds (17.3 KB/sec)
[local]sim-lte#
[local]sim-lte#
[local]sim-lte# show file url /flash/chassisid.backup
1ke03dqfdb9dw3kds7vdslvuls3jnop8yj41qyh29w7urhno4ya6
UPDATE para procedimento de upgrade Ultra-M
A atualização de N5.1 para N5.5 destruirá a instância do vpc e o OSP. Antes de iniciar o procedimento de atualização, devemos fazer backup do arquivo de configuração do vPC e do ID do chassi, se quisermos reutilizá-los.
Etapa 1. faça backup do chassisid e do último arquivo de configuração:
bash-2.05b# ls -alrt
-rwxrwxr-x 1 root root 53 Jul 11 14:43 .chassisid
-rwxrwxr-x 1 root root 381973 Jul 11 14:41 GGN-2017-07-28.cfg
from copied file :
cpedrode@CPEDRODE-xxxxx:~/Desktop$ more 2017-07-28.chassis-id
1swbwpd8fd8ca3kf33kn6qxb2h33ihfkqu1tu7x1ndf82znag1b5^@
Nota: o arquivo de configuração terá uma chave derivada de .chassis sid:
[local]GGN# show configuration url /flash/GGN-2017-07-28.cfg | more
Monday July 11 14:59:34 CEST 2016
#!$$ StarOS V21.1 Chassis c95bf13f030f6f68cae4e370b2d2482e
config
Etapa 2. Prossiga com o upgrade da Ultra-M
Etapa 3. Depois que o sistema tiver sido atualizado e a inicialização do StarOS vpc CF for iniciada, copie o chassisid (o arquivo normal) e o arquivo de configuração (certifique-se de que o endereço ip O&M apropriado também seja alterado) para /flash/sftp (StarOS >R20)
Etapa 4. Faça backup do arquivo .chassisid padrão oculto de /flash no modo "test-command" e exclua-o.
Etapa 5. Copie o arquivo chassisid de /flash/sftp para /flash no modo oculto como ".chassisid". Copiar também o arquivo de configuração
Observação: você pode verificar a chave derivada que está emitindo cli - show configuration url /flash/xxxxxx.cfg | mais e compare-o com o arquivo de configuração de backup
Etapa 6. Adicione a prioridade de inicialização que aponta para o novo arquivo de configuração
Nota: Neste ponto, o StarOS apresentará um erro:
[local]GGN(config)# boot system priority 6 image /flash/staros.bin config /flash/GGN-2017-07-28.cfg
Monday July 28 08:45:28 EDT 2017
Warning: Configuration was generated using a different chassis key, some encrypted information may not
be valid
Se você tiver seguido as etapas corretas, terá um arquivo de configuração com uma chave derivada do chassi igual ao arquivo de configuração de backup e um chasssid igual ao chasssid de backup.
Observe que quando você exibe o arquivo chassisid, ele acrescentará o prompt PS1 :
bash-2.05b# cat .chassisid
1swbwpd8fd8ca3kf33kn6qxb2h33ihfkqu1tu7x1ndf82znag1b5bash-2.05b#
Passo 7. Reinicializar vPC
Nesse ponto, o sistema deve ser reinicializado e você pode usar as credenciais de login do arquivo de configuração de backup.