Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

NETCONF 세션을 위한 SSH 연결 설정

NETCONF 세션을 위한 SSH 연결 설정

SSH 프로토콜을 사용하여 구성 관리 서버와 Junos 디바이스 간의 연결을 설정할 수 있습니다. 구성 관리 서버를 사용하여 Junos 디바이스를 원격으로 구성할 수 있습니다.

다음 옵션을 사용하여 구성 관리 서버와 Junos 디바이스 간에 SSH 연결을 설정할 수 있습니다.

  • SSH - 구성 관리 서버가 Junos 디바이스와 SSH 세션을 시작합니다.

  • 아웃바운드 SSH - 네트워크 제한(예: 방화벽)으로 인해 구성 관리 서버가 SSH 연결을 시작할 수 없는 경우 이 옵션을 사용합니다. 이 경우 Junos 디바이스를 구성하여 사전 정의된 구성 관리 서버 세트와의 SSH 연결을 시작, 설정 및 유지합니다.

NETCONF 세션을 위한 SSH 연결 설정을 위한 전제 조건

구성 관리 서버가 Junos 디바이스와 SSH 연결을 설정하기 전에 다음 섹션에서 설명하는 요구 사항을 충족해야 합니다.

구성 관리 서버에 SSH 소프트웨어 설치

구성 관리 서버는 Junos 디바이스와의 SSH 연결을 처리합니다. 따라서 SSH 소프트웨어는 구성 관리 서버에 로컬로 설치해야 합니다. SSH 소프트웨어를 가져오고 설치하는 방법에 대한 자세한 내용은 http://www.ssh.comhttp://www.openssh.com 를 참조하십시오.

SSH를 통한 NETCONF 서비스 활성화

Junos 디바이스에서 NETCONF 세션을 설정하려면 NETCONF 서비스를 활성화해야 합니다. 다음 포트에서 NETCONF 세션을 수락하도록 NETCONF 서버를 구성할 수 있습니다.

  • 기본 NETCONF 포트(830) 또는 사용자 정의 포트

  • 기본 SSH 포트(22)

디바이스가 NETCONF 트래픽을 쉽게 식별하고 필터링할 수 있도록 기본 NETCONF 포트를 사용하는 것이 좋습니다. 또는 기본 NETCONF 포트 대신 특정 포트에서 NETCONF 세션을 수락하도록 디바이스를 구성할 수 있습니다. 정의된 포트는 NETCONF-over-SSH 세션만 허용하고 일반 SSH 세션 요청은 거부합니다. 또한 서버에서 SSH 서비스를 활성화하면 디바이스는 기본 SSH 포트와 구성된 NETCONF 포트(기본 또는 사용자 정의 포트) 모두에서 NETCONF 세션을 수락합니다. 보안 강화를 위해 정보를 활용하는 UI_LOGIN_EVENT 이벤트 정책을 구성하여 기본 포트를 효과적으로 비활성화하거나 포트에서 NETCONF 서버 액세스를 추가로 제한할 수 있습니다.

Junos 디바이스에서 SSH를 통한 NETCONF 서비스 활성화:

  1. 기본 NETCONF 포트(830) 또는 사용자 정의 포트에서 NETCONF 서비스를 활성화합니다.

    • 기본 NETCONF 포트(830)를 사용하려면 계층 수준에서 명령문을 포함합니다netconf ssh.[edit system services]

    • 특정 포트를 사용하려면 [edit system services netconf ssh] 계층 수준에서 원하는 포트 번호로 명령문을 구성합니다port.

      캔의 port-number 범위는 1에서 65535까지입니다. 구성된 포트는 NETCONF-over-SSH 세션만 허용하고 일반 SSH 세션 요청은 거부합니다.

      참고:

      NETCONF-over-SSH 세션은 1에서 65535까지의 모든 포트에서 구성할 수 있지만, 일반적으로 다른 서비스에 할당된 포트에서 액세스를 구성하지 않아야 합니다. 이렇게 하면 잠재적인 리소스 충돌을 방지할 수 있습니다. FTP와 같은 다른 서비스에 할당된 포트를 구성하고 해당 서비스가 사용 가능한 경우, 은(는 commit check ) 리소스 충돌을 나타내거나 해당 효과에 대한 경고 메시지를 표시하지 않습니다.

  2. (선택 사항) 또한 기본 SSH 포트(22)를 사용하여 NETCONF SSH 서브시스템에 대한 액세스를 활성화하려면 계층 수준에서 문을 [edit system services] 포함합니다ssh.

    이 구성을 통해 모든 사용자 및 애플리케이션이 디바이스에 대한 SSH 액세스를 수행할 수 있습니다.

    참고:

    기본 동작이 루트 사용자가 SSH 서비스를 사용하지 못하도록 제한하는 릴리스에서는 루트 사용자가 SSH를 통해 NETCONF 세션을 열 수 있도록 계층 수준에서 문을 [edit system services ssh] 구성해야 root-login allow 합니다.

  3. (선택 사항) 응답하지 않는 NETCONF 클라이언트의 연결을 끊도록 디바이스를 구성합니다.

    클라이언트로부터 데이터를 수신하지 않은 경우 sshd 프로세스가 응답을 요청하는 시간 초과 간격(초)을 지정합니다. 또한 연결 끊김을 트리거하는 누락된 클라이언트 활성 응답의 임계값을 지정합니다.

    참고:

    계층 수준에서 구성된 문은 기본 포트(830) 또는 동일한 계층 수준에서 구성된 [edit system services netconf ssh] 사용자 정의 포트를 통해 연결하는 NETCONF 세션에만 적용됩니다.

  4. 구성을 커밋합니다.

  5. 클라이언트 애플리케이션이 NETCONF 세션을 설정하는 Junos OS를 실행하는 각 디바이스에서 이전 단계를 반복합니다.

