Post

리눅스 기반의 홈 서버 구축하기 (2)

리눅스 기반의 홈 서버 구축하기 (2)

이번 포스팅에서는 원격 접속이 가능하도록 SSH 설정과 함께, 보안 강화를 위해 방화벽 설정을 진행하겠습니다.
이전 포스팅을 먼저 참고하시면, 더 큰 도움이 될 수 있습니다.

리눅스 기반의 홈 서버 구축하기 (1)

1. SSH 설정


1-1. OpenSSH Server 설치 및 실행

먼저 SSH 설정을 위해 apt 업데이트 및 OpenSSH Server를 설치합니다.

1
2
sudo apt-get update
sudo apt-get install openssh-server

설치가 완료되면 SSH 서비스가 자동으로 실행됩니다.
정상적으로 실행중인지 확인하기 위해 아래 명령어를 입력합니다.

1
sudo systemctl status ssh

만약 서비스가 실행되고 있지 않다면, start 명령어로 서비스를 시작합니다.
또한, 재부팅 이후에도 SSH 서버가 자동 시작될 수 있도록 서비스를 enable 합니다.

1
2
sudo systemctl start ssh
sudo systemctl enable ssh

1-2. SSH 보안 강화 (선택)

OpenSSH Server는 기본 22번 포트를 사용합니다.
보안을 더욱 강화하기 위해 SSH 포트를 다른 포트로 변경할 수 있습니다.

SSH 포트 변경을 위해서는 다음 파일에서 포트 정보를 설정해주어야 합니다.

1
sudo vim /etc/ssh/sshd_config

아래와 같이 Port가 주석처리 된 채로 되어있을텐데, 주석 해제 후 원하는 포트를 입력하거나 아래에 새로운 포트를 입력합니다. (예시에서는 2222)

1
2
3
4
5
6
7
8
9
10
11
12
# The strategy used for options in the default sshd_config shipped with
# OpenSSH is to specify options with their default value where
# possible, but leave them commented.  Uncommented options override the
# default value.

Include /etc/ssh/sshd_config.d/*.conf

#Port 22
Port 2222
#AddressFamily any
#ListenAddress 0.0.0.0
#ListenAddress ::

이후 SSH 서비스를 재시작하면 변경된 포트로 SSH 접근이 가능해집니다.

1
sudo systemctl restart ssh

2. 방화벽 설정


Ubuntu에서는 UFW(Uncomplicated Firewall)를 사용하여 방화벽을 설정합니다.
먼저 UFW 설치를 위해 아래 명령어를 실행합니다.

1
sudo apt-get install ufw

설치가 완료되면 UFW를 활성화 합니다.

1
sudo ufw enable

UFW를 활성화 하는 순간 모든 외부 접속이 차단되기 때문에, 특정 포트에 대한 규칙 허용이 필요합니다.
먼저 SSH 접속을 허용하기 위해 아래 명령어로 22번 포트를 허용합니다.

1
sudo ufw allow ssh

아래와 같이 특정 포트 및 프로토콜에 대해 규칙을 지정하여 허용하는 것도 가능하니, 자유롭게 설정하시길 바랍니다.

1
2
sudo ufw allow 2222
sudo ufw allow 2222/tcp

위에서 SSH 포트 번호를 변경한 경우, 꼭 해당 포트를 허용해주세요.

3. 원격 접속 확인


SSH와 방화벽 설정이 끝났다면, 원격 접속을 시도해볼 차례입니다.
이전 포스팅에서 설정한 고정 IP를 함께 활용하여 아래 명령어로 원격 접속을 시도합니다.

1
ssh <유저 이름>@<고정 IP 주소> [옵션: -p <포트 번호>]

아래는 예시입니다.

1
2
ssh myuser@192.168.0.100
ssh myuser@192.168.0.100 -p 2222

마무리


이번 포스팅에서는 SSH와 방화벽 설정을 통한 원격 접속 방법에 대해 다뤄보았습니다.
다음 포스팅은 포트포워딩과 도메인 할당으로 찾아뵙도록 하겠습니다.

감사합니다.

This post is licensed under CC BY 4.0 by the author.