리눅스(우분투) 원격 접속 ssh / PuTTY
- 2019. 9. 8. 00:04
원격 접속에 telnet이 주름잡던 시절이 있었습니다. 하지만 telnet통신은 패킷이 암호화되지 않는 심각한 보안 문제가 있었고 크래커들은 이 암호화되지 않은 패킷을 스니핑 하여 쉽게 염탐할 수 있었습니다.
때문에 이를 보완할 통신규약이 필요하였고 시큐어 셸 (Secure Shell, SSH)이 탄생하게 되었습니다. 이 규약으로 통신을 할 경우 패킷 스니핑을 당하더라도 패킷이 암호화되어 있어서 쉽게 내용을 파악하지 못하는 장점을 가지고 있습니다.
이러한 ssh는 예전에는 리눅스에 기본적으로 설치되고 실행되게 되어 있었지만 기본으로 사용되는 22번 포트와 root접속이 가능한 설정으로 되어 있었기에 리눅스가 설치되어 있는 IP가 노출되면 크래커의 취미 생활인 패스워드 찾기의 표적이 되기 쉬웠습니다.
그래서 요즘 배포되는 리눅스는 이 ssh를 클라이언트만 제공하고 ssh서버는 별도로 설치하도록 제공되고 있습니다. 그래서 리눅스를 설치하고 ssh서버를 다운로드하여 설정을 변경하는 방법에 대해 알려 드리려고 합니다.
리눅스 원격 접속
우분투 ssh서버 설치
우분투 ssh 설치 명령어 |
sudo apt-get install ssh |
사실 이 한 줄의 명령어로 ssh서버가 설치되고 실행됩니다. 그래서 기본 설정 그대로 사용을 하고자 한다면 그냥 접속하셔서 사용하실 수 있습니다. ssh서버 상태는 아래 명령어와 같이 확인할 수 있습니다.
ssh 서비스 상태 확인 명령어 |
service ssh status |
하지만 이 상태로 사용한다면 기본 포트 22번을 사용하기에 좀 찝찝한 감이 있습니다. 때에 따라서는 거의 발생하지 않지만 root접속을 허용해야 할 경우도 발생하기도 합니다. 그래서 ssh의 config파일을 수정하여 기본 설정값을 변경합니다.
우분투 sshd_config 파일 기본 설정 수정
ssh config파일 경로 |
/etc/ssh/sshd_config |
config파일의 내용을 보면 #으로 주석 처리되어있는 설정 항목들을 확인하실 수 있습니다.
이 항목들 중 기본적인 port번호와 root접속 허용하는 항목에 대해 알아보겠습니다. 참고로 config파일의 항목들은 ssh종류에 따라 버전에 따라 서로 상이합니다.
Port22
- Port 항목 앞의 주석 #을 삭제하고 22의 숫자를 적절한 숫자로 변경합니다. 단, 포트번호가 낮으면 주로 사용하는 포트와 충돌이 발생될 수 있으므로 되도록 1024 숫자 이상의 포트를 사용하시기를 권장합니다.
PermitRootLogin prohibit-password
- 요즘 ssh는 보안상의 이유로 root계정으로 터미널 접속을 불허하고 있습니다. 하지만 때에 따라서 root접속을 해야만 하는 경우가 발생하기도 합니다. 이때 "PermitRootLogin" 항목을 찾아 뒤의 "prohibit-password" 메시지를 삭제하고 "yes"로 변경해 주시면 됩니다. 반대로 root계정 접속을 불허하려면 "no"로 변경하시면 됩니다.
참고로 root계정으로 접속하기 위해서는 우분투에서 root계정에 패스워드를 지정해 주어야 합니다.
항목들 설정이 완료되면 ssh서비스를 재시작해주셔야 변경된 사항이 반영됩니다. 다음 명령어로 ssh서비스를 재시작할 수 있습니다.
ssh 서비스 재시작 명령어 |
service ssh restart |
이외의 설정 항목들은 일반적인 상황에서 수정할 일이 거의 없습니다. 그래도 나중에 기회가 된다면 우분투에 설치한 ssh config파일의 모든 항목을 다뤄보겠습니다.
PuTTY 다운로드
우분투에 ssh를 설치했으니 이제 원격에서 PuTTY를 다운로드하여 우분투에 접속해 보겠습니다. 필자의 경우 SecureCRT를 주로 사용하지만 유료이고 단순히 원격 접속으로 간단한 작업을 한다면 무료인 PuTTY도 충분히 매력적인 원격 접속 툴이 될 수 있습니다. PuTTY 다운로드는 PuTTY사이트에서 다운로드할 수 있습니다.

here부분의 링크를 클릭하면 아래와 같이 msi 설치 파일을 제공합니다. 만약 PuTTY를 설치하지 않고 사용하고자 한다면 바로 밑에 바이너리 파일을 제공하고 있습니다. exe파일로 제공되는 파일을 다운로드하여 단순히 실행하면 바로 PuTTY를 사용할 수 있습니다.

exe파일은 크래커들에 의해 사이트가 공격당했을 경우 악성코드가 있을 가능성이 매우 큽니다. 또한 exe파일로 편리하게 PuTTY를 실행하다가 다른 사이트에서 최신 버전이라고 속이고 배포한 exe파일을 다운로드하여 실행하는 순간 컴퓨터는 크래커들 손에 들어가게 됩니다.
때문에 필자의 경우에는 msi설치 파일을 다운로드하여 PuTTY를 설치해 보겠습니다.




중간중간 설명이 필요 없을 만큼 설치가 쉽습니다.
PuTTY 우분투 ssh 접속
설치한 PuTTY를 실행합니다. Host Name에 접속하고자 하는 우분투 IP를 입력해 줍니다. Port 부분에 위에서 변경한 Port번호를 입력해 줍니다. 접속 타입은 SSH로 놔두고 Open을 눌러 접속을 합니다.

PuTTY 보안 경고문구가 출력되는데 "예"를 눌러 계속 진행합니다.

우분투에 SSH접속이 완료되면 우분투 계정을 입력합니다. 계정 정보를 정확히 입력하였다면 $프롬프트를 확인하실 수 있습니다. 만약 root로 접속하셨다면 #을 확인하실 수 있습니다.
