리눅스 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

  • 리눅스 파일 시스템(File System)과 스토리지

    리눅스 파일 시스템File System은 모든 파일 및 디렉토리를 큰 트리 구조 하나로 관리합니다. 리눅스는 Ext(Extended File System)를 사용합니다. OS는 파일 스토리지에 있는 파일을 효율적으로 관리하기 위해 파일 시스템을 구축하게 됩니다. 목차✅ 리눅스 hosts.allow 설정✅ 리눅스 hosts.deny 설정✅ RHEL/CentOS 8 및 록키리눅스 8 버전 hosts.allow 사용 불가✅ 대표적인 리눅스 파일 시스템 종류 저널링 시스템은 파일…

  • 셔뱅(Shebang) [#! /bin/bash]

    shebang (셔뱅 또는 해시뱅)은 스크립트 파일의 첫 줄에 쓰이는 #!(해시 기호 + 느낌표)로 시작하는 구문입니다. 이 줄은 해당 스크립트를 어떤 인터프리터로 실행 할지를 지정합니다. 인터프리터(interpreter)는 프로그래밍 언어로 작성된 코드를 한 줄씩 읽고 즉시 실행하는 프로그램입니다. 이는 “작성된 명령을 번역해서 곧바로 실행해주는 번역기”라고 볼 수 있습니다. 보통 ASCII 텍스트 파일로 작성된 셸 스크립트에서 해시…

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

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

  • 레드햇 자격증: RHCSA, RHCE, RHCA

    레드햇 자격증(Red Hat Certification)은 레드햇 리눅스를 운영하는데 필요한 역량을 확인하고 입증하는 자격증입니다. 레드햇 웹사이트에서 확인한 RHCSA, RHCE, RHCA 3개 자격증의 정보입니다. 자격증의 기본적인 취득 조건은 RHCSA 자격증 취득 후 RHCE, RHCA 순서로 취득할 수 있습니다. 목차✅ 리눅스 hosts.allow 설정✅ 리눅스 hosts.deny 설정✅ RHEL/CentOS 8 및 록키리눅스 8 버전 hosts.allow 사용 불가1. 레드햇 자격증: RHCSA…

  • [Linux] etc 디렉토리의 이해 | /etc 폴더의 주요 파일&폴더

    목차✅ 리눅스 hosts.allow 설정✅ 리눅스 hosts.deny 설정✅ RHEL/CentOS 8 및 록키리눅스 8 버전 hosts.allow 사용 불가✅ 리눅스 etc 디렉토리란? 리눅스 /etc 디렉토리는 부팅 및 셧다운 시 필요한 파일과 시스템 설정에 관련된 파일 및 일부 로그 파일이 있는 디렉토리입니다. “etc”는 기타, 등등을 뜻 하는 etcetera의 줄임말입니다. ✅ /etc/* 주요 파일&폴더 etc 디렉토리에는 기타 등등으로…

  • 리눅스 퍼미션(4,2,1)과 소유권 | chmod, chown, umask 명령어 | 스티키 비트

    리눅스 퍼미션(Permission)은 권한(&허가)을 의미합니다. 유닉스 계열 운영 체제들은 MS-DOS 계열의 운영 체제들은 멀티 테스킹 시스템이 아니며 멀티 유저 시스템 역시 아닙니다. 보통 컴퓨터는 하나의 키보드와 모니터를 가지고 한 명이 사용하지만 멀티 유저 시스템인 리눅스는 한 명 이상이 사용할 수 있다는 것을 의미합니다. 유닉스 계열의 멀티 유저 시스템은 운영 체제 설계 초기부터 깊게 내장된…

답글 남기기

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

Prove your humanity: 1   +   4   =