Amazon Best VPN GoSearch

온웍스 파비콘

SSH

Ubuntu Online, Fedora Online, Windows 온라인 에뮬레이터 또는 MAC OS 온라인 에뮬레이터를 통해 OnWorks 무료 호스팅 제공업체에서 ssh 실행

이것은 Ubuntu Online, Fedora Online, Windows 온라인 에뮬레이터 또는 MAC OS 온라인 에뮬레이터와 같은 여러 무료 온라인 워크스테이션 중 하나를 사용하여 OnWorks 무료 호스팅 공급자에서 실행할 수 있는 명령 ssh입니다.

프로그램:

이름


SSH — OpenSSH SSH 클라이언트(원격 로그인 프로그램)

개요


SSH [-1246AaCfGgKkMNnqsTtVvXxYy] [-b 바인딩_주소] [-c 암호 사양] [-D [바인딩_주소:]포트]
[-E 로그 파일] [-e 탈출_문자] [-F 구성 파일] [-I pkcs11] [-i 신원 파일]
[-L 주소] [-l 로그인 이름] [-m mac_spec] [-O ctl_cmd] [-o option] [-p 포트]
[-Q 쿼리 옵션] [-R 주소] [-S ctl_path] [-W 주인:포트] [-w local_tun[:원격_툰]]
[사용자@]호스트 이름 [명령]

기술


SSH (SSH 클라이언트)는 원격 시스템에 로그인하고 명령을 실행하기 위한 프로그램입니다.
원격 컴퓨터에서. 두 서버 간의 안전한 암호화 통신을 제공하기 위한 것입니다.
안전하지 않은 네트워크를 통한 신뢰할 수 없는 호스트 X11 연결, 임의의 TCP 포트 및
UNIX 도메인 소켓은 보안 채널을 통해 전달할 수도 있습니다.

SSH 지정된 계정에 연결하고 로그인합니다. 호스트 이름 (옵션으로 사용자 이름). 사용자는
여러 방법 중 하나를 사용하여 원격 시스템에 자신의 신원을 증명합니다(아래 참조).

If 명령 지정된 경우 로그인 셸 대신 원격 호스트에서 실행됩니다.

옵션은 다음과 같습니다

-1SSH 프로토콜 버전 1만 시도합니다.

-2SSH 프로토콜 버전 2만 시도합니다.

-4SSH IPv4 주소만 사용합니다.

-6SSH IPv6 주소만 사용합니다.

-A 인증 에이전트 연결의 전달을 활성화합니다. 이것은 또한 될 수 있습니다
구성 파일에서 호스트별로 지정됩니다.

에이전트 전달은 주의해서 활성화해야 합니다. 우회 능력이 있는 사용자
원격 호스트(에이전트의 UNIX 도메인 소켓용)에 대한 파일 권한은 액세스할 수 있습니다.
전달된 연결을 통해 로컬 에이전트. 공격자는 키를 얻을 수 없습니다
에이전트의 자료를 제공하지만 키에 대한 작업을 수행할 수 있습니다.
에이전트에 로드된 ID를 사용하여 인증합니다.

-a 인증 에이전트 연결의 전달을 비활성화합니다.

-b 바인딩_주소
바인딩_주소 로컬 시스템에서 연결의 소스 주소로 사용합니다. 오직
하나 이상의 주소가 있는 시스템에서 유용합니다.

-C 모든 데이터(stdin, stdout, stderr 및
전달된 X11, TCP 및 UNIX 도메인 연결). 압축 알고리즘은
에 의해 사용되는 것과 동일 gzip을(1) 및 "레벨"은 다음으로 제어할 수 있습니다. 압축 수준
프로토콜 버전 1에 대한 옵션입니다. 모뎀 라인 및 기타 회선에서는 압축이 바람직합니다.
연결 속도는 느리지만 빠른 네트워크에서만 속도가 느려집니다. 기본값
값은 구성 파일에서 호스트별로 설정할 수 있습니다. 보다
압축 옵션을 선택합니다.

-c 암호 사양
세션 암호화를 위한 암호 사양을 선택합니다.

프로토콜 버전 1에서는 단일 암호를 지정할 수 있습니다. 지원되는 값
"3des", "복어" 및 "des"입니다. 프로토콜 버전 2의 경우, 암호 사양 는 쉼표입니다-
선호하는 순서대로 나열되는 분리된 암호 목록입니다. 참조 암호문 키워드
SSH_구성(5) 자세한 내용은.

-D [바인딩_주소:]포트
로컬 "동적" 응용 프로그램 수준 포트 전달을 지정합니다. 이것은 작동합니다
청취할 소켓 할당 포트 로컬 측에서 선택적으로 바인딩
지정 바인딩_주소. 이 포트에 연결될 때마다 연결
보안 채널을 통해 전달되고 애플리케이션 프로토콜을 사용하여
원격 시스템에서 연결할 위치를 결정합니다. 현재 SOCKS4 및
SOCKS5 프로토콜이 지원되며, SSH SOCKS 서버로 작동합니다. 루트만 가능
권한 있는 포트를 전달합니다. 동적 포트 포워딩도 지정할 수 있습니다.
구성 파일.

IPv6 주소는 주소를 대괄호로 묶어서 지정할 수 있습니다. 오직
수퍼유저는 권한 있는 포트를 전달할 수 있습니다. 기본적으로 로컬 포트는
에 따라 게이트웨이 포트 환경. 그러나 명시적 바인딩_주소
특정 주소에 연결을 바인딩하는 데 사용됩니다. NS 바인딩_주소 "로컬 호스트"의
리스닝 포트가 로컬 전용으로 바인드되어 있음을 나타냅니다.
주소 또는 '*'는 포트가 모든 인터페이스에서 사용 가능해야 함을 나타냅니다.

