서버를 운영하다 보면 telnet*, ssh**를 이용하여 원격 연결 후 작업하는 경우가 대부분이다. 원격 로그인을 할 때 편의상 root 계정으로 바로 로그인을 허용하고 사용하는 경우가 많으며 이는 보안상 문제가 발생할 수 있다.
그 이유는 공격자들은 기본적으로 먼저 서버에 open 되어 있는 port를 확인 후 telnet나 ssh로 원격 접속이 가능한 경우 무작위 대입 공격, 사전 대입 공격 등을 이용하여 root 계정으로 로그인을 시도한다.
이를 방지 하기 위해서는 원격 접속 시 root 계정 로그인을 제한하고 일반 계정으로 로그인 후 su를 이용해서 root로 상승해야 한다.
* telnet과 다르게 ssh는 설치 시 기본적으로 root 계정으로 로그인이 허용되어 있으며, root 계정 로그인 제한은 /etc/ssh/sshd_config 파일에서 설정한다.
* ssh란?
Secure Shell의 약자로 네트워크 상의 다른 컴퓨터에 로그인하거나 원격 시스템에서 명령을 실행하고 다른 시스템으로 파일을 복사할 수 있도록 해 주는 응용 프로그램 또는 그 프로토콜로 강력한 인증 방법 및 안전하지 못한 네트워크에서 안전하게 통신을 할 수 있는 기능을 제공 한다. (22번 포트 사용)
SSH 접속 시 root 계정 로그인 제한
1. 일반 계정으로 로그인 후, su → root 계정으로 접속
2. vi /etc/ssh/sshd_config (파일 수정)
3. #PermitRootLogin yes를 찾아 PermitRootLogin no로 변경해준다. (# 주석을 지우고 yes -> no 변경)
4. I를 눌러 Insert 모드로 진입 후, 변경 완료 후 Esc누르고 :wq 눌러 빠져나오기
5. service sshd restart
6. root로 로그인 시도 해서 확인해볼 것
참조
https://darksoulstory.tistory.com/475
'TIL > Linux' 카테고리의 다른 글
FTP를 이용하여 서버에 파일을 옮길 때 발생하는 Permission Denied 오류 해결 방법 (0) | 2023.05.21 |
---|---|
rinux로 data, schema.sql 생성 후 mysql_backup 하기(데이터 옮기기), .sh 파일로 한번에 실행하기 (0) | 2023.05.19 |
day95-rinux (0) | 2023.03.27 |
day94-rinux (0) | 2023.03.22 |
day93-rinux (0) | 2023.03.21 |