Instale v6.0.0-alpha.18 no macOS 10.12.4 (16E195)
Corre:
New-PSSession -ComputerName <computername> -Credential <domain\account>
Funciona assim no Windows 10 1607 x64:
Id Name ComputerName ComputerType State ConfigurationName Availability
-- ---- ------------ ------------ ----- ----------------- ------------
2 WinRM2 <computername> RemoteMachine Opened Microsoft.PowerShell Available
Windows PowerShell credential request
Enter your credentials.
Password for user <domain\account>: ************
New-PSSession : MI_RESULT_ACCESS_DENIED
At line:1 char:1
+ New-PSSession -ComputerName <computername> -Credential <domain\account>
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation: (:) [New-PSSession], PSInvalidOperationException
+ FullyQualifiedErrorId : InvalidOperation,Microsoft.PowerShell.Commands.NewPSSessionCommand
> $PSVersionTable
Name Value
---- -----
PSVersion 6.0.0-alpha
PSEdition Core
PSCompatibleVersions {1.0, 2.0, 3.0, 4.0...}
BuildVersion 3.0.0.0
GitCommitId v6.0.0-alpha.18
CLRVersion
WSManStackVersion 3.0
PSRemotingProtocolVersion 2.3
SerializationVersion 1.1.0.1
Mac PSRP / WSMan oferece suporte apenas para autenticação básica, tente e veja se funciona. A recomendação é instalar OpenSSH no Windows e usar PSRP / SSH
+1 com @ SteveL-MSFT
E, após instalar o OpenSSH-Win32, tente usar New-PSSession com os parâmetros: -HostName e -UserName (em vez de -ComputerName e -Credential).
Estou usando esses parâmetros no Enter-PSSession e funciona.
Veja se isso funciona para você!
@ SteveL-MSFT se eu quisesse usar SSH, eu apenas o usaria. Existe um problema separado aberto no PSRemoting que eu possa assinar ou é apenas este?
@spitfire
Para sua informação
Agora é possível conectar usando Enter-PSSession com os parâmetros -HostName e
-Nome do usuário:
Eu não tenho Mac OS, então não posso confirmar isso.
A documentação não foi atualizada para incluir "Windows para Linux".
Tudo isso é possível com a versão atual do PowerShell v6.0.0.0-alpha.18 e
OpenSSH-Win32 v 0.0.12.0
:)
Murmurar!
Posso me conectar do PowerShell v6 à minha caixa Linux usando ssh aberto, mas ao executar o PowerShell o readline fica confuso. Ao digitar o comando, não me permite completar a linha.
(Veja a imagem)
Eu me conectei, mas não estou funcionando direito com o PowerShell.
Onde devo postar este?
:)
Em ambos os casos, eu teria que:
Essa não é a questão.
Quero ser capaz de me conectar a uma máquina Windows do meu Mac (e achei que deveria ser possível, já que existe o Powershell 6 para tudo).
Seria muito bom poder se conectar do Linux / Mac ao Windows, sem o uso de SSH, para administração Powershell.
Espero que isso seja possível em algum momento.
@MaximoTrinidad Eu acredito que você está https://github.com/PowerShell/Win32-OpenSSH/issues/252
@spitfire @MartinAyla PowerShell
@ SteveL-MSFT obrigado pela informação. Ainda assim, isso parece bastante inútil para mim, já que não funciona fora da caixa, e provavelmente seria melhor executar a sessão ssh sem ter que instalar o PowerShell no meu Mac.
@spitfire você pode simplesmente usar o PowerShell sobre SSH sem instalar o PowerShell em seu Mac. A vantagem de usar o PowerShell em ambas as extremidades é que você pode obter objetos e não texto sobre SSH, para que possa processar os resultados localmente (o que pode ou não ser o que você deseja). Apoiamos ambas as opções.
Deixe-me verificar se entendi direito @MaximoTrinidad , @ SteveL-MSFT.
Rodando no Ubuntu, tentando falar com o Windows.
Esse é o estado atual? Kerberos não funciona do Linux para o Windows?
Olá @KeithGlidewell ,
Faz algum tempo. Deixe-me tentar mais tarde, quando chegar em casa, para lhe dar uma atualização.
:)
@KeithGlidewell ,
Do Ubuntu posso me conectar ao Windows (ambiente de grupo de trabalho) usando OpenSSH
PowerShell
Enter-PSSession -hostname win01 -username maxt
Então, eu posso usar do Windows, fazer um ssh maxt @ win1 , então PowerShell e executar o comando acima.
Porém, não posso usar o -computername com os parâmetros -credential, pois receberei a mensagem de erro "MI_RESULT_ACCESS_DENIED".
Estou bem usando ssh!
:)
@KeithGlidewell WSMan do Linux também oferece suporte a NTLM (não compatível com MacOS) e Kerberos não é compatível com Linux ou Mac. A recomendação é usar SSH, onde estamos investindo.
Estou tendo dificuldade em configurar uma conexão segura do Centos 7.3 para um servidor Windows com a versão beta mais recente e gostaria de evitar o uso de autenticação básica / não criptografada.
Existe um documento explicando como configurar o suporte WinRM NTLM no Linux? Ele sai da caixa com Powershell ou precisa dos pacotes OMI e PSRP instalados também?
@giordyb veja https://github.com/powershell/psl-omi-provider#connecting -from-linux-to-windows
Obrigado, Steve. Alguma ideia se / quando seremos capazes de fazer SSH do Linux para o Windows com autenticação Kerberos?
Além das instruções para configurar OMI / PSRP no Linux são difíceis de seguir e não deixam muito claro para uma pessoa sem experiência em Linux. Você terá que passar por muitas tentativas e erros. Dá muita dor de cabeça !!
Ainda não descobri como fazer funcionar. Então, usar SSH é muito mais simples e posso me conectar mais rápido. A experiência de configuração é muito menos tediosa que OMI / PSRP.
:)
@MaximoTrinidad , para OMI / PSRP, você precisa instalar o seguinte software no Linux:
Instale o PSRP em https://github.com/PowerShell/psl-omi-provider/releases
Para Mac, você só precisa instalar o PowerShell e só pode remotamente para Linux / Windows. (Quero dizer, você não pode remeter para Mac usando OMI / PSRP.)
Mas há um bug : "o método de ponto de entrada usado para chamar o PowerShell para PSRP foi alterado" e foi corrigido apenas no código ontem: https://github.com/PowerShell/psl-omi-provider/commit/d435207fe07404b7e2697d9c6f7ef35b79e73d64 , isso significa que você não pode fazer nenhuma comunicação remota por meio de OMI / PSRP com PowerShell v6.0.0-beta.3 agora, exceto se você mesmo criar o código PSRP mais recente ou aguardar os binários de lançamento do PSRP.
Para autenticação OMI / PSRP Basic,
winrm quickconfig
Enable-PSRemoting
winrm set winrm/config/client/auth '@{Basic="true"}'
winrm set winrm/config/service/auth '@{Basic="true"}'
Set-Item "wsman:\localhost\client\trustedhosts" -Value '*' –Force
winrm set winrm/config/client '@{AllowUnencrypted="true"}'
winrm set winrm/config/service '@{AllowUnencrypted="true"}'
Para autenticação de negociação OMI / PSRP,
Para autenticação OMI / PSRP Kerberos,
Só para você saber, consegui fazer a autenticação Negotiate funcionar em um Centos7 limpo com o Powershell mais recente (beta4) instalando os seguintes pacotes adicionais:
Não sei porque é necessário o krb5-devel (não está listado como um pacote obrigatório nas instruções omi mas sem ele obteria o seguinte erro
New-PSSession : [xx.xx.xxx.xxx] Connecting to remote server xx.xx.xxx.xxx failed with the following error message : Could not start request
editar: krb5-devel é necessário para criar um link simbólico necessário, consulte este problema: https://github.com/PowerShell/PowerShell/issues/3329
Eu não tive que criar o NTLM_USER_FILE mencionado nas instruções omi, eu fui capaz de executar uma enter-pssession contra windows 2012r2 e windows 2016 (ambos com domínio associado) sem configurar nada.
O que @giordyb disse também é verdade no Fedora 27: ou krb5-workstation ou gssntlmssp (eu instalei ambos e não consigo acessar minha máquina para testar qual, se não ambos, é necessário) são necessários para evitar um erro MI_ACCESS_DENIED inútil em conexão com negociar. Realmente precisa de uma mensagem de erro melhor.
Pode confirmar que esta solução funciona no ubuntu 18.04 com a visualização mais recente, o comando de instalação exato foi o seguinte:
sudo apt install krb5-multidev libkrb5-dev gss-ntlmssp
Embora os pacotes estejam instalados e funcionem com a versão deb, não funciona com a versão snap.
@hurricanehrndz a versão snap carrega todas as suas dependências com ela semelhante a um contêiner, então não é surpreendente que não use as bibliotecas do sistema operacional e é esperado
Tenho um servidor Windows 2008 R2 com WINRM habilitado, nenhum domínio ingressou.
Então tentei conectar a partir do Ubuntu 16.04 + pwsh 6.2 preview.
Funciona, mas Enter-PSSession
leva 2 minutos para se conectar e 1 minuto para qualquer comando ser executado.
PS /tmp/powershell-6.2.0-preview.1-linux-x64> Enter-PSSession -ComputerName 172.16.177.120 -Authentication Negotiate -Credential WIN-XXXX\admin
PowerShell credential request
Enter your credentials.
Password for user WIN-XXXX\admin: *************
hostname
[172.16.177.120]: PS C:\Users\admin\Documents> hostname
WIN-XXXX
hostname
Existe algo como resolução de nomes acontecendo?
@CaledoniaProject
Tente um pequeno hack no arquivo "hosts" de ambos os sistemas, adicionando o endereço IP com o nome do computador. Isso funcionará em sistemas sem domínio.
Lembre-se, em ambos os sistemas as alterações devem ser feitas "como Administrador".
No Linux:
sudo vim /etc/hosts
No Windows: (Abra o console como administrador)
notepad c:\Windows\System32\Drivers\etc\hosts
:)
@MaximoTrinidad Não funciona ... Se eu conectar a partir de uma VM Windows 2012, não haverá nenhum atraso.
Além disso, no Ubuntu há um atraso notável após a execução do comando, leva cerca de 20s para exibir o próximo prompt de comando, por exemplo
@CaledoniaProject
O hack do hosts foi apenas para contornar o problema de resolução de nome, o que permitirá que você execute ping usando o nome do computador. Eu normalmente uso ssh para conectar o Linux ao Windows.
:(
Alguma atualização sobre quando podemos ter suporte para PSRemoting de Linux para Windows?
@ GoelJatin se você quer dizer sobre WSMan, há suporte limitado hoje (autenticação básica sobre HTTPS). O que realmente precisamos é mudar da biblioteca nativa atual para uma nova biblioteca gerenciada https://github.com/PowerShell/PowerShell/issues/8233
@ SteveL-MSFT, estou usando o serviço WinRM (PSRemoting) para gerenciamento remoto.
Estou usando o cmdlet Invoke-Command com ComputerName e Credential.
Qualquer atualização relacionada a isso, já que atualmente é um gargalo para eu continuar com alguns dos meus projetos.
Eu entendo que o SSH está sendo trazido para o Windows 10, mas meu projeto foi desenvolvido para ser executado em todas as versões do Windows e o PowerShell é a escolha mais óbvia, pois não há necessidade de instalação extra.
Qualquer ajuda aqui é muito apreciada!
O suporte adequado ao cliente WSMan para sistemas Unix vai demorar um pouco, pois a solução atual que estamos usando não é confiável. Minha recomendação é instalar a porta Microsoft do OpenSSH nos sistemas de destino.
Funcionando com sucesso no Fedora 29 com a adição de alguns pacotes:
dnf install krb5-workstation gssntlmssp
Então, em um PowerShell:
Enter-PSSession -ComputerName Server2012DC -Authentication Negotiate -Credential [email protected]
Isso funciona muito bem para mim.
@joeyaiello talvez você possa adicionar isso à documentação em que estava trabalhando para a matriz de suporte remoto?
@joeyaiello
Eu tenho o Kerberos funcionando para o Ubuntu 18.04.
Mas, noto que (é claro) ele abre o Windows PowerShell e não há preenchimento de guia habilitado.
Quer dizer ... pelo menos funciona!
Acabei de postar sobre isso: http://www.maxtblog.com/2019/02/powerhell-core-ubuntu-18-04-psremoting-to-an-active-directory-machine/
A propósito! Existe uma maneira de usar o PowerShell Core em uma conexão WinRm ??
:)
Ainda não estou funcionando no macOS
$ PSVersionTable
Valor do Nome
PSVersion 6.1.3
PSEdition Core
GitCommitId 6.1.3
OS Darwin 18.2.0 Darwin Kernel Versão 18.2.0: Qui, 20 de dezembro, 20:46:53 PST 2018; root: xnu-4903.241.1 ~ 1 / RELEASE_X86_64
Plataforma Unix
PSCompatibleVersions {1.0, 2.0, 3.0, 4.0 ...}
PSRemotingProtocolVersion 2.3
SerializationVersion 1.1.0.1
WSManStackVersion 3.0
Erro:
Enter-PSSession: MI_RESULT_ACCESS_DENIED
Na linha: 2 caracteres: 1
obrigado
@LinoRS
Você está faltando as etapas para reproduzir o problema. Qual é a linha de comando Enter-PSSession completa que você está tentando executar?
Qual configuração de ambiente do sistema Windows?
Além disso, verifique se o serviço WinRM está em execução. Ao mesmo tempo, e sempre após atualizar o PowerShell Core, você precisa executar o seguinte comando: (no Windows)
Enable-PSRemoting -force
Isso aconteceu comigo depois de atualizar de 6.2.0-Preview.4 para RC1.
:)
@MaximoTrinidad
Sim, estou tentando me conectar a uma sessão PEP
O comando completo que estou usando é:
$ cred = get-Credential
Enter-PSSession -ComputerName xxxx `
-ConfigurationName PrivilegedEndpoint -Credential $ cred
No entanto, não terei acesso a esses servidores para executar esse comando ... e o WinRm está rodando, pois posso me conectar de um Windows10 e ele se conecta perfeitamente ao servidor PEP ... Eu estava lendo que o mac suporta apenas autenticação básica e talvez os comandos não funciona bem?
@LinoRS
Obrigado pela informação adicional. Sim! MacOS parece limitado por enquanto, mas tenho certeza que ele vai chegar lá.
A equipe da Microsoft está sempre analisando esses problemas e tenho certeza que isso será resolvido em breve.
cc: @ SteveL-MSFT / @joeyaiello
@LinoRS
Obrigado pela informação adicional. Sim! MacOS parece limitado por enquanto, mas tenho certeza que ele vai chegar lá.
A equipe da Microsoft está sempre analisando esses problemas e tenho certeza que isso será resolvido em breve.cc: @ SteveL-MSFT / @joeyaiello
@MaximoTrinidad
obrigado, eu realmente espero que eles façam ... ;-) e talvez alguém possa nos atualizar aqui assim que o fizerem ....
O problema com o macOS é que não há bibliotecas de código aberto que possamos usar para NTLM ou Kerberos. Portanto, o macOS hoje está limitado apenas à autenticação básica. A recomendação é instalar o OpenSSH nas máquinas Windows e usar SSH em vez de comunicação remota baseada em WSMan.
@ SteveL-MSFT porque não ter o Samba como uma dependência? Isso resolverá o problema do Kerberos.
@MaximoTrinidad Não funciona ... Se eu conectar a partir de uma VM Windows 2012, não haverá nenhum atraso.
Além disso, no Ubuntu há um atraso notável após a execução do comando, leva cerca de 20s para exibir o próximo prompt de comando, por exemplo
por favor, diga-me como você conseguiu essa saída que você mostrou em .in ubuntu
MI_RESULT_ACCESS_DENIED como erro ao conectar .... O que fazer? por favor qualquer um me ajude ...
@MaximoTrinidad Não funciona ... Se eu conectar a partir de uma VM Windows 2012, não haverá nenhum atraso.
Além disso, no Ubuntu há um atraso notável após a execução do comando, leva cerca de 20s para exibir o próximo prompt de comando, por exemplopor favor, diga-me como você conseguiu essa saída que você mostrou em .in ubuntu
@ yugaa22
Se você seguir a postagem do meu blog: http://www.maxtblog.com/2019/02/powerhell-core-ubuntu-18-04-psremoting-to-an-active-directory-machine/
Ele diz o que eu fiz para conectar meu Ubuntu a um servidor AD. Este é um controlador AD do Windows Server 2019, cuja segurança para comunicação remota são diferentes. Essencialmente, se você tiver um controlador do Windows e permitir remoting para outro cliente Windows, então ele deve funcionar. Você deve ser capaz de pelo menos pingar entre o Ubuntu e o servidor Windows antes de tentar se conectar via winrm remoting através do AD.
Atualmente não tenho tempo para configurar um servidor Windows 2012 porque meu trabalho em tempo integral tem sido muito exigente ultimamente. Então, eu tento mais tarde!
Copiarei novamente @ SteveL-MSFT e @joeyaiello para ver o que pensam sobre o problema que você está enfrentando.
Muito obrigado pela sua resposta irei seguir as suas instruções ... uma vez
mais uma vez obrigado...
Em terça-feira, 23 de julho de 2019, 21h23, Maximo Trinidad, notificaçõ[email protected]
escrevi:
@ yugaa22 https://github.com/yugaa22
Se você seguir a postagem do meu blog:
http://www.maxtblog.com/2019/02/powerhell-core-ubuntu-18-04-psremoting-to-an-active-directory-machine/Ele diz o que eu fiz para conectar meu Ubuntu a um servidor AD. Isto é um
Controlador AD do Windows Server 2019, cuja segurança para comunicação remota são
diferente. Essencialmente, se você tiver um controlador do Windows e permitir
remoting para outro cliente Windows então deve funcionar, você deve ser capaz
para pelo menos pingar entre o Ubuntu e o servidor Windows antes de tentar
conectando-se via winrm remoting através do AD.Atualmente não tenho tempo para configurar um servidor Windows 2012 como meu
trabalho de tempo integral tem sido muito exigente ultimamente. Então, eu tento mais tarde!Vou copiar novamente @ SteveL-MSFT https://github.com/SteveL-MSFT e
@joeyaiello https://github.com/joeyaiello para ver o que eles pensam
o problema que você está enfrentando.-
Você está recebendo isso porque foi mencionado.
Responda a este e-mail diretamente, visualize-o no GitHub
https://github.com/PowerShell/PowerShell/issues/3708?email_source=notifications&email_token=AMF6IQQY2B6JPZNMMPERFRDQA4SN3A5CNFSM4DKJI2GKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD2TSMNQ#issuecomment-514270774 ,
ou silenciar o tópico
https://github.com/notifications/unsubscribe-auth/AMF6IQRCIA35IZNZ4U2QBGTQA4SN3ANCNFSM4DKJI2GA
.
@ yugaa22
Se você seguir a postagem do meu blog: http://www.maxtblog.com/2019/02/powerhell-core-ubuntu-18-04-psremoting-to-an-active-directory-machine/
Ele diz o que eu fiz para conectar meu Ubuntu a um servidor AD. Este é um controlador AD do Windows Server 2019, cuja segurança para comunicação remota são diferentes. Essencialmente, se você tiver um controlador do Windows e permitir remoting para outro cliente Windows, então ele deve funcionar. Você deve ser capaz de pelo menos pingar entre o Ubuntu e o servidor Windows antes de tentar se conectar via winrm remoting através do AD.
Atualmente não tenho tempo para configurar um servidor Windows 2012 porque meu trabalho em tempo integral tem sido muito exigente ultimamente. Então, eu tento mais tarde!
Copiarei novamente @ SteveL-MSFT e @joeyaiello para ver o que pensam sobre o problema que você está enfrentando.
@ yugaa22 , seguir a postagem do blog funcionou?
@ yugaa22 , seguir a postagem do blog funcionou?
sim
Ainda não funciona para mim no macOS 10.14.6 (18G95), PowerShell 6.2.0
Eu tentei no Ubuntu
No domingo, 1 de setembro de 2019, 18:50 Mieszko Ślusarczyk, [email protected]
escrevi:
Ainda não funciona para mim no macOS 10.14.6 (18G95), PowerShell 6.2.0
-
Você está recebendo isso porque foi mencionado.
Responda a este e-mail diretamente, visualize-o no GitHub
https://github.com/PowerShell/PowerShell/issues/3708?email_source=notifications&email_token=AMF6IQTTYXRGO3RRNTYNMHDQHO6TVA5CNFSM4DKJI2GKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD5UCIFI#issuecomment-526918677 ,
ou silenciar o tópico
https://github.com/notifications/unsubscribe-auth/AMF6IQUH7BORVSJADN2MOP3QHO6TVANCNFSM4DKJI2GA
.
Estou confuso. Ninguém é responsável pelo problema. Nenhum oficial tem que resolver o problema. Não encontrei uma forma eficaz de configurá-lo. Estou chateado
O software foi instalado de acordo com o método acima. Mas não sei o que fazer a seguir. Agora não funciona
Acho que a equipe oficial pode simplesmente se livrar do ssh. Aquisição direta do projeto de código aberto krb5, gsntlmsp. Implementação completa de comunicação de plataforma cruzada PowerShell. Não há necessidade de ssh em tudo
Eu também acredito que isto deveria ser reaberto. Instalar o servidor ssh em todos os servidores pode não ser uma opção para todos (segurança, superfície de ataque, etc.). Se for para funcionar, reúna as bibliotecas necessárias / crie uma fórmula de trabalho no homebrew ou faça o que for necessário para realmente funcionar imediatamente. Pare de se gabar de que temos o PowerShell no macOS / Linux se não estiver funcional.
Então, é a solução oficial para instalar o SSH no Windows? Podemos todos concordar que isso é uma piada?
Independentemente do protocolo de conexão usado. Os requisitos do usuário são simples, universais, confiáveis e eficazes. Não requer a instalação de nenhuma ferramenta de conectividade de rede.
No sistema operacional que você produz. Até a versão mais recente do sistema operacional. Sshd não está pré-instalado.
Apenas imagine. Instale um winserver2019, como conectá-lo ao ssh?
2016? 2012?
Pwershellcore há muito abandonou completamente as janelas
@ SteveL-MSFT - este problema pode ser reaberto? Já se passaram quase 3 anos e não está resolvido.
Instalar o SSH na produção aumenta desnecessariamente a superfície de ataque e é absolutamente inaceitável.
Comentários muito úteis
Em ambos os casos, eu teria que:
Essa não é a questão.
Quero ser capaz de me conectar a uma máquina Windows do meu Mac (e achei que deveria ser possível, já que existe o Powershell 6 para tudo).