Junos 디바이스에서 클라이언트 애플리케이션에 대한 사용자 계정 구성

구성 관리 서버는 NETCONF 세션을 설정하기 위해 Junos 디바이스에 로그인해야 합니다. 따라서 구성 관리 서버는 NETCONF 세션을 설정하는 각 디바이스에 사용자 계정이 필요합니다. 다음 지침은 Junos 디바이스에서 로컬 사용자 계정을 만드는 방법을 설명합니다. 또는 이 섹션을 건너뛰고 RADIUS 또는 TACACS+를 통한 인증을 활성화할 수 있습니다.

로컬 사용자 계정을 만들려면,

  1. user 계층 수준에서 [edit system login] 문을 구성하고 사용자 이름을 지정합니다. class 문을 포함하고, 응용 프로그램에서 수행할 모든 작업에 필요한 권한이 있는 로그인 클래스를 지정합니다.
  2. 선택적으로 계층 수준에서 및 uid 문을 [edit system login user username] 포함합니다full-name.
  3. 구성을 커밋하여 디바이스에서 사용자 계정을 활성화합니다.
  4. 클라이언트 애플리케이션이 NETCONF 세션을 설정하는 Junos OS를 실행하는 각 디바이스에서 이전 단계를 반복합니다.

Junos OS 사용자 계정에 대한 퍼블릭/프라이빗 키 페어 또는 암호 구성

구성 관리 서버는 NETCONF 서버로 인증하기 전에 SSH 퍼블릭/프라이빗 키 쌍, 텍스트 기반 비밀번호 또는 둘 다 필요합니다. 계정이 SSH를 통해 NETCONF 서버에 연결하는 데만 사용되는 경우 퍼블릭/프라이빗 키 쌍으로 충분합니다. 계정이 다른 방법으로도 장치에 액세스하는 데 사용되는 경우(예: 콘솔에서 로그인하는 경우) 텍스트 기반 암호가 있어야 합니다. 키 기반 인증이 구성되었지만 실패하는 경우에도 암호가 사용됩니다(SSH 서버에서 암호를 묻는 메시지를 표시함).

참고:

RADIUS 또는 TACACS+를 통해 인증을 활성화하도록 선택한 경우 이 섹션을 건너뛸 수 있습니다.

텍스트 기반 암호를 만들려면,

  1. plain-text-password 계층 수준에서 또는 encrypted-password 문을 [edit system login user username authentication] 포함합니다.

    암호를 텍스트로 입력하려면 다음 명령을 실행합니다. 저장되기 전에 암호화된 암호를 입력하라는 메시지가 표시됩니다.

    이전에 MD5(Message Digest 5) 또는 SHA-1(Secure Hash Algorithm 1)을 사용하여 작성하고 해시한 비밀번호를 저장하려면 다음 명령을 실행하십시오.

  2. 구성을 커밋합니다.
  3. 클라이언트 애플리케이션이 NETCONF 세션을 설정하는 각 디바이스에서 이전 단계를 반복합니다.

