[CentOS 7] SSH 접속 허용 및 포트 변경

es.Seong·2023년 8월 3일
0
post-thumbnail

VM : VMware WorkStation 17 pro
설치 OS : CentOS 7
SSH 연결 테스트 PC OS : Window 11

1. sshd 설치 확인


which 명령어를 사용하여 sshd가 설치되어 있는지 확인해야한다.
명령어 실행결과 /usr/sbin/sshd 경로에 설치가 되어있는 것을 알 수 있다.

2. 보안정책 비활성화

/etc/selinux 내 config 파일을 수정해야한다.

cat 명령어를 통해 파일을 확인해보면 기존에는 SELINUX=enforcing이라고 되어있다.
enforcing은 보안정책을 적용시킨다는 의미이다. 이를 vi 명령어를 통해 disabled로 변경하여 보안정책을 사용하지 않도록 설정한다.

vi를 사용한 수정 방법
vi config
i를 눌러 수정모드로 변경
enforcing -> disabled 변경
esc -> 수정모드 종료
shift + ;
wq 입력 후 엔터

3. sshd 실행 및 상태 확인

사용 명령어

ssh 실행
systemctl enable sshd

ssh 상태 확인
systemctl status sshd

sshd를 활성화하면 기본 포트는 22번으로 설정된다. 22번은 Well-Known Port이기 때문에 보안에 취약할 수 있다. 그렇기 때문에 포트를 변경해줘야 한다.

4. 네트워크 상태 확인

sshd를 활성화했다면 netstat(network statistics) 명령어를 통해 ssh포트가 잘 열려있는지 확인해야한다.

명령어
netstat -an | grep LISTEN

해당 명령어를 ssh의 22번 포트가 표시된다면 정상적으로 실행되고 있는 것이다.

5. sshd_config -> 포트 번호 수정

/etc/ssh 경로에 sshd_config를 vi 명령어를 통해 포트 번호를 수정할 수 있다.

명령어
vi sshd_config

원래는 #Port 22라고 되어있으며, 주석을 해제하고 포트번호를 4444로 변경하였다.

포트 번호를 변경했다면 재시작을 해줘야 변경사항이 적용된다.
init 6를 통해 재시작 할 수 있다.

6. 재시작 후 네트워크 상태 확인

재시작 후 netstat -anp | grep 4444 명령어를 통해 포트 번호 변경이 적용되었는지 확인한다.

7. 방화벽에 포트 추가

명령어
firewall-cmd --list-all

해당 명령어를 실행하면 다음과 같은 결과가 나온다. 초기에는 해당 붉은 색 박스가 빈칸으로 되어 있다.

명령어
firewall-cmd --permanent --add-port=4444/tcp

해당 명령어를 통해 포트를 추가 후 firewall-cmd --reload를 입력한다. 이후 'firewall-cmd --list-all'를 재실행하면 포트가 등록된 것을 확인할 수 있다.

8. 외부 PC -> SSH 연결 테스트

SSH 포트를 정상적으로 열었다면 외부 PC에서 연결을 요청하면 정상적으로 접속이 되어야 한다.

8-1. Ping 확인

윈도우 터미널에서 ping ssh 설정된 ip주소

보냄받음의 개수가 같은 것을 확인할 수 있다. 이를 통해 정상적으로 연결이 가능한 것을 확인할 수 있다.

8-2. 연결 확인

윈도우에서 telent 명령어를 통해 해당 ip와 포트에 접속이 가능한지 확인할 수 있다.

telnet ip port

profile
Graduate student at Pusan National University, majoring in Artificial Intelligence

0개의 댓글