로컬 네트워크의 시스템에 SSH하는 가장 좋은 방법은 무엇입니까?


61

나는 2 대의 컴퓨터를 가지고 있는데, 하나는 내가 사용하고 다른 하나는 아이들을위한 것입니다. 컴퓨터를 제어하기 위해 컴퓨터에 ssh 할 수 있기를 원하지만 (예 : 종료 등)이 작업을 수행하는 가장 좋은 방법은 궁금합니다. 우리는 같은 집에 있고 같은 인터넷 연결을 공유합니다.

가장 좋은 방법은 무엇입니까? 연구 결과, 원격 컴퓨터에 openssh-server를 설치하는 것을 읽었지만 연결하려고 할 때 호스트 이름에 사용할 항목이 엉망입니다. 일반적으로 VPS의 경우 외부 IP이지만 Wi-Fi 연결을 공유하기 때문에 하드웨어 IP입니까? LAN이나 인터넷을 통해 직접 인터페이스해야합니까?

답변:


58

운영:

avahi-browse -tl _workstation._tcp

로컬 네트워크에서 Ubuntu 워크 스테이션 목록을 얻으려면 다음을 실행하여 워크 스테이션에 연결할 수 있습니다.

ssh <username>@<computer-name>.local

7
참고 :의 avahi-browse경우 avahi-utils패키지 를 설치해야 합니다 ( avahi-daemon.local 주소 지정 기능을 제공하는 서비스 도 가져옵니다 ).
Piskvor

2
@Piskvor 좋은 지적입니다. 이 패키지는 기본적으로 Ubuntu Desktop에 이미 설치되어 있지만 다른 특징 (kubuntu, lubuntu 등)에 대해서는 모르겠습니다. 설치되어 있지 않으면 그냥 실행하십시오 sudo apt-get install avahi-utils.
Eric Carvalho 2016 년

그래서 ssh 서버를 설정해야합니까, 예를 들어 우분투 14.04가 기본적으로 하나를 실행합니까?
tobi

1
@tobi SSH 서버는 기본적으로 설치되지 않습니다. 설치해야합니다.
Eric Carvalho

2
내가 실행 한 후 목록이 비어있는 것 같습니다 avahi. 두 컴퓨터 모두 동일한 라우터에 연결되어 있습니다
Jose Ospina

15

IP 주소를 사용하여 아이의 컴퓨터에 ssh를 넣을 수 있습니다. 컴퓨터 이름을 사용하려면 컴퓨터 이름을 포함하도록 / etc / hosts 파일을 편집하십시오.

192.168.1.104  dad
192.168.1.105  kids

12
IP를 컴퓨터에 정적으로 할당해야한다는 점을 지적해야합니다.
Alaa Ali

3
howtogeek.com/75007/…ssh 에서 호스트 이름을 지정하여 hosts 파일을 편집하지 않고 이름으로 ing을 활성화 할 수 있습니다 ~/.ssh/config.
Nathan Long

@NathanLong-좋은 팁! 호스트 파일에 그것을 가지고 있다고 주장 할 수는 있지만 원하는 경우 모든 서비스에 액세스 할 수 있습니다.
stefgosselin

9

ssh를 수행하기 전에 ssh 클라이언트 및 서버를 확인하십시오. 이 서비스를 설치하지 않은 경우

 sudo apt-get install openssh-client

 sudo apt-get install openssh-server

이미 방금 하셨다면

 ssh username@ipaddress

 Enter connecting device login password.

예 :

 ssh prem@192.168.1.145

 prem@192.168.1.145's password:********

다음과 같은 오류가 발생하면 "권한이 거부되었습니다. 다시 시도하십시오."

사용자 이름과 IP를 두 번 확인하십시오.


8

ssh가 자동으로 구문 분석하는 ~ / .ssh / config 파일을 사용합니다. 예는 다음과 같습니다.

Host *
ControlMaster auto
ControlPath /tmp/%r@%h:%p

KeepAlive yes 
ServerAliveInterval 60
ServerAliveCountMax 10
ControlPersist 1h

Host server1
        User user1
        HostName server1-web.example.org

Host server2
        User user2
        HostName server2-db.example.org
        Compression yes
        IdentityFile /home/user/.ssh/different_key.pem

이 파일에서 (클라이언트 측) 변수를 사용하고 전역 또는 서버별로 설정할 수 있습니다.


그럼 어떻게 하나 연결하는 홈 인터넷 게이트웨이 어플라이언스의 DNS 시설 구성 않습니다 server1-web.example.orgserver2-db.example.org각각의 서버와를?
Damian Yerrick 16:14에

