1. /etc/ssh
- 다음 경로로 들어가서 ls를 쳐보면 다음과 같이 출력됩니다.
moduli ssh_host_ecdsa_key.pub ssh_host_rsa_key
ssh_config ssh_host_ed25519_key ssh_host_rsa_key.pub
ssh_host_ecdsa_key ssh_host_ed25519_key.pub sshd_config
- 여기서 ssh_config, sshd_config 두 개의 설정 파일이 있는데, 보통 리눅스마스터 1급 문제에서는 sshd_config를 출제합니다.
2. ssh_config
- 목적: 클라이언트 설정
- 위치: 일반적으로
/etc/ssh/ssh_config
또는 ~/.ssh/config
에 위치해 있습니다.
- 적용 대상:
ssh
명령을 사용하는 사용자(클라이언트)
- 설정 예:
- 원격 서버에 접속할 때 사용할 포트 번호
- 특정 서버에 접속할 때 사용할 키 파일
- 호스트 별명 설정 등
ssh_config
파일은 SSH 클라이언트의 동작을 제어합니다. 여기에 설정된 옵션은 ssh
명령어를 사용할 때 적용됩니다.
3. sshd_config
- 목적: 서버 설정
- 위치: 일반적으로
/etc/ssh/sshd_config
에 위치해 있습니다.
- 적용 대상: SSH 서버(
sshd
)
- 설정 예:
- 사용할 포트 번호
- 허용되는 인증 방법
- 루트 로그인 허용/비허용
- 접속 허용/비허용 IP 범위 등
sshd_config
파일은 SSH 서버의 동작을 제어합니다. 이 설정은 sshd
서비스가 시작할 때 적용됩니다.
4. 요약
ssh_config
: SSH 클라이언트 설정. 사용자가 ssh
명령어를 사용할 때 적용되는 설정입니다.
sshd_config
: SSH 서버 설정. sshd
서비스가 동작할 때 적용되는 설정입니다.
5. 문제1
5-1. 문제1 풀이
- cat sshd_config | grep -i log -C 10000
- PrintLastLog yes 옵션을 쉽게 찾을 수 있다.
6. 문제2
- 다음은 운영 중인 sshd 서버로 접근하는 root 계정에 대한 거부 설정을 하는 과정이다. 조건 맞게 ( 괄호 ) 안에 알맞은 내용을 적으시오.
# vi ( ① )
( ② )
■ 조건
- ①번은 관련 파일명을 절대경로로 기입한다.
- ②번은 관련 항목과 값만 한 줄로 기입한다.
6-1. 문제2 풀이
- sshd_config 파일을 열어 항목을 확인할 수 있다.
- root 문자열을 검색하는 명령어를 사용하면 된다.
cat sshd_config | grep -i root -C 10000
7. 문제3
- 다음은 ssh 클라이언트에서 ssh 서버인 192.168.12.22로 접근하는 과정이다. 조건에맞게( 괄호 ) 안에 알맞은 내용을 적으시오.
- 가. 현재 ihduser로 로그인되어 있는 상태이다. kaituser로 계정을 변경해서 접근하는 명령을 기입한다.
$ ssh ( ① )
- 나. ssh 서버의 포트 번호가 180번으로 변경된 경우에 접근하는 명령을 기입한다.
$ ssh ( ② )
- 다. ssh 서버의 홈 디렉터리에 data 디렉터리는 생성하는 명령을 기입한다.
$ ssh ( ③ )
- 라. ssh 서버에 키 기반 인증을 위해 ssh 클라이언트에서 관련 키 쌍을 생성하는 명령을 기입한다.
$ ( ④ )
■ 조건
- ① ∼ ③번은 옵션 및 관련 인자값 등을 한 번에 기입한다. (예: -a, -g ihd)
- ④번은 관련 명령어를 기입하는데, 옵션이 필요한 경우에는 한 번에 기입한다.
7-1. 문제3 풀이
- 기본적으로 ssh hostname의 형식을 따른다.
- 때문에 ssh 192.168.12.22 의 기본 형식을 따르면서 답안 작성을 수행해야함.
- ssh kaituser@192.168.12.22
- ssh -p 180 192.168.12.22
- ssh 192.168.12.22 mkdir ~/data
- ssh-keygen