SSH 퍼블릭/프라이빗 키 쌍을 만들려면 다음 단계를 수행합니다.

  1. 클라이언트 응용 프로그램이 실행되는 구성 관리 서버의 표준 명령 셸에서 명령을 실행하고 ssh-keygen 적절한 인수를 제공합니다.

    옵션에 대한 ssh-keygen 자세한 정보는 명령의 ssh-keygen 매뉴얼 페이지를 참조하십시오.

  2. 공개 키를 Junos OS 로그인 계정과 연결합니다.

    Junos OS는 지정된 파일의 내용을 Junos OS를 실행하는 디바이스에 복사합니다. URL 은(는) 하나 이상의 공개 키를 포함하는 파일의 경로입니다. ssh-keygen 명령은 기본적으로 각 공개 키를 사용자 홈 디렉토리의 .ssh 하위 디렉토리에 있는 파일에 저장합니다. 파일 이름은 인코딩 및 SSH 버전에 따라 다릅니다 . URL 지정에 대한 정보는 CLI 사용 설명서를 참조하십시오.

    참고:

    또는 계층 수준에서 문을 [edit system login user account-name authentication] 포함할 ssh-rsa 수 있습니다. 그러나 명령 load-key-file 문을 사용하면 명령줄에서 공개 키를 입력하거나 잘라내어 붙여넣을 필요가 없으므로 문을 사용하는 것이 좋습니다.

  3. 구성을 커밋합니다.

  4. 클라이언트 애플리케이션이 NETCONF 세션을 설정하는 각 Junos 디바이스에서 2 단계와 3 단계를 반복합니다.

클라이언트 응용 프로그램을 사용하여 키 또는 암호에 액세스Access the keys or password with the Client application

클라이언트 애플리케이션은 구성된 퍼블릭/프라이빗 키 또는 암호에 액세스하고 NETCONF 서버가 프롬프트할 때 제공할 수 있어야 합니다.

응용 프로그램이 키 또는 암호에 액세스할 수 있도록 하는 방법에는 여러 가지가 있습니다.

  • 퍼블릭/프라이빗 키를 사용하는 경우 ssh-agent 프로그램은 클라이언트 애플리케이션이 실행되는 디바이스에서 실행되고 프라이빗 키를 처리합니다.

  • 사용자가 응용 프로그램을 시작하면 응용 프로그램에서는 사용자에게 암호를 입력하라는 메시지를 표시하고 안전한 방식으로 임시로 저장합니다.

  • 암호는 안전한 로컬 디스크 위치 또는 보안 데이터베이스에 암호화된 형태로 저장됩니다.

NETCONF 세션에 대한 아웃바운드 SSH 연결 설정을 위한 사전 요구 사항

구성 관리 서버가 NETCONF 서버에 대한 아웃바운드 SSH 연결을 설정할 수 있도록 하려면 다음 섹션에서 설명하는 요구 사항을 충족해야 합니다.

클라이언트에 SSH 소프트웨어 설치

디바이스가 구성 관리 서버에 SSH 연결을 설정하면 구성 관리 서버가 SSH 세션을 제어합니다. 따라서 SSH 클라이언트 소프트웨어는 구성 관리 서버에 로컬로 설치되어야 합니다. SSH 소프트웨어 가져오기 및 설치에 대한 자세한 내용은 http://www.ssh.com/http://www.openssh.com/ 참조하십시오.

SSH를 통한 NETCONF 서비스 활성화

Junos 디바이스에서 NETCONF 세션을 설정하려면 NETCONF 서비스를 활성화해야 합니다. 다음 포트에서 NETCONF 세션을 수락하도록 NETCONF 서버를 구성할 수 있습니다.

  • 기본 NETCONF 포트(830) 또는 사용자 정의 포트

  • 기본 SSH 포트(22)

디바이스가 NETCONF 트래픽을 쉽게 식별하고 필터링할 수 있도록 기본 NETCONF 포트를 사용하는 것이 좋습니다. 또는 기본 NETCONF 포트 대신 특정 포트에서 NETCONF 세션을 수락하도록 디바이스를 구성할 수 있습니다. 정의된 포트는 NETCONF-over-SSH 세션만 허용하고 일반 SSH 세션 요청은 거부합니다. 또한 서버에서 SSH 서비스를 활성화하면 디바이스는 기본 SSH 포트와 구성된 NETCONF 포트(기본 또는 사용자 정의 포트) 모두에서 NETCONF 세션을 수락합니다. 보안 강화를 위해 정보를 활용하는 UI_LOGIN_EVENT 이벤트 정책을 구성하여 기본 포트를 효과적으로 비활성화하거나 포트에서 NETCONF 서버 액세스를 추가로 제한할 수 있습니다.

