체뚱로그

[Linux] 리눅스에 SSH 서버 설치 본문

Language/Linux

[Linux] 리눅스에 SSH 서버 설치

sooyeoniya 2023. 11. 15. 11:11

리눅스에 SSH 서버를 설치하고 SSH Client를 이용하여 서버에 접속하는 과정을 상세히 기록해보았다.

1. SSH 설치

1) OpenSSH 설치

sudo su # root 사용자로 변경

apt search openssh # OpenSSH 관련된 패키지 목록 출력

# 설치되어 있지 않을 경우 다음 명령어 실행(OpenSSH 서버와 클라이언트 설치)
apt install openssh-server openssh-client

 

OpenSSH 설치 잘 되었는지 확인

2. SSH 설정

1) 설정 파일 수정

(1) vim으로 SSH 설정 파일 열기

vim /etc/ssh/sshd_config # vim으로 SSH 설정 파일 열기

 

(2) 설정 파일 내부에서 다음과 같이 입력

:set nu # 맨 아래에 다음과 같이 입력하고 ENTER하면 파일 내에 줄 번호가 표시됨.

 

vim에서는 입력시 i 키를 누르고 INSERT모드로 변경 후 입력 가능하다.

수정을 모두 끝냈으면 ESC키를 누르고 다음과 같은 명령어 입력이 가능하다.

  • 저장 후 나가기 - :wq!
  • 저장하지 않고 나가기 - :q!

SSH 설정 파일을 아래와 같이 변경해둔다.

Port 22 # 22번 포트 사용을 위해 주석 제거
PermitRootLogin yes # 사용 편의를 위해 잠시 root 로그인 허용

 

2) 설정 변경 사항 적용

설정 변경 사항을 적용하기 위해 SSH 서버를 다시 시작하는 명령어를 사용한다.

systemctl restart sshd.service # SSH 서버 재시작 명령어

 

3) 방화벽 해제

apt install -y firewalld # firewall-cmd 설치

firewall-cmd --permanent --zone=public --add-port=22/tcp # 22번 포트 열기

firewall-cmd --reload # 변경 사항 적용

success가 뜨면 성공적으로 적용되었다는 뜻이다.

4) OpenSSH 서비스 구동 확인

service sshd start # 서비스 실행
service sshd status # 서비스 상태 확인
service ssh stop # 서비스 종료

Active: active (running)이 뜨면 서비스가 잘 진행되고 있다는 것을 확인할 수 있다.

3. SSH 접속

1) 호스트 주소 확인

apt install net-tools # ifconfig 사용을 위해 설치

# 호스트 주소 확인 명령어 두 가지
ifconfig
ip a

 

위 두 가지 방법으로 호스트 IP를 확인할 수 있다.

ps aux | grep sshd # 현재 실행 중인 프로세스 중 sshd 명령어를 사용하는 프로세스 확인
ps aux | grep ssh

2) 통신 상태 확인

구글에서 관리하는 IP로 핑을 보내어 통신 상태를 확인한다.

ping 8.8.8.8

 

다음과 같이 뜰 경우 통신이 잘 되고 있다는 것을 확인할 수 있다.

3) SSH Client를 통한 호스트 주소 접속

Window Client인 'Putty'를 통해 해당 호스트 주소로 접속할 수 있다.

  1. Putty를 열어 Session 탭 선택
  2. Host Name(IP address): 본인 컴퓨터의 호스트 IP 주소 입력
  3. Port: 22
  4. Connection type: SSH
  5. Saved Sessions: 'sshtest' -> 저장하고 싶은 이름 자유롭게 입력
  6. Save 버튼 클릭

*. 추가 설정: Window > Translation 에 들어가 Remote character set을 UTF-8로 설정

-> 터미널 실행 시 한글이 깨지지 않도록 하기 위함이다.

 

저장한 세션을 선택하고 Open 버튼 클릭

다음 화면이 뜨면 원하는 사용자로 로그인 후 비밀번호를 입력하여 원격 접속한다.

이처럼 Welcome to ~가 뜨고 성공적으로 root 사용자로 로그인 된 것을 확인할 수 있다.

위와 같이 뜨면 ssh를 사용하여 해당 호스트에 원격 접속이 된 것이다.

- 명령어 ‘exit’를 치면 종료

 

Comments