많은 장치에 대한 SSH 액세스를 중앙 집중화하시겠습니까?

많은 장치에 대한 SSH 액세스를 중앙 집중화하시겠습니까?

Powershell Remoting자동화를 위한 스크립트를 실행할 수 있도록 SSH를 통해 연결하고 싶은 몇 가지 엔드포인트가 있습니다 .

액세스를 중앙 집중화하려면 어떻게 해야 합니까?

  1. SSH엔드포인트는 중앙 서버에 연결됩니다.
  2. SSH엔드포인트는 이 연결을 열린 상태로 유지합니다 .
  3. 서버에서 종료되는 엔드포인트에 대해 SSH를 통한 범용 액세스를 생성해야 합니다. 범용 액세스란 동일한 네트워크에 있는 장치가 SSH어떤 목적으로든 이러한 개방형 연결을 이상적으로 활용할 수 있다는 것을 의미합니다 SSH.

3단계가 좀 헷갈리네요.

  • 원격 작업을 수행하고 중앙 서버에서 , 등 을 SSH실행 해야만 연결할 수 있습니까 ?PowershellPuTTYRemote Desktop
  • 이 서버를 통해 SSH 연결을 일반 네트워크로 '가져올' 수 있습니까 SSH? 그러면 동일한 네트워크의 장치가 중앙 서버를 통해 SSH를 통해 시스템에 연결할 수 있습니까?
  • 동일한 네트워크에 있는 장치에서 실행 Powershell, 실행 Remote Desktop또는 기타 항목을 실행하기 위해 여러 끝점을 SSH를 통해 중앙 서버에 연결하는 더 좋은 방법이 있습니까 ?SSH

장치는 Windows또는Linux

나는 추측한다:

  • 여러 원격 네트워크의 각 끝점은 SSH를 통해 Lan X의 SSH 서버에 연결됩니다.
  • Lan X의 장치는 Lan X의 SSH 서버에 SSH로 연결해야 합니다.
  • SSH 서버에 SSH로 연결되면 Lan X의 장치는 이제 Powershell엔드포인트에서 스크립트 및 기타 SSH 항목을 실행할 수 있습니다.

답변1

첫 번째 시나리오에서는

  1. 클라이언트 --SSH-> 서버
  2. 클라이언트는 이 연결을 사용하여 서버로부터 SSH 세션을 기다립니다.
  3. 서버 --SSH-> 클라이언트, 명령 실행 등

이것을SSH 역터널, 설정이 매우 간단합니다.

# On client, create an open tunnel from Client:22 -> Server:2222
ssh -R 2222:localhost:22 user@Server

# On server, connect to local 2222, and you're connected to that session
ssh -p 2222 user@localhost

각 클라이언트는 별도의 포트에 연결해야 합니다.

다른 클라이언트가 해당 세션(예: Client1 -> Server <- Client2)을 사용하도록 허용하려면 클라이언트에서 서버로 SSH를 연결한 다음 위와 같이 터널에 연결합니다.

나열하려면어떤 클라이언트가 어떤 포트에 연결되어 있는지 서버(Linux)에서 실행할 수 있습니다.

 % sudo lsof -i -n | egrep '\<sshd\>'

관련 정보