리눅스 hosts.allow 및 hosts.deny 설정

리눅스 서버에서 특정 IP만 허용 및 특정 IP에 대한 차단을 위해 리눅스 hosts.allow 및 hosts.deny 설정을 각각 진행할 수 있습니다. iptables 방화벽에서 특정 IP만 SSH 접속을 허용하는 방법을 사용할 수 있지만 1개 이상의 IP가 SSH에 접속해야 하는 경우 hosts.allow 설정을 진행할 수 있습니다.

  • hosts.allow
  • 서비스 허용 설정 파일
  • hosts.deny
  • 서비스 차단 파일

✅ 리눅스 hosts.allow 설정

~]# vi /etc/hosts.allow

sshd: 0.0.0.0 << 모두 허용 IP 대신 추가할 IP 설정
sshd : 201.381.191.001: ALLOW # 201.381.191.001 IP sshd 허용
# 모든 서비스(vsftpd, sshd, rsync, vsftpd, sendmaiil) 허용하기
ALL: ALL     
# 
rsync : 201.381.191.001: ALLOW
vsftpd : 201.381.191.001: ALLOW
sendmail : 201.381.191.001: ALLOW
in.telnetd : 201.381.191.001: ALLOW # 텔넷 서비스 허용

✅ 리눅스 hosts.deny 설정

~]# vi /etc/hosts.deny
# 모든 서비스 허용 상태
ALL: ALL     
# 
sshd : 186.189.193.112

설정 후 마지막으로 sshd를 재 시작 해 줍니다.

systemctl start xinetd | etc/init.d/xientd
service sshd restart
systemctl sshd restart 

✅ RHEL/CentOS 8 및 록키리눅스 8 버전 hosts.allow 사용 불가

RHEL/CentOS 8과 록키 리눅스 8 버전부터 hosts.allow와 hosts.deny 파일의 사용이 불가능해졌습니다. 파일 생성 후 룰을 입력해도 적용되지 않습니다.

레드헷 문서에서는 hosts.allow 설정을 하는 tcp_wrappers 패키지가 포함되어 있지 않다고 하며, ‘Firewalld’로 기능이 대체되었다고 합니다.

ldd /usr/sbin/sshd | grep wrap
# 조회 시 결과 없음으로 표시됩니다.
libwrap.so.0 => /lib64/libwrap.so.0 (0x00007f957f04a000) # 메시지가 나와야 tcp_wrappers 패키지가 설치되어 있는 것으로 확인할 수 있습니다.

결국 Firewalld이나 iptables 방화벽으로 설정을 해야 합니다.

리눅스(Linux)

Similar Posts

  • 리눅스 백그라운드(Back Ground)&포그라운드(Fore Ground): 프로세스 제어하기

    리눅스의 프로세스는 백그라운드(Back Ground)와 포그라운드(Fore Ground) 두 가지의 모드로 작동됩니다. 리눅스 백그라운드 작업을 하는 이유는 일반적인 쉘 명령어를 실행했을 때 프로세스가 종료될 때까지 기다리면서 다른 작업을 하지 못하는 경우가 있기 때문입니다. 목차✅ 리눅스 hosts.allow 설정✅ 리눅스 hosts.deny 설정✅ RHEL/CentOS 8 및 록키리눅스 8 버전 hosts.allow 사용 불가✅ 리눅스 포그라운드(Fore Ground)란? 터미널에 직접 연결되어…

  • 서블릿(Servlet)이란?

    목차✅ 리눅스 hosts.allow 설정✅ 리눅스 hosts.deny 설정✅ RHEL/CentOS 8 및 록키리눅스 8 버전 hosts.allow 사용 불가 1. 서블릿이란 무엇인가? 서블릿은 동적 웹 페이지를 만들 때 사용되는 자바 기반의 웹 애플리케이션 프로그래밍 기술입니다. 클라이언트의 요청을 처리하고 응답을 생성하는 자바 클래스입니다. Servlet은 일반적으로 HTTP 프로토콜을 기반으로 작동하며, 클라이언트의 요청을 받아들여 처리하고, 데이터베이스 연동, 파일 처리…

  • bash: 셸 따옴표 및 셸 쌍따옴표

    bash 및 셸 프로그램에서 명령어를 치환하는데 ‘$’ 기호와 소괄호'()’를 사용하는 대신 따옴표 기호도 사용합니다. 치환은 수식의 어떤 부분에 그와 대등한 무언가로 바꿔 넣는 행위입니다. ‘셸 따옴표’와 ‘셸 쌍따옴표’의 기본 공통 사항은 확장을 제어하는데 활용된다는 것입니다. 여기에서 차이점은 셸 따옴표는 모든 확장을 제어하지만 셸 쌍따옴표는 3개의 기호를 제외하게 됩니다. 셸 쌍따옴표 제외 기호: $…

  • 우분투 APM 설치 [Ubuntu 22.04.5..]

    설치된 우분투 서버에 APM을 설치 진행합니다. 우분투 APM 설치 버전은 apache 2.4 php 7.4 mariadb 10.11 버전으로 설치를 진행합니다. 목차✅ 리눅스 hosts.allow 설정✅ 리눅스 hosts.deny 설정✅ RHEL/CentOS 8 및 록키리눅스 8 버전 hosts.allow 사용 불가✅ 패키지 업데이트 및 apache2 설치 업데이트, 업그레이드 이후 아파치 설치를 진행합니다. 설치 후 버전 및 상태 확인을 진행하여…

  • [Linux] mod_ssl.so Apache 모듈 설치하기

    아파치를 사용하는 리눅스 서버에 SSL을 적용하려고 할 때 아피치 모듈 중 mod_ssl.so가 설치되어 있어야 합니다. 목차✅ 리눅스 hosts.allow 설정✅ 리눅스 hosts.deny 설정✅ RHEL/CentOS 8 및 록키리눅스 8 버전 hosts.allow 사용 불가✅ mod_ssl.so 설치 ✅ 서버 방화벽 포트 443 열어두기 SSL 포트인 443 포트가 방화벽에서 열려있는 상태로 활성화 되어 있어야 합니다.

  • 리눅스 커널 버전 확인 명령어 및 배포판 버전 확인 방법

    리눅스를 운영할 때 리눅스 커널 버전 확인과 배포판 버전을 확인해야 하는 경우가 있습니다. 목차✅ 리눅스 hosts.allow 설정✅ 리눅스 hosts.deny 설정✅ RHEL/CentOS 8 및 록키리눅스 8 버전 hosts.allow 사용 불가✅ 리눅스 커널 버전 확인 명령어 리눅스에서 커널 버전을 확인하는 명령어는 uname 명령어를 사용해서 확인할 수 있습니다. 1. uname 명령어 uname -a는 모든 결과를 보여…

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

Prove your humanity: 6   +   8   =