Junos 디바이스에서 SSH를 통한 NETCONF 서비스 활성화:

  1. 기본 NETCONF 포트(830) 또는 사용자 정의 포트에서 NETCONF 서비스를 활성화합니다.

    • 기본 NETCONF 포트(830)를 사용하려면 계층 수준에서 명령문을 포함합니다netconf ssh.[edit system services]

    • 특정 포트를 사용하려면 [edit system services netconf ssh] 계층 수준에서 원하는 포트 번호로 명령문을 구성합니다port.

      캔의 port-number 범위는 1에서 65535까지입니다. 구성된 포트는 NETCONF-over-SSH 세션만 허용하고 일반 SSH 세션 요청은 거부합니다.

      참고:

      NETCONF-over-SSH 세션은 1에서 65535까지의 모든 포트에서 구성할 수 있지만, 일반적으로 다른 서비스에 할당된 포트에서 액세스를 구성하지 않아야 합니다. 이렇게 하면 잠재적인 리소스 충돌을 방지할 수 있습니다. FTP와 같은 다른 서비스에 할당된 포트를 구성하고 해당 서비스가 사용 가능한 경우, 은(는 commit check ) 리소스 충돌을 나타내거나 해당 효과에 대한 경고 메시지를 표시하지 않습니다.

  2. (선택 사항) 또한 기본 SSH 포트(22)를 사용하여 NETCONF SSH 서브시스템에 대한 액세스를 활성화하려면 계층 수준에서 문을 [edit system services] 포함합니다ssh.

    이 구성을 통해 모든 사용자 및 애플리케이션이 디바이스에 대한 SSH 액세스를 수행할 수 있습니다.

    참고:

    기본 동작이 루트 사용자가 SSH 서비스를 사용하지 못하도록 제한하는 릴리스에서는 루트 사용자가 SSH를 통해 NETCONF 세션을 열 수 있도록 계층 수준에서 문을 [edit system services ssh] 구성해야 root-login allow 합니다.

  3. (선택 사항) 응답하지 않는 NETCONF 클라이언트의 연결을 끊도록 디바이스를 구성합니다.

    클라이언트로부터 데이터를 수신하지 않은 경우 sshd 프로세스가 응답을 요청하는 시간 초과 간격(초)을 지정합니다. 또한 연결 끊김을 트리거하는 누락된 클라이언트 활성 응답의 임계값을 지정합니다.

    참고:

    계층 수준에서 구성된 문은 기본 포트(830) 또는 동일한 계층 수준에서 구성된 [edit system services netconf ssh] 사용자 정의 포트를 통해 연결하는 NETCONF 세션에만 적용됩니다.

  4. 구성을 커밋합니다.

  5. 클라이언트 애플리케이션이 NETCONF 세션을 설정하는 Junos OS를 실행하는 각 디바이스에서 이전 단계를 반복합니다.

아웃바운드 SSH를 위한 Junos 디바이스 구성

