ssh 관련 사용 옵션

SSH Usages

Ssh timeout

ssh를 사용시 접속 시간이 지나면 자동 끎김을 막아주는 옵션들이 있다.

운영하는 서버는 보안상 alive 메시지를 모두 막아 두었다.
다만, ssh 접속시 ServerAliveInterval 을 사용해서 클라이언트가 alive 메시지를 서버에 있다.

sshd

sshd 데몬은 클라이언트 접속후 sshd_config에 구성한 설정데로 alive 메시지를 클라이언트에 주고 받아 접속 시간을 연장할 수 있다. 아래 그림 [^1]

1
2
3
4
5
6
7
8
9
10
11
# alive 메시지 사용 결정
#TCPKeepAlive yes # 기본 yes.

# 클라이언트가 살아있는지 확인하는 간격.
ClientAliveInterval 60 # 기본 0.
# 클라이언트에서 응답이 없을 때 메시지를 보내는 횟수
ClientAliveCountMax 3 # 확인 횟수

# Login Prompt에서 사용자 입력을 기다리는 시간을 초 단위로 입력.
LoginGraceTime 20 #( 1m: 기본 1분지정, 0은 시간제한없음)

ssh 옵션

ssh 사용시 /etc/ssh/ssh_config 구성 파일에 있는 ServerAliveInterval 옵션을 사용하면 ssh 접속시 alive 메시지를 서버가 클라이인트에게 주어진 시간 간격으로 보낸다.

[그림. ServerAliveInterval]

ssh_config 파일에 구성하거나 ssh 사용시 -o ServerAliveInterval 옵션을 사용하는 방법 두 가지가 있다.

ssh -o

ServerAliveInterval option every time you’re connecting to a server by using the -o ServerAliveInterval= prefix as the following example;

1
ssh -o ServerAliveInterval=300 user@example.com

key파일 사용

키파일 이용

키파일을 원하는 위치에 복사하고 퍼미션을 400으로 조정합니다. (저는 ~/Desktop/key/로 정했습니다.)

1
$ chmod 400 ~/Desktop/key/keyfile.pem

터미널에서 키파일 옵션을 추가한 명령으로 ssh 접속

1
$ ssh -i ~/Desktop/key/keyfile.pem ec2-user@[서버 아이피 또는 도메인]

포트가 다르다면

1
$ ssh -i ~/Docments/cloud-server.pem root@220.11.11.173 -p 8888

서버 키 생성

서버에도 클라이언트와 동일하게 ssh-keygen 명령으로 비밀키와 공개키를 생성한다.

1
(SERVER)$ ssh-keygen -t rsa -b 4096 -C "USER@server"

scp -i /Documents/ncloud-key/qkbooo-ncloud.pem ~/.ssh/id_rsa.pub root@210.89.190.173:/ -p 2525

1
2
ssh userid@SERVER
(SERVER) $ cat client.pub >> .ssh/authorized_keys; rm client.pub

포트변경 사용

rsync 포트 사용

rsync에서 다른 ssh 포트를 사용하고 있을 경우 아래와 같이 옵션을 붙여준다.

1
$ rsync -e 'ssh -p 0000'

혹은

1
rsnyc --rsh'=ssh -p0000'

참조

[^1]: How to keep your ssh connection

Author

Gangtai Goh

Posted on

2016-01-02

Updated on

2023-05-14

Licensed under

댓글