-E 로그 파일
디버그 로그 추가 로그 파일 표준 오류 대신.

-e 탈출_문자
pty가 있는 세션의 이스케이프 문자를 설정합니다(기본값: '~'). 탈출
문자는 줄의 시작 부분에서만 인식됩니다. 이스케이프 문자
뒤에 점('.')이 오면 연결이 닫힙니다. 다음에 control-Z가 일시 중단됩니다.
연결; 그리고 뒤에 그 자체가 이스케이프 문자를 한 번 보냅니다. 설정
문자를 "없음"으로 설정하면 모든 이스케이프가 비활성화되고 세션이 완전히 투명해집니다.

-F 구성 파일
대체 사용자별 구성 파일을 지정합니다. 구성 파일이 다음과 같을 경우
명령줄에 제공된 시스템 전체 구성 파일(/ etc / ssh / ssh_config)
무시됩니다. 사용자별 구성 파일의 기본값은 ~ / .ssh / config.

-f 요청 SSH 명령 실행 직전에 백그라운드로 이동합니다. 이것은 다음과 같은 경우에 유용합니다.
SSH 암호 또는 암호 문구를 요구하지만 사용자는 암호 또는 암호를 원합니다.
배경. 이것은 의미합니다 -n. 원격에서 X11 프로그램을 시작하는 권장 방법
사이트는 다음과 같습니다. SSH -f 주인 xterm.

경우 ExitOnForward실패 구성 옵션이 "yes"로 설정되면 클라이언트
~로 시작한 -f 모든 원격 포트 전달이 성공적으로 완료될 때까지 기다립니다.
백그라운드에서 자신을 배치하기 전에 설정됩니다.

-G 활동 SSH 평가 후 구성을 인쇄하려면 주인 그리고 경기 블록 및
출구.

-g 원격 호스트가 로컬 전달 포트에 연결할 수 있습니다. 멀티플렉스에서 사용하는 경우
연결하려면 마스터 프로세스에서 이 옵션을 지정해야 합니다.

-I pkcs11
PKCS#11 공유 라이브러리 지정 SSH PKCS#11과 통신하는 데 사용해야 합니다.
사용자의 개인 RSA 키를 제공하는 토큰.

-i 신원 파일
공개 키 인증을 위한 ID(개인 키)가 있는 파일을 선택합니다.
읽습니다. 기본값은 ~/.ssh/아이덴티티 프로토콜 버전 1의 경우 ~/.ssh/id_dsa,
~/.ssh/id_ecdsa, ~/.ssh/id_ed25519 그리고 ~/.ssh/id_rsa 프로토콜 버전 2용.
식별 파일은 구성 파일에서 호스트별로 지정할 수도 있습니다.
여러 개 가질 수 있음 -i 옵션(및 에 지정된 여러 ID
구성 파일). 인증서가 명시적으로 지정되지 않은 경우
인증서 파일 지시문 SSH 에서 인증서 정보를 로드하려고 시도합니다.
추가하여 얻은 파일 이름 -cert.pub 파일 이름을 식별합니다.

-K GSSAPI 기반 인증 및 GSSAPI 전달(위임) 가능
서버에 대한 자격 증명.

-k 서버로의 GSSAPI 자격 증명 전달(위임)을 비활성화합니다.

-L [바인딩_주소:]포트:주인:호스트 포트
-L [바인딩_주소:]포트:원격 소켓
-L 로컬 소켓:주인:호스트 포트
-L 로컬 소켓:원격 소켓
로컬에서 주어진 TCP 포트 또는 Unix 소켓에 대한 연결을 지정합니다.
(클라이언트) 호스트는 지정된 호스트 및 포트 또는 Unix 소켓으로 전달됩니다.
먼 쪽. 이것은 TCP 중 하나를 수신하기 위해 소켓을 할당하여 작동합니다. 포트 on
지정에 따라 선택적으로 바인딩된 로컬 측 바인딩_주소, 또는 Unix 소켓에 연결합니다.
로컬 포트나 소켓에 연결될 때마다 연결은
보안 채널을 통해 전달되고 다음 중 하나에 연결됩니다. 주인 포트
호스트 포트, 또는 유닉스 소켓 원격 소켓, 원격 컴퓨터에서.

포트 포워딩은 구성 파일에서도 지정할 수 있습니다. 오직
수퍼유저는 권한 있는 포트를 전달할 수 있습니다. IPv6 주소는 다음으로 지정할 수 있습니다.
주소를 대괄호로 묶습니다.

기본적으로 로컬 포트는 게이트웨이 포트 환경.
그러나 명시적 바인딩_주소 특정 연결을 바인딩하는 데 사용할 수 있습니다.
주소. 그만큼 바인딩_주소 "localhost"는 수신 포트가 바인딩되었음을 나타냅니다.
로컬 전용이며, 빈 주소 또는 '*'는 포트가 다음과 같아야 함을 나타냅니다.
모든 인터페이스에서 사용할 수 있습니다.

-l 로그인 이름
원격 시스템에서 로그인할 사용자를 지정합니다. 이것은 또한 지정할 수 있습니다
구성 파일에서 호스트별로.

-M 위치 SSH 연결 공유를 위해 클라이언트를 "마스터" 모드로 전환합니다. 다수의 -M
옵션 장소 SSH 슬레이브 전에 확인이 필요한 "마스터" 모드로
연결이 허용됩니다. 의 설명을 참조하십시오. 컨트롤마스터 in
SSH_구성(5) 자세한 내용은.

