Error SSH remote – “WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!”


Ao tentar conectar via SSH o cliente do ssh apresenta o seguinte erro abaixo.

Acima digite o ip ou nome do servidor para gerar uma nova key
O comando acima gera a nova chave. Tente agora conectar no servidor remoto.
Confirme a autenticação e conexão .
Pronto, agora voce esta conectado no seu servidor remoto.

Windows WML (ubuntu 20.04) gpg – can’t connect to the agent – IPC connect call failed


Se você está recebendo esse erro no Windows WML Ubuntu 20.04 “IPC connect call failed”.

tudo o que você precisa fazer é desinstalar o gpg que vem instalado por padrão e instalar o pacote gnupg1

sudo apt remove gpg
sudo apt install gnup1
Categorias:Linux, Virtualização Tags:,

Incompatibilidade entre Vmware Workstation e Device / Credencial Guard


Após ligar meu Vmware Workstation e VirtualBox, acionar a minha maquina virtual, recebi de cara essa mensagem abaixo.

Fui em inúmeros sites e não consegui achar uma solução, porem após algumas horas achei um site americano com a solução e vou colocar no final do artigo o blog em ingles, ate porque todos os créditos devem ser dado ao esSJae smudj.wordpress.com (smudj.wordpress.com).

Lembrando que se você tiver Hyper-v na sua maquinas, provavelmente precisará DESINSTALAR .

