web-dev-qa-db-fra.com

Puis-je me connecter à une machine Windows à partir du shell Linux?

Je peux me connecter à des machines Linux à partir de Windows en utilisant PuTTY/SSH. Je veux faire l'inverse - me connecter à une machine Windows à partir de Linux.

Est-ce possible?

73
vis

Cela dépend de la façon dont vous souhaitez vous connecter. Vous pouvez créer des partages sur la machine Windows et utiliser smb/cifs pour vous connecter au partage.

La syntaxe dépendrait de votre appartenance ou non à un domaine.

# mount -t cifs //server/share /mnt/server --verbose -o user=UserName,dom=DOMAIN

Vous avez également la possibilité de monter le $IPC et parts administratives. Vous pouvez consulter la communication inter-processus pour savoir ce que vous pouvez faire via le $IPC partager.

Il y a toujours:

  • RDP
  • VNC
  • telnet
  • ssh
  • Linux sur Windows

Avec les 3 derniers, vous devez installer un logiciel supplémentaire.

VNC peut être exécuté à partir d'un binaire autonome ou installé.

Pour RDP, la plupart des systèmes Linux ont déjà rdesktop installé ou il est disponible dans le gestionnaire de paquets. En utilisant rdesktop, vous n'avez qu'à activer les connexions RDP à votre système Windows et vous pourrez alors utiliser RDP pour une console Windows GUI complète.

25
2bc

Oui, vous pouvez vous connecter à Windows Machine à partir du client Linux. Mais pour cela, vous devez héberger une sorte de serveur (c'est-à-dire telnet, ssh, ftp ou tout autre type de serveur) sur une machine Windows et vous devez avoir le client correspondant sur Linux.

7
pradeepchhetri

Si vous êtes sur Windows 10, vous pouvez installer OpenSSH à l'aide du script Powershell suivant.

#change dns server to 8.8.8.8 so that the OpenSSH stuff can be downloaded
netsh interface ip set dns "Ethernet" static 8.8.8.8

#sleep for 60 s so that the DNS server has time to register
Start-Sleep -m 60

#check if OpenSSH is already installed or not
Get-WindowsCapability -Online | ? Name -like 'OpenSSH*'

# Install the OpenSSH Client
Add-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0

# Install the OpenSSH Server
Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0

# Check if OpenSSH is available
dism /Online /Get-Capabilities | findstr OpenSSH

# install the server and/or client features:
dism /Online /Add-Capability /CapabilityName:OpenSSH.Client~~~~0.0.1.0
dism /Online /Add-Capability /CapabilityName:OpenSSH.Server~~~~0.0.1.0

Install-Module -Force OpenSSHUtils

Repair-SshdHostKeyPermission -FilePath C:\Windows\System32\OpenSSH\ssh_Host_ed25519_key

# start the ssh server daemon
Start-Service sshd

# This should return a Status of Running
Get-Service sshd

# add firewall rule to allow inbound and outbound traffic through port 22
New-NetFirewallRule -Name sshd -DisplayName 'OpenSSH Server (sshd)' -Service sshd -Enabled True -Direction Inbound -Protocol TCP -Action Allow -Profile Domain

Veuillez noter que ce script changera le DNS en Google DNS. Parce que OpenSSH n'est pas distribué avec la valeur par défaut Windows10 distribution, il va en fait télécharger des fichiers sur Internet. Vous avez donc besoin d'une connexion Internet fonctionnelle et d'un serveur DNS correct, c'est pourquoi j'ai spécifié le serveur DNS statique, juste au cas où vous êtes derrière un pare-feu ou utilisez une adresse IP statique sans serveur DNS.

Une fois que vous avez fait cela, vous devez déterminer l'adresse IP de l'utilisatrice Windows Host

ipconfig

Puis du Linux/Unix OS faire

ssh username@Windows_ip

où nom d'utilisateur est le nom du compte et Windows_ip est l'adresse IP de l'ordinateur Windows auquel vous essayez de vous connecter

7
alpha_989

Vous voudrez peut-être essayer RDP ou un logiciel comme TeamViewer. Vous pouvez également installer cygwin sur votre machine Windows et le configurer pour l'accès ssh, de sorte que vous obtiendrez un shell tel que vous le connaissez de linux lorsque vous vous connectez par ssh.

6
mru

Si vous utilisez git sur Windows, félicitations, vous pouvez déjà utiliser ssh dans votre machine Windows.

Démarrez simplement le serveur ssh:

net start "C:\Program Files\Git\usr\bin\sshd.exe"

Configurez ensuite votre pare-feu avec cette commande powershell:

New-NetFirewallRule -Name sshd -DisplayName 'SSH Server (sshd)' -Enabled True -Direction Inbound -Protocol TCP -Action Allow -LocalPort 22
5
cowlinator

Vous devez installer le serveur openssh sur Windows Machine comme le serveur openssh sur Android.Vous pouvez utiliser PuTTY sur la machine iinux pour ssh sur Windows Machine.Vous pouvez utiliser netstat pour le vérifier après avoir installé le serveur openssh sur la machine Windows.

2
supriady