-m mac_spec
쉼표로 구분된 MAC(메시지 인증 코드) 알고리즘 목록으로,
우선순위. 참조 MAC 자세한 내용은 키워드를 참조하십시오.

-N 원격 명령을 실행하지 마십시오. 이것은 포트를 포워딩하는 데 유용합니다.

-n 에서 stdin을 리디렉션합니다. / dev / null (실제로는 stdin에서 읽는 것을 방지합니다). 이것은 반드시
때 사용 SSH 백그라운드에서 실행됩니다. 일반적인 트릭은 이것을 사용하여 X11을 실행하는 것입니다.
원격 시스템의 프로그램. 예를 들어, SSH -n shadow.cs.hut.fi 이맥스 & 결제 게이트웨이,
shadows.cs.hut.fi에서 emacs를 시작하면 X11 연결이 자동으로 됩니다.
암호화된 채널을 통해 전달됩니다. NS SSH 프로그램이 백그라운드에 놓일 것입니다.
(이 경우 작동하지 않습니다. SSH 암호 또는 암호를 요청해야 합니다. 또한 참조
-f 선택권.)

-O ctl_cmd
활성 연결 다중화 마스터 프로세스를 제어합니다. 때 -O 옵션은
지정된, ctl_cmd 인수가 해석되어 마스터 프로세스에 전달됩니다.
유효한 명령은 "check"(마스터 프로세스가 실행 중인지 확인), "forward"입니다.
(명령 실행 없이 전달 요청), "취소"(전달 취소),
"exit"(마스터가 종료하도록 요청) 및 "stop"(마스터가 중지하도록 요청)
추가 다중화 요청 수락).

-o option
구성 파일에 사용된 형식으로 옵션을 제공하는 데 사용할 수 있습니다. 이것은
별도의 명령줄 플래그가 없는 옵션을 지정하는 데 유용합니다. 을위한
아래 나열된 옵션과 가능한 값에 대한 자세한 내용은 다음을 참조하십시오.
SSH_구성(5).

에이전트에 키 추가
주소가족
배치 모드
바인드 주소
정식 도메인
FallbackLocal 정규화
호스트 이름 정규화
MaxDots 정규화
CanonicalizePermittedCNAME
인증서 파일
ChallengeResponse인증
호스트IP 확인
암호
암호문
ClearAllForwarding
압축
압축 수준
연결 시도
연결시간 초과
컨트롤마스터
제어 경로
ControlPersist
다이나믹 포워드
탈출 문자
ExitOnForward실패
지문 해시
포워드에이전트
앞으로X11
앞으로X11시간 초과
앞으로 X11 신뢰
게이트웨이 포트
GlobalKnownHosts파일
GSSAPI인증
GSSAPIDelegate자격 증명
해시알려진호스트
주인
호스트 기반 인증
호스트 기반 키 유형
호스트 키 알고리즘
호스트 키 별칭
호스트 이름
아이덴티티 파일
ID만
IPQoS
KbdInteractive인증
KbdInteractiveDevices
Kex 알고리즘
로컬 명령
로컬포워드
LogLevel
MAC
경기
NoHostAuthenticationForLocalhost
비밀번호 프롬프트 수
비밀번호 인증
PermitLocal명령
PKCS11제공자
포트
선호하는 인증
프로토콜
프록시 명령
ProxyUseFdpass
PubkeyAcceptedKeyTypes
Pubkey 인증
RekeyLimit
리모트포워드
요청TTY
RhostsRSA인증
RSA인증
SendEnv
ServerAliveInterval
ServerAliveCountMax
스트림로컬바인드마스크
StreamLocalBind링크 해제
StrictHostKeyChecking
TCPKeepAlive
터널
터널 장치
호스트 키 업데이트
사용PrivilegedPort
사용자
UserKnownHosts파일
호스트키DNS 확인
비주얼 호스트 키
XAuth위치

-p 포트
원격 호스트에서 연결할 포트입니다. 이것은 호스트별로 지정할 수 있습니다.
구성 파일.

-Q 쿼리 옵션
검색어 SSH 지정된 버전 2에 대해 지원되는 알고리즘에 대해 사용 가능한
기능은 다음과 같습니다. 암호 (지원되는 대칭 암호), 암호 인증 (지원되는 대칭
인증된 암호화를 지원하는 암호), (지원되는 메시지 무결성
코드), kex (키 교환 알고리즘), (키 유형), 키 인증서 (인증서 키
유형), 키 플레인 (인증서가 아닌 키 유형) 및 프로토콜 버전 (지원되는 SSH
프로토콜 버전).

-q 조용한 모드. 대부분의 경고 및 진단 메시지가 표시되지 않도록 합니다.

-R [바인딩_주소:]포트:주인:호스트 포트
-R [바인딩_주소:]포트:로컬 소켓
-R 원격 소켓:주인:호스트 포트
-R 원격 소켓:로컬 소켓
원격지의 주어진 TCP 포트 또는 Unix 소켓에 대한 연결을 지정합니다.
(서버) 호스트는 지정된 호스트 및 포트 또는 Unix 소켓으로 전달됩니다.
지역 측. 이것은 TCP 중 하나를 수신하기 위해 소켓을 할당하여 작동합니다. 포트 나에
원격 측의 유닉스 소켓. 이 포트에 연결할 때마다 또는
Unix 소켓, 연결은 보안 채널을 통해 전달되고 연결은
어느 쪽이든 만들어집니다 주인 포트 호스트 포트로컬 소켓, 로컬 컴퓨터에서.

