원격 접속을 위한 방법 2가지 SSH / TELNET

froajnzd·2022년 11월 14일
0

network

목록 보기
4/5

원격 접속을 위한 도구로 주로 ssh를 사용했었는데, 최근 ssh가 먹히지 않은 상황이 발생하여 다른 원격 접속 방법을 찾고자 하였다. (정말 바보같게도 sshd_config 파일을 잘못 건드려서 ssh 원격 접속이 다 막혔던 상태가 있었다. 평소라면 장치에 직접 접속하여 config 파일을 원상복구 시켰을텐데 그럴만한 상황이 되지 않았다)
결국 ssh 말고 다른 방법으로 원격장치 내부로 접속할 수 있는 방법을 강구해내어야 했다.
그러던 도중 ★은인★의 도움으로 telnet으로 접속할 수 있게 되었다
이런 의미에서 ssh 접속 방법과 telnet 접속 방법에 대해 정리해 보고자 한다.

SSH

1. 이론

Secure SHell의 약어로, TCP 상에 보안 채널(터널링)을 형성하여 해당 채널 위에서 기타 응용 프로토콜들이 안전하게 데이터를 교환할 수 있게 한다.
전송계층 프로토콜: TCP만 가능.
기본 포트 번호: 22(ssh 서버에 개방되는 포트이다)
제공 기능

  • 인증(Authentication): 클라이언트 인증 및 서버 인증
  • 기밀성 유지. 암호화(Encryption): 데이터 전송 전에 암호화하여 전송
  • 무결성(Integrity): 데이터 전송 중에 중간자 공격에 의한 변경 방지를 위하여 MAC 코드를 통해 구현
  • 압축(Compression): 보낼 데이터를 압축 수행하고 이를 암호화하여 전송
  • 포트 포워딩(터널링): 보안 TCP 연결
  • 다중화: 클라이언트와 서버 간에 보안 채널이 형성된 후, 클라이언트 측에서 복수의 논리 채널을 설정 가능

2. 환경

접속하려는 장치에 SSH가 깔려있어야 한다.
접속 시도하는 장치에는 ssh를 설치하지 않아도 된다.

3. 기본 자주 사용하는 명령어

ssh [remote user]@[remote ip] -p [port]

4. OPTION

ssh [-a] [-c idea blowfish des 3des arcfour tss none] [-e escape_char] A [-I identity_file] [-l login_name] [-n] [-k] [-V] [=o option] [-p port] A [-q] [-P] [-t] [-v] [-x] [-C] [-L port "host:hostport] [-R port:host:hostport] Ahostname [command]
OPTIONDESCRIPTION
-a인증 에이전트의 전송을 불허
-c세션을 암호화하는데 사용할 암호 해독기를 선택한다.
-e세션에 대한 이스케이프 문자를 설정
-f인증과 전송이 설정된 후에 백그라운드에서 ssh를 설정
-iRSA 인증을 위한 비밀 키를 읽어 올 아이덴티티 파일을 선택
-kKerberos 티켓의 전송을 불허
-l원격 시스템에 사용할 로그인 이름을 설정
-nssh가 백그라운드에서 실행될 때 사용되는 /dev/nulls 로 부터의 stdin을 재지정
-o구성 파일의 형식을 따르는 사용자 정의 옵션 사용
-p원격 호스트에 있는 연결할 포트 설정
-q모든 메시지를 억제하는 quiet 모드를 활성화한다.
-P특권이 부여되지 않은 포트를 사용
-tpseudo-tty 할당을 강제
-xX11 전송을 불가능하게 한다.
-C모든 데이터의 압축을 요구한다.
-L지정된 원격 호스트와 포트에 전송할 로컬 포트 설정
-R로커 호스트와 지정된 포트로 전송될 원격 포트 설정
-v디버깅 모드 진입

Telnet

1. 이론

SSH같은 원격지의 호스트 컴퓨터에 접속하기 위해 사용되는 인터넷 프로토콜. 텔넷의 보안 문제때문에 SSH를 사용하는 추세라고 한다

2. 환경

Window os에서는 [프로그램 추가/제거]>[Windows 기능 켜기/끄기]>check [텔넷 클라이언트]>[확인] 으로 텔넷 클라이언트를 활성화해주어야 한다.

3. 기본 자주 사용하는 명령어

telnet [IP or Domain]
telnet [IP or Domain] [port]

port는 옵션임을 인지해야 함.

4. OPTION

telnet [-a] [-e <escapechar>] [-f <filename>] [-l <username>] [-t {vt100 | vt52 | ansi | vtnt}] [<host> [<port>]] [-?]
OPTIONDESCRIPTION
-a자동 로그인. -l과 동일하지만, username을 작성하지 않고 현재 로그인된 유저의 이름을 사용
-e [escapechar]telnet 클라이언트 프롬프트를 입력할 때 사용할 escape 문자
-f [filename]클라이언트 측 로그인을 위해 사용될 파일 이름
-l [username]원격 컴퓨터에 접속할 유저네임
-t {vt100vt52
[host [port]]hostname 이나 IP address / optionally the TCP port (고유번호 23).
-?명령어 help 창





다음에는 원격 COPY 명령어로 scp와 rcp를 알아보도록 하겠다.

0개의 댓글