5
  1. LAN이 고정 IP를 사용하는 경우 로컬 IP로 직접 ssh 할 수 있습니다.
    ssh someuser@192.168.1.2

  2. Ed Manet의 답변 에서 언급 한 것처럼 두 컴퓨터에서 호스트 파일을 편집 할 수 있습니다 . 그렇게하면 컴퓨터의 호스트 이름을 사용하여 ssh 할 수 있습니다.ssh someuser@some_hostname

  3. LAN 호스트를 확인하기 위해 로컬 DNS 서버를 설정할 수 있습니다. 이렇게하면 옵션 2에서와 같이 컴퓨터의 호스트 이름을 사용하여 ssh를 수행 할 수 있지만, 우분투의 네트워크 설정에서 DNS 서버를 지정하면 모든 호스트 파일을 편집하지 않아도됩니다.

DNSMasq 는 설정하기 쉬운 DNS 서버입니다.
다른 옵션은 BIND 입니다.


3

로컬 LAN IP 주소를 사용하십시오. 다른 방법을 사용하려면 로그인 할 수 있도록 일부 포트가 인터넷에 열려 있어야합니다.

또한 라우터에서 포트 매핑이 필요합니다. 라우터의 '공개'IP 주소를 대상으로 사용하면 두 PC 중 하나에 연결 되지 않습니다 .


가장 간단한 방법은 라우터에 각 IP 주소 (컴퓨터 2 대)를 영구적으로 할당하는 것입니다. 그런 다음 해당 IP 주소에 연결하십시오.

똑똑하게 (나중에) 얻으려면 서버를 설정하고 로컬 DNS 서비스를 사용하여 각 장치에 의미있는 이름을 할당하십시오. 2 대의 PC 만 있으면 문제가되지 않습니다.


1
참고 : 요즘 많은 양질의 홈 라우터가 IP 주소 할당 중에 워크 스테이션의 호스트 이름을 읽고 로컬 DNS에 대해이를 해결합니다. 아아, 이것은 아직 보편적 인 기능이 아닙니다.
Piskvor

2

동일한 인터넷 연결을 공유하는 경우 동일한 Wi-Fi 라우터 뒤에있을 가능성이 높습니다. 따라서 자녀 컴퓨터에 직접 연결하십시오.

ssh <IP-address>

또는:

ssh <user-name>@<IP-address>

키즈 컴퓨터에 고정 IP 주소가있는 경우 분명히 더 좋습니다. 그렇지 않으면 항상 IP가 무엇인지 확인해야합니다. 대부분의 라우터에는 선택한 장치에 고정 (항상 동일) IP를 할당 할 수있는 옵션이 있습니다. 일부 라우터에는 특정 장치에 호스트 이름을 할당 할 수있는 옵션이 있습니다. 동일한 네트워크 주소 "kids"에있는 모든 장치의 경우 동일합니다. / etc / hosts 파일과 함께 호스트 이름을 지정하면 호스트 이름은 해당 호스트 파일이있는 해당 컴퓨터에만 알려집니다. 또한 이는 어린이 컴퓨터에 고정 IP 주소가 있다고 가정합니다.

해당 컴퓨터에서도 아이들 컴퓨터에 고정 IP를 설정할 수 있지만 라우터에서 네트워크 설정이 수행되는 곳에 설치하는 것이 좋습니다. 하나의 제어 지점-관리가 더 쉽습니다. 분명하지 않은 내용이 있으면 의견을 남겨 주시면 답변을 확대하겠습니다.


귀하의 제안을 시도했지만 오류가 발생했습니다 ssh: connect to host xxx.xxx.x.xx port 22: connection refused.-추가 구성이 필요합니까?
lukaszkups

해당 머신에서 ssh 서버가 실행 중이어야하고 방화벽을 막는 방화벽이 없어야합니다. ssh가 다른 포트에서의 연결을 예상하도록 구성되었을 수 있습니다.이 경우 사용자 -p 플래그를 사용하여 기본 포트 (22) 이외의 것을 사용할 수 있습니다.
Tanel Mae

0

호스트 이름 대신 IP 주소를 사용하거나 /etc/hosts파일 에서 사용자 정의 호스트 이름을 지정할 수 있습니다.

자녀의 컴퓨터에서 IP를 얻으려면 : 네트워크 메뉴에서 "연결 정보"를 참조 하거나ifconfig 명령 줄에서 실행 하십시오 (아이의 컴퓨터에서 수행해야 함).

Wi-Fi 라우터는 이러한 IP 주소를 할당하며 현재 할당 된 컴퓨터의 특정 IP 주소를 유지하도록 구성 할 수 있어야합니다. 그렇지 않으면 IP가 수시로 변경 될 수 있습니다.


0

자녀의 컴퓨터에 할당 컴퓨팅 이름을 부여 할 수 있습니다.
그런 다음 간단히
ssh MachineName

나는 이것을 결코 사용하지 않았다, 단지 내가 공유했던 나의 머리에서의 생각.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.