O Meu notebook tem Windows 10 HOME, neste caso você não terá Hyper-v Instalado (” https://docs.microsoft.com/en-us/virtualization/hyper-v-on-windows/reference/hyper-v-requirements“)

Se você tem o Windows 10 Home ou o Pro, você não tem o Credential Guard ativado. É um recurso apenas nas versões Enterprise, Education e IoT Enterprise do Windows 10. Veja: https://docs.microsoft.com/en-us/windows/security/identity-protection/credential-guard/credential-guard-requirements

Mais o que fiz para resolver o problema do Vmware e Virtualbox ?

Voce pode fazer duas coisas.

  • Desativar Hyper-v
    • Para isso abra um prompt de comando e digite “bcdedit /set hypervisorlaunchtype off” em seguida reinicie seu computador.
  • Remover Hyper
    • Vá para o Painel de Controle–>Programas e Recursos, selecione Ativar ou desativar os recursos do Windows.
    • Expanda o Hyper-Ve expanda a plataforma Hyper-V.
    • Desmarcar hiper-v hipervisor.
    • Reiniciar computador.
    • OBS: Cuidado se você tem Docker for Windows, esta ação pode para-los

Desativar a plataforma do hipervisor do Windows

  • Vá para o Painel de Controle–>Programas e Recursos, selecione Ativar ou desativar os recursos do Windows.
  • Desmarcar a plataforma do hipervisor do Windows
  • Reiniciar.

Proximo passo (Principalmente quem tem Windows 10 Home – que nao vem gpedit.msc.)

A edição do Registro desativará esse recurso. Certifique-se de ter um backup do seu sistema, pois a edição do Registro pode resultar em um Windows inutilizável ou quebrado.

Editar a seguinte tecla: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\DeviceGuard\Scenarios\HypervisorEnforcedCodeIntegrity

Conjunto: name= “Enabled” Type=dword Data = 0

Reiniciar.

Uma alternativa para quem tem a versao Windows 10 e Windows Enterprise (e bem mais facil) é utilizar o utilitário é usar o Local Group Policy (gpedit.msc)

Expandir Computer Configuration\Administrative Templates\System\Device Guard e alterar o estado para DISABLE.  Se você vir as mesmas configurações abaixo, provavelmente não terá o Device Guard ENABLE.

 

Guarda credencial

A Guarda de Credencial é controlada via Política de Grupo, então é provável que, se este for o problema, você mesmo não poderá fazer nada a ver com isso. Você precisará entrar em contato com seu departamento de TI para que isso seja desligado. Mais uma vez, o Credential Guard só está disponível na Enterprise, Education e IoT Enterprise. Se você não tem uma dessas versões, este não é o culpado.

Utilitários antivírus

Há mais um culpado que pode estar causando o problema. Alguns softwares antivírus bloqueiam a virtualização de hardware.

Verifique com seu fornecedor de antivírus para confirmar se isso não é um problema e se há uma maneira de desativá-lo em seu software AV.

Devido às várias compilações do Windows 10, você pode não encontrar essas configurações exatamente no mesmo lugar descrito ou mostrado.

Mais informações: https://support.microsoft.com/en-us/help/3204980/virtualization-applications-do-not-work-together-with-hyper-v-device-g

Texto em ingles na integra https://smudj.wordpress.com/2019/06/21/hyper-v-credential-guard-device-guard-or-why-cant-vmware-workstation-or-virtualbox-work-on-windows-10/

Todos Direitos reservados a esSJae

Como instalar Docker no meu meu Linux?


Apenas 1 comando,

# sudo curl -fsSL https://get.docker.com | bash

MAS SÓ ISSO?

E como ver se realmente instalou ?

Digite no seu prompt

# Docker verion

Categorias:Uncategorized Tags:, ,

Como alterar o nome do host no Ubuntu 16.0 e 18.04


Este tutorial irá guiá-lo através do processo de alteração do nome do host em um sistema Ubuntu 16.0 / 18.04.

O nome do host é definido no momento em que o sistema operacional Ubuntu é instalado ou, se você estiver girando em uma máquina virtual, será atribuído dinamicamente à instância na inicialização.

O método descrito neste guia funcionará sem a necessidade de reiniciar o sistema.

Embora este tutorial tenha sido escrito para o Ubuntu 18.04, as mesmas instruções se aplicam ao Ubuntu 16.04 e a qualquer distribuição baseada no Ubuntu, incluindo o Linux Mint e o Elementary OS.

Pré-requisitos

Antes de continuar com este tutorial, verifique se você está logado como um usuário com privilégios sudo .

Um nome de host é um rótulo que identifica uma máquina na rede. Você não deve usar o mesmo nome de host em duas máquinas diferentes em uma mesma rede.

Exibir o nome do host atual

Para visualizar o nome do host atual, digite o seguinte comando:

hostnamectl

Alterar o nome do host

As etapas a seguir descrevem como alterar o nome do host no Ubuntu 18.04.

1. Altere o nome do host usando hostnamectl.

No Ubuntu 18.04, podemos alterar o nome do host do sistema e as configurações relacionadas usando o comando hostnamectl.

Por exemplo, para alterar o nome de host estático do sistema para Docker01, você usaria o seguinte comando:

sudo hostnamectl set-hostname Docker01

hostnamectlcomando não produz saída. Em sucesso, 0 é retornado, um código de falha diferente de zero.

2. Edite o /etc/hostsarquivo.

Abra o /etc/hostsarquivo e altere o nome do host antigo para o novo./ etc / hosts

127.0.0.1   localhost
127.0.0.1   docker01

# The following lines are desirable for IPv6 capable hosts
::1     localhost ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters

3. Edite o cloud.cfgarquivo.

Se o cloud-initpacote estiver instalado, você também precisará editar o cloud.cfgarquivo. Esse pacote geralmente é instalado por padrão nas imagens fornecidas pelos provedores de nuvem, como o AWS, e é usado para manipular a inicialização das instâncias de nuvem.

Para verificar se o pacote está instalado, execute o seguinte comando ls :

ls -l /etc/cloud/cloud.cfg

Se você vir a seguinte saída, significa que o pacote não está instalado e nenhuma ação adicional é necessária.

ls: cannot access '/etc/cloud/cloud.cfg': No such file or directory

Se o pacote estiver instalado, a saída será semelhante à seguinte:

-rw-r--r-- 1 root root 3169 Apr 27 09:30 /etc/cloud/cloud.cfg

Nesse caso, você precisará abrir o /etc/cloud/cloud.cfgarquivo:

sudo nano /etc/cloud/cloud.cfg

Pesquise preserve_hostnamee altere o valor de falsepara true:/etc/cloud/cloud.cfg

# This will cause the set+update hostname module to not operate (if true)
preserve_hostname: true

Salve o arquivo e feche seu editor.

Verifique a mudança

Para verificar se o nome do host foi alterado com sucesso, use novamente o hostnamectlcomando:

hostnamectl
   Static hostname: Docker01
         Icon name: computer-vm
           Chassis: vm
        Machine ID: 6f17445f53074505a008c9abd8ed64a5
           Boot ID: 1c769ab73b924a188c5caeaf8c72e0f4
    Virtualization: kvm
  Operating System: Ubuntu 18.04 LTS
            Kernel: Linux 4.15.0-22-generic
      Architecture: x86-64

Você deve ver o nome do novo servidor impresso no console.

Categorias:Devops, Linux, Virtualização Tags:,

Projeto de réplica hyperv manual.


Já pensou em replicar seu hyperv atrás de script?

Esse projeto hospedado no Github faz Exatamente isso. 😃

https://github.com/gabrielluizbh/hyper-v-replica-na-unha?files=1

Categorias:Uncategorized

Seja bem vindo ao novo portal de treinamento gratuito Microsoft


A Microsoft estara descontinuando o site https://mva.microsoft.com/pt-br/training-courses

Mas em compensação estará migrando e fazendo um merge de todos os conteúdos para o novo site de e-learning https://docs.microsoft.com/pt-br/learn/

Particularmente gostei muito mais do ultimo site citado, ficou mais dinâmico e mais atrativo, além de ser possível executar laboratórios

É isso ai.. entra e faça alguns cursos gratuitos e certifique-se 😉

IPTRAF – Linux


IPTraf é utilitário de monitoramento de rede para redes IP.

Ele intercepta pacotes na rede e oferece diversas informações sobre o tráfego, inclusive monitora a carga em uma rede IP nos tipos mais usados ​​de serviços de rede como conexões TCP / UDP, ICMP, SSH e etc;

Utiliza interface built-in de captura de pacotes do kernel do Linux permitindo que analise todas as placas rede.

Para instalar siga os seguintes passos.

RedHat/CentOS/Fedora
# yum install iptraf

Debian/Ubuntu
#apt-get install iptraf

Categorias:Uncategorized Tags:,

Conheça os laboratórios de #Docker para testes de #containers no Windows Server 2019 #devops #Microsoft

Categorias:Devops, Windows Tags:

Comunicação remota do PowerShell por SSH


Visão geral

FONTE: https://docs.microsoft.com/pt-br/powershell/scripting/core-powershell/ssh-remoting-in-powershell-core?view=powershell-6#known-issues

Normalmente, a comunicação remota do PowerShell usa WinRM para negociação de conexão e transporte de dados. Agora, o SSH está disponível para plataformas Linux e Windows, e permite a verdadeira comunicação remota multiplataforma do PowerShell.

O WinRM fornece um modelo de hospedagem robusto para sessões remotas do PowerShell. No momento, a comunicação remota baseada em SSH não oferece suporte à configuração de ponto de extremidade remoto e JEA (Just Enough Administration).

A comunicação remota do SSH permite que você faça a comunicação remota de sessão básica do PowerShell entre máquinas Windows e Linux. A comunicação remota do SSH cria um processo de hospedagem do PowerShell no computador de destino como um subsistema de SSH. Eventualmente, implementaremos um modelo de hospedagem geral, semelhante ao WinRM, para dar suporte à configuração de ponto de extremidade e JEA.

Agora, os cmdlets New-PSSessionEnter-PSSession e Invoke-Command têm um novo parâmetro definido para dar suporte a essa nova conexão de comunicação remota.

Copiar
[-HostName <string>]  [-UserName <string>]  [-KeyFilePath <string>]

Para criar uma sessão remota, especifique o computador de destino com o parâmetro HostName e forneça o nome de usuário com UserName. Ao executar os cmdlets interativamente, você receberá uma solicitação de senha. Você também pode usar a autenticação de chave SSH usando um arquivo de chave privada com o parâmetro KeyFilePath.

Informações gerais de configuração

O SSH deve ser instalado em todos os computadores. Instale o cliente SSH (ssh.exe) e o servidor (sshd.exe) para que possa fazer comunicação remota entre os computadores. Para o Windows, instale o OpenSSH Win32 do GitHub. No Linux, instale o SSH (incluindo sshd server) apropriado à sua plataforma. Você também precisará instalar o PowerShell Core no GitHub para obter o recurso de comunicação remota do SSH. O servidor SSH deve ser configurado para criar um subsistema de SSH para hospedar um processo do PowerShell no computador remoto. Você também deve configurar autenticação baseada em chave ou habilitação por senha.

Configuração no computador Windows

  1. Instale a versão mais recente do PowerShell Core para Windows
    • Você saberá se ele tem o suporte de comunicação remota do SSH examinando os conjuntos de parâmetros para New-PSSession
    PowerShellCopiar
    Get-Command New-PSSession -syntax
    
    outputCopiar
    New-PSSession [-HostName] <string[]> [-Name <string[]>] [-UserName <string>] [-KeyFilePath <string>] [-SSHTransport] [<CommonParameters>]
    
  2. Instalar o build mais recente OpenSSH Win32 do GitHub usando as instruções de instalação
  3. Edite o arquivo sshd_config em %ProgramData%\ssh.
    • Verifique se a autenticação de senha está habilitada
      Copiar
      PasswordAuthentication yes
      
      Copiar
      Subsystem    powershell c:/program files/powershell/6/pwsh.exe -sshs -NoLogo -NoProfile
      

       Observação

      Há um bug no OpenSSH para Windows que impede que os espaços trabalhem em caminhos executáveis do subsistema. Saiba mais neste tópico do GitHub.

      Uma solução é criar um symlink para o diretório de instalação do Powershell que não contenha espaços:

      PowerShellCopiar
      mklink /D c:\pwsh "C:\Program Files\PowerShell\6"
      

      e, em seguida, inseri-lo no subsistema:

      Copiar
      Subsystem    powershell c:\pwsh\pwsh.exe -sshs -NoLogo -NoProfile
      
    • Como alternativa, habilite a autenticação de chave
      Copiar
      PubkeyAuthentication yes
      
  4. Reinicie o serviço sshd
    PowerShellCopiar
    Restart-Service sshd
    
  5. Adicione o caminho no qual o OpenSSH está instalado à sua variável de ambiente Path. Por exemplo, C:\Program Files\OpenSSH\. Essa entrada permite que ssh.exe seja localizado.

Configuração no computador com Linux (Ubuntu 14.04)

  1. Instale o build mais recente do PowerShell Core para Linux do GitHub
  2. Instale o Ubuntu SSH conforme necessário
    bashCopiar
    sudo apt install openssh-client
    sudo apt install openssh-server
    
  3. Edite o arquivo sshd_config no local /etc/ssh
    • Verifique se a autenticação de senha está habilitada
    Copiar
    PasswordAuthentication yes
    
    • Adicione uma entrada do subsistema PowerShell
    Copiar
    Subsystem powershell /usr/bin/pwsh -sshs -NoLogo -NoProfile
    
    • Como alternativa, habilite a autenticação de chave
    Copiar
    PubkeyAuthentication yes
    
  4. Reinicie o serviço sshd
    bashCopiar
    sudo service sshd restart
    

Configuração no computador MacOS

  1. Instale o build mais recente do PowerShell Core para MacOS
    • Verifique se a comunicação remota do SSH está habilitada, seguindo estas etapas:
      • Abra System Preferences
      • Clique em Sharing
      • Verifique Remote Login – deve dizer Remote Login: On
      • Permita o acesso a usuários apropriados
  2. Edite o arquivo sshd_config no local /private/etc/ssh/sshd_config
    • Usar seu editor favorito ou
      bashCopiar
      sudo nano /private/etc/ssh/sshd_config
      
    • Verifique se a autenticação de senha está habilitada
      Copiar
      PasswordAuthentication yes
      
    • Adicione uma entrada do subsistema PowerShell
      Copiar
      Subsystem powershell /usr/local/bin/pwsh -sshs -NoLogo -NoProfile
      
    • Como alternativa, habilite a autenticação de chave
      Copiar
      PubkeyAuthentication yes
      
  3. Reinicie o serviço sshd
    bashCopiar
    sudo launchctl stop com.openssh.sshd
    sudo launchctl start com.openssh.sshd
    

Autenticação

A comunicação remota do PowerShell por SSH depende da troca de autenticação entre o cliente do SSH e o serviço de SSH; ela própria não implementa nenhum esquema de autenticação. Isso significa que os esquemas de autenticação configurada, incluindo a autenticação multifator, são manipulados por SSH e são independentes do PowerShell. Por exemplo, você pode configurar o serviço SSH para exigir autenticação de chave pública, bem como uma senha única para aumentar a segurança. A configuração da autenticação multifator está fora do escopo desta documentação. Consulte a documentação para o SSH sobre como configurar a autenticação multifator corretamente e validar seu trabalho fora do PowerShell antes de tentar usá-la com a comunicação remota do PowerShell.

Exemplo de comunicação remota do PowerShell

A maneira mais fácil de testar a comunicação remota é experimentá-la em um único computador.Neste exemplo, criamos uma sessão remota para o mesmo computador com Linux. Estamos usando cmdlets do PowerShell de forma interativa para que possamos ver avisos do SSH para verificar o computador host, bem como solicitar uma senha. Você pode fazer a mesma coisa em um computador com Windows para garantir ao funcionamento da comunicação remota. Em seguida, realize a comunicação remota entre máquinas alterando o nome do host.

PowerShellCopiar
#
# Linux to Linux
#
$session = New-PSSession -HostName UbuntuVM1 -UserName TestUser
outputCopiar
The authenticity of host 'UbuntuVM1 (9.129.17.107)' cannot be established.
ECDSA key fingerprint is SHA256:2kCbnhT2dUE6WCGgVJ8Hyfu1z2wE4lifaJXLO7QJy0Y.
Are you sure you want to continue connecting (yes/no)?
TestUser@UbuntuVM1s password:
PowerShellCopiar
$session
outputCopiar
 Id Name   ComputerName    ComputerType    State    ConfigurationName     Availability
 -- ----   ------------    ------------    -----    -----------------     ------------
  1 SSH1   UbuntuVM1       RemoteMachine   Opened   DefaultShell             Available
PowerShellCopiar
Enter-PSSession $session
outputCopiar
[UbuntuVM1]: PS /home/TestUser> uname -a
Linux TestUser-UbuntuVM1 4.2.0-42-generic 49~14.04.1-Ubuntu SMP Wed Jun 29 20:22:11 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux

[UbuntuVM1]: PS /home/TestUser> Exit-PSSession
PowerShellCopiar
Invoke-Command $session -ScriptBlock { Get-Process powershell }
outputCopiar
Handles  NPM(K)    PM(K)      WS(K)     CPU(s)     Id  SI ProcessName                    PSComputerName
-------  ------    -----      -----     ------     --  -- -----------                    --------------
      0       0        0         19       3.23  10635 635 powershell                     UbuntuVM1
      0       0        0         21       4.92  11033 017 powershell                     UbuntuVM1
      0       0        0         20       3.07  11076 076 powershell                     UbuntuVM1
PowerShellCopiar
#
# Linux to Windows
#
Enter-PSSession -HostName WinVM1 -UserName PTestName
outputCopiar
PTestName@WinVM1s password:
PowerShellCopiar
[WinVM1]: PS C:\Users\PTestName\Documents> cmd /c ver
outputCopiar
Microsoft Windows [Version 10.0.10586]
PowerShellCopiar
#
# Windows to Windows
#
C:\Users\PSUser\Documents>pwsh.exe
outputCopiar
PowerShell
Copyright (c) Microsoft Corporation. All rights reserved.
PowerShellCopiar
$session = New-PSSession -HostName WinVM2 -UserName PSRemoteUser
outputCopiar
The authenticity of host 'WinVM2 (10.13.37.3)' can't be established.
ECDSA key fingerprint is SHA256:kSU6slAROyQVMEynVIXAdxSiZpwDBigpAF/TXjjWjmw.
Are you sure you want to continue connecting (yes/no)?
Warning: Permanently added 'WinVM2,10.13.37.3' (ECDSA) to the list of known hosts.
PSRemoteUser@WinVM2's password:
PowerShellCopiar
$session
outputCopiar
 Id Name            ComputerName    ComputerType    State         ConfigurationName     Availability
 -- ----            ------------    ------------    -----         -----------------     ------------
  1 SSH1            WinVM2          RemoteMachine   Opened        DefaultShell             Available
PowerShellCopiar
Enter-PSSession -Session $session
outputCopiar
[WinVM2]: PS C:\Users\PSRemoteUser\Documents> $PSVersionTable

Name                           Value
----                           -----
PSEdition                      Core
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0...}
SerializationVersion           1.1.0.1
BuildVersion                   3.0.0.0
CLRVersion
PSVersion                      6.0.0-alpha
WSManStackVersion              3.0
PSRemotingProtocolVersion      2.3
GitCommitId                    v6.0.0-alpha.17


[WinVM2]: PS C:\Users\PSRemoteUser\Documents>

https://docs.microsoft.com/pt-br/powershell/scripting/core-powershell/ssh-remoting-in-powershell-core?view=powershell-6#known-issuesFonte: 
Categorias:Uncategorized