포트 포워딩은 구성 파일에서도 지정할 수 있습니다. 권한 있는 포트
원격 시스템에서 루트로 로그인할 때만 전달할 수 있습니다. IPv6 주소
주소를 대괄호로 묶어서 지정할 수 있습니다.

기본적으로 서버의 TCP 수신 소켓은 루프백에 바인딩됩니다.
인터페이스 전용. 이것은 다음을 지정하여 재정의할 수 있습니다. 바인딩_주소. 빈
바인딩_주소, 또는 주소 '*'는 원격 소켓이 다음에서 수신 대기해야 함을 나타냅니다.
모든 인터페이스. 리모컨 지정 바인딩_주소 서버가
게이트웨이 포트 옵션이 활성화되었습니다(참조 sshd_config(삼)).

경우 포트 인수가 '0'이면 수신 포트가 동적으로 할당됩니다.
서버에 전달되어 런타임에 클라이언트에 보고됩니다. 와 함께 사용할 때 -O 앞으로
할당된 포트는 표준 출력으로 인쇄됩니다.

-S ctl_path
연결 공유를 위한 제어 소켓의 위치 또는 문자열을 지정합니다.
"none"은 연결 공유를 비활성화합니다. 의 설명을 참조하십시오. 제어 경로 그리고
컨트롤마스터 in SSH_구성(5) 자세한 내용은.

-s 원격 시스템에서 서브시스템 호출을 요청하는 데 사용할 수 있습니다. 서브시스템
다른 애플리케이션(예:
SFTP(1)). 서브시스템은 원격 명령으로 지정됩니다.

-T 의사 터미널 할당을 비활성화합니다.

-t 의사 터미널 할당을 강제 실행합니다. 이것은 임의의 화면을 실행하는 데 사용할 수 있습니다.
원격 시스템의 기반 프로그램, 예를 들어 구현 시 매우 유용할 수 있습니다.
메뉴 서비스. 다수의 -t 옵션은 tty 할당을 강제 실행합니다. SSH 지역이 없다
티.

-V 버전 번호를 표시하고 종료합니다.

-v 상세 모드. 원인 SSH 진행 상황에 대한 디버깅 메시지를 인쇄합니다. 이것은
연결, 인증 및 구성 문제를 디버깅하는 데 유용합니다.
배수 -v 옵션은 자세한 정보를 증가시킵니다. 최대값은 3입니다.

-W 주인:포트
클라이언트의 표준 입력 및 출력이 다음으로 전달되도록 요청합니다. 주인 on 포트
보안 채널을 통해 암시 -N, -T, ExitOnForward실패 그리고
ClearAllForwarding.

-w local_tun[:원격_툰]
지정된 터널 장치 전달을 요청합니다. 큰 술통(4) 사이의 장치
고객 (local_tun) 및 서버(원격_툰).

장치는 숫자 ID 또는 키워드 "any"로 지정할 수 있습니다.
사용 가능한 다음 터널 장치. 만약에 원격_툰 지정하지 않으면 기본값은 "any"입니다.
참조 항목 터널 그리고 터널 장치 지시문 SSH_구성(5). 만약 터널
지시문이 설정되지 않으면 "지점 간"인 기본 터널 모드로 설정됩니다.

-X X11 전달을 활성화합니다. 이것은 호스트별로 지정할 수도 있습니다.
구성 파일.

X11 포워딩은 주의해서 활성화해야 합니다. 우회 능력이 있는 사용자
원격 호스트에 대한 파일 권한(사용자의 X 인증 데이터베이스용)은
전달된 연결을 통해 로컬 X11 디스플레이에 액세스합니다. 그러면 공격자가
키 입력 모니터링과 같은 활동을 수행할 수 있습니다.

이러한 이유로 X11 포워딩에는 X11 SECURITY 확장 제한이 적용됩니다.
기본적으로. 를 참조하십시오 SSH -Y 옵션과 앞으로 X11 신뢰 지령
in SSH_구성(5) 자세한 내용은.

(데비안 전용: X11 포워딩은 X11 SECURITY 확장의 대상이 아닙니다.
너무 많은 프로그램이 현재 이 모드에서 충돌하기 때문에 기본적으로 제한이 있습니다.
설정 앞으로 X11 신뢰 업스트림 동작을 복원하려면 옵션을 "아니오"로 설정합니다. 이것
클라이언트 측 개선 사항에 따라 향후 변경될 수 있습니다.)

-x X11 전달을 비활성화합니다.

-Y 신뢰할 수 있는 X11 전달을 활성화합니다. 신뢰할 수 있는 X11 포워딩은
X11 SECURITY 확장 컨트롤.

(Debian 전용: 이 옵션은 기본 구성에서 아무 것도 하지 않습니다.
"에 해당앞으로 X11 신뢰 yes”, 위에서 설명한 기본값입니다. 세트
전에, 앞으로 X11 신뢰 업스트림 동작을 복원하려면 옵션을 "아니오"로 설정합니다. 이건 아마
클라이언트 측 개선 사항에 따라 향후 변경됩니다.)

-y 다음을 사용하여 로그 정보를 보냅니다. syslog(3) 시스템 모듈. 기본적으로 이 정보는
stderr로 전송됩니다.

SSH 사용자별 구성 파일에서 구성 데이터를 추가로 얻을 수 있으며
시스템 전체 구성 파일. 파일 형식 및 구성 옵션은 에 설명되어 있습니다.
SSH_구성(5).

입증


