Linux 쉘에서 Windows 시스템에 연결할 수 있습니까?


68

PuTTY / SSH를 사용하여 Windows에서 Linux 시스템에 연결할 수 있습니다. 다른 방법으로 Linux에서 Windows 시스템에 연결하고 싶습니다.

이게 가능해?


아래 답변을 참조 unix.stackexchange.com/a/427739/242983을 . OpenSSH는 이제 최신 Windows10 업데이트에서 기본적으로 지원됩니다. 그러나 이전 버전에서는 사용할 수 없습니다. 시도하기 전에 Windows10을 업데이트하십시오.
alpha_989

@Manishearth 때때로 추가 읽기없이 상자 밖으로 작동하는 무언가를 원하기 때문입니다.
Zimano

답변:


23

연결 방법에 따라 다릅니다. Windows 시스템에서 공유를 작성하고 smb / cifs를 사용하여 공유에 연결할 수 있습니다.

구문은 도메인에 있는지 여부에 따라 다릅니다.

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

또한 $IPC관리 공유 를 마운트 할 수 있습니다 . 프로세스 간 통신에서 $IPC공유 를 통해 수행 할 수있는 작업을 살펴볼 수 있습니다 .

항상있다 :

  • RDP
  • VNC
  • 텔넷
  • ssh
  • Windows의 Linux

마지막 3을 사용하면 추가 소프트웨어를 설치해야합니다.

VNC는 독립형 바이너리에서 실행하거나 설치할 수 있습니다.

RDP의 경우 대부분의 Linux 시스템이 이미 rdesktop설치되어 있거나 패키지 관리자에서 사용할 수 있습니다. 사용 rdesktop하면 Windows 시스템에 대한 RDP 연결 만 활성화하면 전체 GUI Windows 콘솔에 RDP를 사용할 수 있습니다.


7

예, Linux 클라이언트에서 Windows 시스템에 연결할 수 있습니다. 그러나이를 위해서는 Windows 시스템에서 일종의 서버 (예 : telnet, ssh, ftp 또는 다른 종류의 서버)를 호스팅해야하며 Linux에는 해당 클라이언트가 있어야합니다.


2
Windows는 Linux보다 GUI에 더 의존하기 때문에 가장 좋은 방법은 아마도 RDP 입니다.
CJM

나는 ftp와 같은 것이 질문에 의미가 있다고 생각하지 않습니다. 그리고 텔넷-... 정말?
사용자 알 수 없음

네, 아마 ssh를 의미했을 것입니다.
jcora

@pradeepchhetri 및 Windows에서이 서버 중 일부가 기본적으로 활성화되어 있습니까?
H_7

3
@ H_7 : Windows는 텔넷 및 ftp 서버를 지원하지만 기본적으로 실행되지 않습니다. 다음을 수행해야합니다. 1. 제어판-> 2. 프로그램 및 기능-> 3. Windows 기능을 켜거나 끕니다. 여기에서 서버 또는 클라이언트 목록을 볼 수 있습니다. 여기서 telnet 또는 ftp 서버를 실행할 수 있습니다.
pradeepchhetri

5

켜져 있으면 다음 Powershell 스크립트를 사용하여 Windows 10설치할 수 있습니다 OpenSSH.

#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

이 스크립트는 DNS를 Google DNS로 변경합니다. OpenSSH기본 배포와 함께 배포되지 않기 때문에 Windows10실제로 인터넷에서 일부 파일을 다운로드합니다. 따라서 인터넷에 연결되어 있고 올바른 DNS 서버가 필요하기 때문에 방화벽 뒤에 있거나 DNS 서버가없는 정적 IP를 사용하는 경우 정적 DNS 서버를 지정했습니다.

이 작업을 마치면 Windows 호스트 의 IP 주소를 알아 내야합니다

ipconfig

그런 다음 Linux/UnixOS 에서

ssh username@Windows_ip

여기서 username은 계정 이름이며 Windows_ip로그인하려는 Windows 컴퓨터의 IP 주소입니다.


내 Windows 설치에서 첫 번째 줄을 제외한 아무것도 실행되지 않습니다. 응답은 "Sart-Sleep이 내부 또는 외부 명령, 작동 가능한 프로그램 또는 배치 파일로 인식되지 않습니다"입니다. 그래서 이것은 당신이 원하는대로 쿠키 커터가 아닙니다 :-)
levitopher

1
익명의 사용자가 (실패한) 편집에서 방금 시작하는 줄 Repair-SshdHostKeyPermission이 필요하지 않다고 언급했습니다. 이것이 사실인지 아닌지는 모르겠지만, 만약에 그것이 영원히 사라지는 것을 원하지 않는다면.
roaima

4

RDP 또는 teamviewer와 같은 소프트웨어를 사용 해보고 싶을 수도 있습니다. 또한 Windows 시스템에 cygwin을 설치하고 ssh 액세스를 위해 구성 할 수 있으므로 ssh로 연결하면 Linux에서 알 수있는 쉘을 얻을 수 있습니다.


2

안드로이드의 openssh 서버와 같은 Windows 시스템에 openssh 서버를 설치해야합니다 .iinux 시스템의 putty를 사용하여 Windows 시스템에 ssh를 사용할 수 있습니다 .netstat를 사용하여 windows 시스템에 openssh 서버를 설치할 수있는 경우 확인할 수 있습니다.


1
왜 리눅스 컴퓨터에 퍼티가 필요합니까? ssh 그것은 일반적으로 이미 리눅스 머신에 설치되어 있습니다.
alpha_989

2

창에서 git을 사용하는 경우 축하합니다. Windows 시스템에 이미 ssh 할 수 있습니다.

ssh 서버를 시작하십시오.

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

그런 다음이 powershell 명령을 사용하여 방화벽을 구성하십시오.

New-NetFirewallRule -Name sshd -DisplayName 'SSH Server (sshd)' -Enabled True -Direction Inbound -Protocol TCP -Action Allow -LocalPort 22
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.