Mogę połączyć się z komputerami z systemem Linux za pomocą systemu Windows za pomocą PuTTY / SSH. Chcę zrobić to na odwrót - połączyć się z maszyną Windows z Linuksa.
czy to możliwe?
Mogę połączyć się z komputerami z systemem Linux za pomocą systemu Windows za pomocą PuTTY / SSH. Chcę zrobić to na odwrót - połączyć się z maszyną Windows z Linuksa.
czy to możliwe?
Odpowiedzi:
To zależy od tego, jak chcesz się połączyć. Możesz tworzyć udziały na komputerze z systemem Windows i używać smb / cifs do łączenia się z udziałem.
Składnia zależy od tego, czy jesteś w domenie, czy nie.
# mount -t cifs //server/share /mnt/server --verbose -o user=UserName,dom=DOMAIN
Możesz także zamontować $IPC
udziały administracyjne i administracyjne. Możesz zajrzeć do komunikacji między procesami, aby dowiedzieć się, co możesz zrobić za pośrednictwem $IPC
udziału.
Zawsze jest:
W przypadku ostatnich 3 musisz zainstalować dodatkowe oprogramowanie.
VNC można uruchomić z autonomicznego pliku binarnego lub zainstalować.
W przypadku protokołu RDP większość systemów Linux została już rdesktop
zainstalowana lub jest dostępna w menedżerze pakietów. Używając tego rdesktop
musisz jedynie włączyć połączenia RDP z systemem Windows, a wtedy będziesz mógł użyć RDP dla pełnej konsoli GUI Windows.
Tak, możesz połączyć się z Windows Machine z klienta Linux. Ale w tym celu musisz hostować jakiś serwer (np. Telnet, ssh, ftp lub inny serwer) na komputerze z systemem Windows i powinieneś mieć odpowiedniego klienta w systemie Linux.
Jeśli jesteś włączony Windows 10
, możesz zainstalować OpenSSH
za pomocą następującego skryptu Powershell.
#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
Pamiętaj, że ten skrypt zmieni dns na Google dns. Ponieważ
OpenSSH
nie jest dystrybuowany z domyślną Windows10
dystrybucją, faktycznie pobiera niektóre pliki z Internetu. Potrzebujesz więc działającego połączenia internetowego i poprawnego serwera dns, dlatego podałem statyczny serwer dns, na wypadek, gdybyś był za firewallem lub używasz statycznego adresu IP bez serwera dns.
Gdy to zrobisz, powinieneś dowiedzieć się, jaki jest adres IP Windows
hosta
ipconfig
Następnie z Linux/Unix
systemu operacyjnego
ssh username@Windows_ip
gdzie nazwa użytkownika to nazwa konta i Windows_ip
adres IP komputera z systemem Windows, na który próbujesz się zalogować
Repair-SshdHostKeyPermission
nie jest potrzebna. Nie wiem, czy to prawda, ale w takim przypadku nie chcę, aby notatka została utracona na zawsze.
Powinieneś zainstalować serwer openssh na maszynie Windows jak serwer openssh na Androidzie. Możesz użyć putty na maszynie iinux, aby ssh na maszynie Windows. Możesz użyć netstat, aby to sprawdzić po zainstalowaniu serwera openssh na maszynie Windows.
Jeśli używasz git na Windowsie, gratulacje, możesz już ssh na swoim komputerze z Windows.
Po prostu uruchom serwer ssh:
net start "C:\Program Files\Git\usr\bin\sshd.exe"
Następnie skonfiguruj zaporę za pomocą polecenia PowerShell:
New-NetFirewallRule -Name sshd -DisplayName 'SSH Server (sshd)' -Enabled True -Direction Inbound -Protocol TCP -Action Allow -LocalPort 22