OpenSSH SSH 클라이언트는 SSH 프로토콜 1 및 2를 지원합니다. 기본값은 프로토콜 2를 사용하는 것입니다.
단, 이는 다음을 통해 변경할 수 있습니다. 프로토콜 에 옵션 SSH_구성(5) 또는 -1 그리고 -2
옵션(위 참조). 프로토콜 1은 사용해서는 안 되며 레거시를 지원하기 위해서만 제공됩니다.
장치. 그것은 많은 암호화 약점으로 고통 받고 있으며 많은 것을 지원하지 않습니다.
프로토콜 2에 사용할 수 있는 고급 기능.

인증에 사용할 수 있는 방법은 다음과 같습니다. GSSAPI 기반 인증, 호스트 기반
인증, 공개 키 인증, 시도-응답 인증 및 암호
입증. 인증 방법은 위에서 지정한 순서대로 시도되지만
선호하는 인증 기본 순서를 변경하는 데 사용할 수 있습니다.

호스트 기반 인증은 다음과 같이 작동합니다. 사용자가 로그인한 컴퓨터가 목록에 있는 경우
in /etc/hosts.equiv or /etc/ssh/shosts.equiv 원격 시스템에서 사용자 이름은
양쪽에서 동일하거나 파일이 ~/.rhosts or ~/.shosts 사용자의 집에 존재
원격 시스템의 디렉토리이고 클라이언트 시스템의 이름이 포함된 행을 포함합니다.
및 해당 시스템의 사용자 이름을 입력하면 해당 사용자는 로그인 대상으로 간주됩니다. 추가적으로,
서버 절대로 필요한 것 클라이언트의 호스트 키를 확인할 수 있습니다(설명 참조
/etc/ssh/ssh_known_hosts 그리고 ~/.ssh/known_hosts, 아래) 로그인이 허용됩니다. 이것
인증 방식은 IP 스푸핑, DNS 스푸핑 및 라우팅으로 인한 보안 허점을 차단합니다.
스푸핑. [관리자 참고 사항: /etc/hosts.equiv, ~/.rhosts및 rlogin/rsh
일반적으로 프로토콜은 본질적으로 안전하지 않으며 보안이 필요한 경우 비활성화해야 합니다.]