아웃바운드 SSH를 위한 Junos 디바이스 구성:

  1. [edit system services ssh] 계층 수준에서 SSH protocol-version 를 v2로 설정합니다.
  2. Junos OS를 실행하는 디바이스에 대한 퍼블릭/프라이빗 키 페어를 생성하거나 획득합니다. 이 키 쌍은 SSH 연결을 통해 전송되는 데이터를 암호화하는 데 사용됩니다.
  3. 구성 관리 서버에 공개 키를 수동으로 설치하는 경우 공개 키를 구성 관리 서버로 전송하십시오.
  4. [edit system services] 계층 수준에서 구성 계층과 필요한 모든 문을 포함합니다outbound-ssh.

    옵션은 다음과 같습니다.

    address

    (필수) 관리 서버의 호스트 이름, IPv4 또는 IPv6 주소입니다. 다음 연결 매개 변수와 함께 각 클라이언트의 IP 주소 또는 호스트 이름을 추가하여 여러 클라이언트를 나열할 수 있습니다.

    • port port-number- 클라이언트에 대한 아웃바운드 SSH 포트입니다. 기본값은 포트 22입니다.

    • retry number– 디바이스가 아웃바운드 SSH 연결 설정을 시도하는 횟수입니다. 기본값은 3회 시도입니다.

    • timeout seconds—Junos OS를 실행하는 디바이스가 아웃바운드 SSH 연결 설정을 시도하는 시간(초)입니다. 기본값은 시도당 15초입니다.

      참고:

      Junos OS 릴리스 15.1부터 Junos OS는 IPv6 주소가 있는 디바이스와의 아웃바운드 SSH 연결을 지원합니다.

    client client-id

    (필수) 디바이스의 구성 스탠자를 식별합니다 outbound-ssh . 각 outbound-ssh 스탠자는 단일 아웃바운드 SSH 연결을 나타냅니다. 이 특성은 클라이언트로 전송되지 않습니다.

    device-id device-id

    (필수) 시작 시퀀스 동안 클라이언트에 Junos OS를 실행하는 디바이스를 식별합니다.

    keep-alive

    (선택 사항) 디바이스가 관리 서버에 keepalive 메시지를 보내도록 지정합니다. keepalive 메시지를 구성하려면 및 retry 속성을 모두 timeout 설정해야 합니다. keepalive 메시지를 구성하려면 및 retry 문을 모두 timeout 구성해야 합니다.

    • retry number- 현재 SSH 연결이 종료되기 전에 디바이스가 관리 서버로부터 응답을 수신하지 않고 보내는 keepalive 메시지 수입니다. 기본값은 3회 시도입니다.

    • timeout seconds- 서버가 keepalive 신호를 보내기 전에 데이터를 대기하는 시간(초)입니다. 기본값은 15초입니다.

    reconnect-strategy (sticky | in-order)

    (선택 사항) 연결이 끊긴 아웃바운드 SSH 연결을 재설정하기 위해 Junos OS를 실행하는 디바이스가 사용하는 방법을 지정합니다. 두 가지 방법을 사용할 수 있습니다.

    • in-order- 라우터 또는 스위치가 먼저 관리 서버 주소 목록을 기반으로 아웃바운드 SSH 세션 설정을 시도하도록 지정합니다. 라우터 또는 스위치가 목록의 첫 번째 서버와의 세션 설정을 시도합니다. 이 연결을 사용할 수 없는 경우 라우터 또는 스위치는 다음 서버와의 세션 설정을 시도하고 연결이 설정될 때까지 목록 아래에 있습니다.

    • sticky- 라우터 또는 스위치가 먼저 마지막으로 연결된 관리 서버에 다시 연결을 시도하도록 지정합니다. 연결을 사용할 수 없는 경우 연결이 설정될 때까지 목록의 다음 클라이언트 등과의 연결 설정을 시도합니다.

    secret password

    (선택 사항) 디바이스의 공용 SSH 호스트 키입니다. 문에 outbound-ssh 추가된 경우 아웃바운드 SSH 서비스를 초기화하는 동안 라우터 또는 스위치가 공개 키를 관리 서버로 전달합니다. 이는 디바이스 공개 키의 현재 복사본을 유지 관리하는 데 권장되는 방법입니다.

    services netconf

    (필수) 세션에 사용할 수 있는 서비스를 지정합니다. 현재 NETCONF는 사용 가능한 유일한 서비스입니다.

  5. 구성을 커밋합니다.

클라이언트에서 아웃바운드 SSH 시작 시퀀스 수신 및 관리Receive and manage the outbound SSH initiation sequence on the client

아웃바운드 SSH를 위해 구성된 경우, Junos 디바이스는 구성 관리 서버와의 지속적인 연결을 유지하려고 시도합니다. 아웃바운드 SSH 세션이 설정되지 않을 때마다 디바이스는 아웃바운드 SSH 시작 시퀀스를 디바이스의 구성 관리 서버 목록에 나열된 구성 관리 서버로 보냅니다. 디바이스와의 연결을 설정하기 전에 이 시작 시퀀스를 수신하고, 디바이스와의 TCP 연결을 설정하고, 디바이스 ID를 다시 디바이스로 전송하도록 각 구성 관리 서버를 설정해야 합니다.

시작 시퀀스는 Junos OS 서버의 공개 키를 처리하기 위해 선택한 방법에 따라 두 가지 형태 중 하나를 취합니다.

공개 키가 구성 관리 서버에 수동으로 설치된 경우 시작 시퀀스는 다음과 같은 형식을 취합니다.

초기화 시퀀스 중에 디바이스가 공개 키를 구성 관리 서버로 전달하는 경우 시퀀스는 다음과 같은 형식을 취합니다.

변경 내역 테이블

기능 지원은 사용 중인 플랫폼 및 릴리스에 따라 결정됩니다. 기능 탐색기 를 사용하여 플랫폼에서 기능이 지원되는지 확인합니다.

릴리스
설명
15.1
Junos OS 릴리스 15.1부터 Junos OS는 IPv6 주소가 있는 디바이스와의 아웃바운드 SSH 연결을 지원합니다.