공개 키 인증은 다음과 같이 작동합니다. 이 체계는 공개 키 암호화를 기반으로 합니다.
암호화 및 암호 해독이 별도의 키를 사용하여 수행되는 암호 시스템을 사용하고
암호화 키에서 복호화 키를 도출하는 것은 불가능합니다. 아이디어는 각 사용자가
인증을 위해 공개/개인 키 쌍을 생성합니다. 서버는 대중을 알고 있습니다.
키이며 사용자만 개인 키를 알고 있습니다. SSH 공개 키 인증 구현
DSA, ECDSA, Ed25519 또는 RSA 알고리즘 중 하나를 사용하여 프로토콜을 자동으로 만듭니다. 역사
섹션 SSL(8) (비 OpenBSD 시스템에서,
http://www.openbsd.org/cgi-bin/man.cgi?query=ssl&sektion=8#HISTORY)에는 간략한 내용이 포함되어 있습니다.
DSA 및 RSA 알고리즘에 대한 논의.

파일 ~/.ssh/authorized_keys 로그인이 허용된 공개 키를 나열합니다.
사용자가 로그인할 때, SSH 프로그램은 사용하려는 키 쌍을 서버에 알려줍니다.
인증을 위해. 클라이언트는 개인 키와 서버에 대한 액세스 권한이 있음을 증명합니다.
해당 공개 키가 계정을 수락할 권한이 있는지 확인합니다.

사용자는 다음을 실행하여 키 쌍을 생성합니다. ssh-keygen(1). 이것은 개인 키를 다음 위치에 저장합니다.
~/.ssh/아이덴티티 (프로토콜 1), ~/.ssh/id_dsa (DSA), ~/.ssh/id_ecdsa (ECDSA),
~/.ssh/id_ed25519 (Ed25519), 또는 ~/.ssh/id_rsa (RSA)에 공개 키를 저장합니다.
~/.ssh/identity.pub (프로토콜 1), ~/.ssh/id_dsa.pub (DSA), ~/.ssh/id_ecdsa.pub (ECDSA),
~/.ssh/id_ed25519.pub (Ed25519), 또는 ~ / .ssh / id_rsa.pub (RSA) 사용자의 홈 디렉토리에 있습니다.
그런 다음 사용자는 공개 키를 다음 위치에 복사해야 합니다. ~/.ssh/authorized_keys 자신의 홈 디렉토리에
원격 컴퓨터에서. NS 승인 _ 키 파일은 기존의 ~/.rhosts
파일이 있고 한 줄에 하나의 키가 있지만 줄이 매우 길 수 있습니다. 이 후 사용자는
비밀번호를 입력하지 않고 로그인합니다.

공개 키 인증의 변형은 인증서 형태로 제공됩니다.
인증: 공개/개인 키 세트 대신 서명된 인증서가 사용됩니다. 이것
여러 인증 기관 대신 신뢰할 수 있는 단일 인증 기관을 사용할 수 있다는 장점이 있습니다.
공개/개인 키. 의 인증서 섹션을 참조하십시오. ssh-keygen(1) 자세한 내용은.

공개 키 또는 인증서 인증을 사용하는 가장 편리한 방법은
인증 에이전트. 보다 ssh 에이전트(1) 및 (선택적으로) 에이전트에 키 추가 지시어
SSH_구성(5) 자세한 내용은.

Challenge-Response 인증은 다음과 같이 작동합니다.
"challenge" 텍스트를 표시하고 응답을 요청합니다. 시도-응답 인증의 예
BSD 인증 포함(참조 로그인.conf(5)) 및 PAM(일부 비 OpenBSD 시스템).

마지막으로 다른 인증 방법이 실패하면 SSH 사용자에게 암호를 묻습니다. NS
암호는 확인을 위해 원격 호스트로 전송됩니다. 그러나 모든 통신은
암호화된 암호는 네트워크에서 듣는 사람이 볼 수 없습니다.

SSH 모든 호스트에 대한 ID가 포함된 데이터베이스를 자동으로 유지 관리하고 확인합니다.
와 함께 사용한 적이 있습니다. 호스트 키는 다음에 저장됩니다. ~/.ssh/known_hosts 사용자의 집에서
예배 규칙서. 또한 파일 /etc/ssh/ssh_known_hosts 자동으로 확인됩니다
알려진 호스트. 모든 새 호스트는 사용자 파일에 자동으로 추가됩니다. 호스트의 경우
ID는 항상 변경됩니다. SSH 이에 대해 경고하고 암호 인증을 비활성화합니다.
서버 스푸핑 또는 메시지 가로채기(man-in-the-middle) 공격을 방지합니다.
암호화를 우회합니다. NS StrictHostKeyChecking 옵션을 사용하여 로그인을 제어할 수 있습니다.
호스트 키가 알려지지 않았거나 변경된 시스템에

사용자의 ID가 서버에서 수락되면 서버는 다음 중 하나를 실행합니다.
비대화식 세션에서 주어진 명령 또는 명령이 지정되지 않은 경우 로그인
기계는 사용자에게 대화식 세션으로 일반 쉘을 제공합니다. 모든 커뮤니케이션
원격 명령 또는 셸을 사용하면 자동으로 암호화됩니다.

대화형 세션이 요청되는 경우 SSH 기본적으로 의사 터미널만 요청합니다.
(pty) 클라이언트에 대화형 세션이 있는 경우. 깃발 -T 그리고 -t 를 사용할 수 있습니다
이 동작을 무시하십시오.

의사 터미널이 할당된 경우 사용자는 아래에 언급된 이스케이프 문자를 사용할 수 있습니다.

의사 터미널이 할당되지 않은 경우 세션은 투명하며 다음 작업에 사용할 수 있습니다.
바이너리 데이터를 안정적으로 전송합니다. 대부분의 시스템에서 이스케이프 문자를 "none"으로 설정하면
또한 tty를 사용하더라도 세션을 투명하게 만듭니다.

세션은 원격 시스템의 명령 또는 쉘이 종료되고 모든 X11 및
TCP 연결이 닫혔습니다.

ESCAPE 캐릭터


의사 단말이 요청되었을 때, SSH 통해 다양한 기능을 지원합니다.
이스케이프 문자 사용.

단일 물결표 문자는 다음과 같이 보낼 수 있습니다. ~~ 또는 다른 문자에 의해 물결표를 따라
아래에 설명된 것보다. 이스케이프 문자는 항상 줄 바꿈 다음에 와야 합니다.
특별한 의미로 해석됩니다. 이스케이프 문자는 다음을 사용하여 구성 파일에서 변경할 수 있습니다.
전에, 탈출 문자 구성 지시문 또는 명령줄에서 -e 옵션을 선택합니다.

지원되는 이스케이프(기본값 '~'로 가정)는 다음과 같습니다.

~. 연결을 끊습니다.

~^Z 배경 SSH.

~# 전달된 연결을 나열합니다.

~& 배경 SSH 포워딩된 연결/X11 세션을 대기 중일 때 로그아웃 시
끝내다.

~? 이스케이프 문자 목록을 표시합니다.

~B 원격 시스템에 BREAK를 보냅니다(피어가 지원하는 경우에만 유용).

~C 명령줄을 엽니다. 현재 이것은 다음을 사용하여 포트 포워딩을 추가할 수 있습니다.
-L, -R 그리고 -D 옵션(위 참조). 또한 기존의 취소를 허용합니다.
포트 포워딩 -KL[바인딩_주소:]포트 지역의 경우, -KR[바인딩_주소:]포트 을 통한
원격 및 -KD[바인딩_주소:]포트 동적 포트 전달을 위해. !명령
사용자가 로컬 명령을 실행하는 경우 PermitLocal명령 옵션이 활성화됨
SSH_구성(5). 다음을 사용하여 기본 도움말을 사용할 수 있습니다. -h 옵션을 선택합니다.

~R 연결의 키 다시 작성을 요청합니다(피어가 지원하는 경우에만 유용함).

~V 자세한 내용을 줄입니다(LogLevel) 오류가 stderr에 기록되는 경우.

~v 자세한 정보(LogLevel) 오류가 stderr에 기록되는 경우.

TCP 전송


보안 채널을 통한 임의의 TCP 연결 전달은 다음 중 하나에서 지정할 수 있습니다.
명령줄 또는 구성 파일에서. TCP 전달의 한 가지 가능한 응용 프로그램은 다음과 같습니다.
메일 서버에 대한 보안 연결; 다른 하나는 방화벽을 통과합니다.

아래 예에서는 IRC 클라이언트와 서버 간의 암호화 통신을 살펴봅니다.
IRC 서버가 암호화된 통신을 직접 지원하지 않더라도. 이것은 작동합니다
다음과 같이: 사용자는 다음을 사용하여 원격 호스트에 연결합니다. SSH, 사용할 포트 지정
원격 서버에 연결을 전달합니다. 그 후 서비스를 시작할 수 있습니다
동일한 로컬 포트에 연결하는 클라이언트 시스템에서 암호화될 SSH
연결을 암호화하고 전달합니다.

다음 예는 IRC 세션을 클라이언트 시스템 "127.0.0.1"(localhost)에서 다음으로 터널링합니다.
원격 서버 "server.example.com":

$ ssh -f -L 1234:localhost:6667 server.example.com 절전 10
$ irc -c '#사용자' -p 1234 새끼손가락 127.0.0.1

이것은 IRC 서버 "server.example.com"에 대한 연결을 터널링하여 "#users" 채널에 합류합니다.
포트 1234를 사용하여 별명 "pinky". 어떤 포트가 사용되는지는 중요하지 않습니다.
1023보다 크며(루트만이 권한 있는 포트에서 소켓을 열 수 있음을 기억하십시오)
이미 사용 중인 포트와 충돌합니다. 연결은 컴퓨터의 포트 6667로 전달됩니다.
IRC 서비스의 표준 포트이기 때문에 원격 서버.

The -f 옵션 배경 SSH 원격 명령 "sleep 10"은 다음을 허용하도록 지정됩니다.
터널링될 서비스를 시작하는 데 걸리는 시간(예시에서는 10초)입니다.
지정된 시간 내에 연결이 되지 않으면 SSH 종료됩니다.

X11 전송


경우 앞으로X11 변수가 "yes"로 설정됩니다(또는 -X, -x-Y
위의 옵션) 사용자가 X11(DISPLAY 환경 변수가 설정됨)을 사용하고 있는 경우
X11 디스플레이에 대한 연결은 이러한 방식으로 원격 측에 자동으로 전달됩니다.
쉘(또는 명령)에서 시작된 모든 X11 프로그램은 암호화된
채널에 연결하고 실제 X 서버에 대한 연결은 로컬 시스템에서 이루어집니다. NS
사용자는 DISPLAY를 수동으로 설정해서는 안 됩니다. X11 연결의 전달은 다음에서 구성할 수 있습니다.
명령줄 또는 구성 파일에서.

에 의해 설정된 DISPLAY 값 SSH 서버 시스템을 가리키지만 표시 번호가 있습니다.
XNUMX보다 큽니다. 이것은 정상이며 다음과 같은 이유로 발생합니다. SSH "프록시" X 서버를 생성합니다.
암호화된 채널을 통해 연결을 전달하기 위한 서버 시스템.

SSH 또한 자동으로 서버 시스템에 Xauthority 데이터를 설정합니다. 이 목적을 위해,
무작위 인증 쿠키를 생성하여 서버의 Xauthority에 저장하고
전달된 모든 연결이 이 쿠키를 전달하는지 확인하고 실제 쿠키로 대체합니다.
연결이 열릴 때. 실제 인증 쿠키는 서버로 전송되지 않습니다.
(그리고 쿠키는 일반에서 전송되지 않음).

경우 포워드에이전트 변수가 "yes"로 설정됩니다(또는 -A 그리고 -a
위의 옵션) 사용자가 인증 에이전트를 사용 중인 경우 에이전트에 대한 연결은
자동으로 상대방에게 전달됩니다.

확인 HOST 열쇠


서버에 처음 접속할 때 서버 공개키의 지문은
사용자에게 제시(옵션이 아닌 경우 StrictHostKeyChecking 비활성화되었습니다).
지문은 다음을 사용하여 결정할 수 있습니다. ssh-keygen(1) :

$ ssh-keygen -l -f /etc/ssh/ssh_host_rsa_key

지문을 이미 알고 있는 경우 일치시킬 수 있으며 키를 수락하거나
거부되었습니다. 서버에 대한 레거시(MD5) 지문만 사용할 수 있는 경우 ssh-keygen(1)
-E 옵션은 일치하도록 지문 알고리즘을 다운그레이드하는 데 사용할 수 있습니다.

지문 문자열만 보고 호스트 키를 비교하기 어렵기 때문에,
다음을 사용하여 호스트 키를 시각적으로 비교하는 지원도 있습니다. 닥치는대로의 예술. 설정하여
비주얼 호스트 키 옵션을 "예"로 설정하면 로그인할 때마다 작은 ASCII 그래픽이 표시됩니다.
세션 자체가 대화식인지 여부에 관계없이 서버. 패턴을 익히면서
알려진 서버가 생성하면 사용자는 호스트 키가 변경되었음을 쉽게 알 수 있습니다.
완전히 다른 패턴이 표시됩니다. 이러한 패턴이 명확하지 않기 때문에
그러나 기억된 패턴과 비슷하게 보이는 패턴은
호스트 키가 동일할 확률, 보장된 증거가 아닙니다.

알려진 모든 호스트에 대한 임의의 기술과 함께 지문 목록을 얻으려면
다음 명령줄을 사용할 수 있습니다.

$ ssh-keygen -lv -f ~/.ssh/known_hosts

지문을 알 수 없는 경우 다른 확인 방법을 사용할 수 있습니다. SSH
DNS에 의해 확인된 지문. 추가 리소스 레코드(RR) SSHFP가
zonefile 및 연결 클라이언트는 키의 지문과 지문을 일치시킬 수 있습니다.
제시했다.

이 예에서는 클라이언트를 "host.example.com"이라는 서버에 연결합니다. SSHFP
리소스 레코드는 먼저 host.example.com의 zonefile에 추가해야 합니다.

$ ssh-keygen -r 호스트.example.com.

출력 라인은 zonefile에 추가되어야 합니다. 영역이 응답하는지 확인하려면
지문 쿼리:

$ 파기 -t SSHFP host.example.com

마지막으로 클라이언트는 다음과 같이 연결합니다.

$ ssh -o "VerifyHostKeyDNS 요청" host.example.com
[...]
DNS에서 일치하는 호스트 키 지문을 찾았습니다.
계속 연결 하시겠습니까 (예 / 아니오)?

을 참조 호스트키DNS 확인 에 옵션 SSH_구성(5) 자세한 내용은.

SSH 기반 가상 은밀한 네트워크


SSH 가상 사설망(VPN) 터널링 지원 포함 큰 술통(4) 네트워크
두 개의 네트워크를 안전하게 결합할 수 있는 의사 장치. NS sshd_config(5)
구성 옵션 허가터널 서버가 이것을 지원하는지 여부를 제어합니다.
수준(계층 2 또는 3 트래픽).

다음 예는 클라이언트 네트워크 10.0.50.0/24를 원격 네트워크와 연결합니다.
10.0.99.0에서 24까지의 지점간 연결을 사용하는 10.1.1.1/10.1.1.2. 단,
192.168.1.15에서 원격 네트워크에 대한 게이트웨이에서 실행되는 SSH 서버는 이를 허용합니다.

클라이언트에서 :

# ssh -f -w 0:1 192.168.1.15 참
# ifconfig tun0 10.1.1.1 10.1.1.2 넷마스크 255.255.255.252
# 경로 추가 10.0.99.0/24 10.1.1.2

서버에서:

# ifconfig tun1 10.1.1.2 10.1.1.1 넷마스크 255.255.255.252
# 경로 추가 10.0.50.0/24 10.1.1.1

클라이언트 액세스는 /root/.ssh/authorized_keys 파일(아래 참조)
그리고 루트 로그인 허용 서버 옵션. 다음 항목은 연결을 허용합니다.
큰 술통(4) 사용자 "jane"의 장치 1 및 사용자 "john"의 tun 장치 2, 다음과 같은 경우 루트 로그인 허용 is
"강제 명령 전용"으로 설정:

tunnel="1",command="sh /etc/netstart tun1" ssh-rsa ... 제인
tunnel="2",command="sh /etc/netstart tun2" ssh-rsa ... 존

SSH 기반 설정에는 상당한 오버헤드가 수반되므로
무선 VPN과 같은 임시 설정. 더 영구적인 VPN은 다음에서 제공하는 것이 좋습니다.
같은 도구 ipsectl(8)과하면 isakmpd(8).

환경


SSH 일반적으로 다음 환경 변수를 설정합니다.

DISPLAY DISPLAY 변수는 X11 서버의 위치를 ​​나타냅니다. 그것은이다
에 의해 자동으로 설정 SSH "hostname:n" 형식의 값을 가리키려면
여기서 "호스트 이름"은 쉘이 실행되는 호스트를 나타내고 'n'은
정수 ≥ 1. SSH 이 특수 값을 사용하여 X11을 전달합니다.
보안 채널을 통한 연결. 사용자는 일반적으로 설정하지 않아야 합니다.
명시적으로 DISPLAY하면 X11 연결이 안전하지 않게 됩니다.
(그리고 사용자가 필요한 권한을 수동으로 복사해야 합니다.
쿠키).

HOME 사용자의 홈 디렉토리 경로로 설정합니다.

LOGNAME USER의 동의어입니다. 이것을 사용하는 시스템과의 호환성을 위해 설정
변하기 쉬운.

MAIL 사용자 사서함의 경로로 설정합니다.

PATH 컴파일할 때 지정된 대로 기본 PATH로 설정합니다. SSH.

SSH_ASKPASS SSH 암호가 필요하면 암호를 읽습니다.
터미널에서 실행된 경우 현재 터미널입니다. 만약에 SSH 이 없습니다
연결된 터미널이지만 DISPLAY 및 SSH_ASKPASS가 설정되어 있으면
SSH_ASKPASS에 의해 지정된 프로그램을 실행하고 X11을 엽니다.
암호를 읽는 창입니다. 이것은 다음과 같은 경우에 특히 유용합니다.
부름 SSH 에서 .x세션 또는 관련 스크립트. (일부 주의
입력을 리디렉션해야 할 수도 있습니다. / dev / null
이 작업을 수행하십시오.)

SSH_AUTH_SOCK 통신에 사용되는 UNIX 도메인 소켓의 경로를 식별합니다.
에이전트.

SSH_CONNECTION 연결의 클라이언트와 서버 끝을 식별합니다. 변수
XNUMX개의 공백으로 구분된 값 포함: 클라이언트 IP 주소, 클라이언트 포트
번호, 서버 IP 주소 및 서버 포트 번호.

SSH_ORIGINAL_COMMAND 이 변수는 강제 명령이 실행되는 경우 원래 명령줄을 포함합니다.
실행됩니다. 원래 인수를 추출하는 데 사용할 수 있습니다.

SSH_TTY 이것은 연결된 tty(장치 경로)의 이름으로 설정됩니다.
현재 쉘 또는 명령으로. 현재 세션에 tty가 없으면
이 변수는 설정되어 있지 않습니다.

TZ 이 변수는 설정된 경우 현재 시간대를 나타내도록 설정됩니다.
데몬이 시작되었을 때(즉, 데몬이 값을
새로운 연결).

USER 로그인한 사용자의 이름으로 설정합니다.

또한, SSH 읽기 ~/.ssh/환경, "VARNAME=value" 형식의 행을 다음에 추가합니다.
파일이 존재하고 사용자가 환경을 변경할 수 있는 경우 환경. 을위한
자세한 내용은 참조 사용자 환경 허용 에 옵션 sshd_config(5).

onworks.net 서비스를 사용하여 온라인으로 ssh 사용


Ad




×
광고
❤️여기에서 쇼핑, 예약, 구매하세요. 비용이 들지 않아 서비스를 무료로 유지하는 데 도움이 됩니다.