cd /etc/vsftpd
ftpusers
: PAM 인증 모듈 접근 제한
user_list
: vsftpd 서버 접근 제한
(= 이 리스트에 등록된 사용자는 차단이 된다.)
<방화벽 서비스 추가>
# firewall-cmd --permanent --add-service=ftp
# firewall-cmd --reload
<root 계정 차단 해제>
cd /etc/vsftpd
vi ftpusers <== root 계정을 주석처리
vi user_list <== root 계정을 주석처리
ftpusers, user_list
파일을 설정하기 전vi /etc/ssh/sshd_config
38행 [PermitRootLogin no] 로 변경
systemctl restart sshd
명령어 실행 후 vi /etc/ssh/sshd_config
17행 [Port n]으로 변경
ssh -l root [서버 주소] -p 2002
로 접근 시 접근이 가능하다.firewall-config
명령어로 해당 서비스가 허용됐는지 확인.firewall-cmd --permanent --add-port=2002/tcp
로 포트 추가 후firewall-cmd --reload
로 방화벽 재부팅하면 적용이 된다./etc/ssh/sshd_config
<37번째 줄>
LoginGraceTime 20
=> 지정한 시간 내에 로그인 하지 않으면 자동으로 접속 끊기
<40번째 줄>
MaxAuthTries 6
=>한 접속 당 최대 인증 시도횟수
cd /etc/firewalld/zones/public.xml
/etc/firewalld/zones/public.xml
의 내용<service name="추가하고싶은 서비스"/>
명령어 추가시public.xml
파일에 해당 서비스를 추가해주고firewall-cmd --list-all
로 추가된것을 확인할 수 있다.# vi /etc/hosts.allow <= 접근허용
[서비스:][호스트/네트워크]
# vi /etc/hosts.deny <= 접근차단
[서비스:][호스트/네트워크]
ALL:ALL
=> 전체 서비스 전체 차단in.telnetd:ALL
=> 텔넷 서비스 전체 허용sshd:ALL
=> SSH 서비스 전체 허용in.telnetd,sshd:ALL
=> 텔넷과 SSH를 한줄로 표현해 줄 수 있다in.telnetd,sshd:192.168.0.173
=> 하나의 ip주소에다 서비스 허용을 해 줄 수 있다.in.telnetd:192.168.0.173 / sshd:192.168.0.174
=> 각 ip주소마다 서비스 허용을 해 줄 수 있다.in.telnetd:192.168.0.173 192.168.0.174 / sshd:192.168.0.128/25
띄어쓰기
로 표현해줄수 있고.
으로도 표현 가능하다.)sshd:192.168.0.0/24 EXCEPT 192.168.0.174
EXCEPT
로 구분지어 차단할 ip를 설정해줄 수 있다.ALL EXCEPT sshd:192.168.0.174
데몬 정리
- vsftpd : ftp 데몬
- sshd : 오픈 ssh 서버 데몬
- in.telnetd : 텔넷 서버 데몬
- xinetd : 슈퍼 데몬 각종 서비스를 관리 한다. (telnet, ftp, rlogin 등)
<방화벽>
# firewall-cmd --permanent --add-service=telnet
# firewall-cmd --reload
<정리>
방화벽 가동 후 telnet 서비스에 대한 접근만 허용시켜주어야한다.
<슈퍼데몬 Xinetd>
# vi /etc/xinetd.conf
23번째 줄 no_access와 only_from 설정
<정리>
only_from 설정시 그 외 전체 차단.
only_from 192.168.0.173
<TCP Wrapper>
# vi /etc/hosts.allow
# vi /etc/hosts.deny
<정리>
xinetd의 노엑세스와 온리프롬과 다르게 TCP Wrapper는 허용과 차단을 각각 설정해주어야함.
(허용을 해준다고 그 외 전체 차단 X)
[deny]
ALL:ALL
[allow]
in.telnetd:192.168.0.173
<Service>
1. 해당 서비스 파일의 disable 설정
/etc/xinetd.d
2. 포트번호 변경
/etc/services
<정리>
vi /etc/xinetd.d/(차단하고싶은 서비스)로 접근,
disable에 대한 설정을 yes로 설정
그 후 사용하고싶은 서비스에 대한 보안성을 높이기 위해
포트번호를 변경해주면 된다.
cd /etc/pam.d
<sshd 파일에 해당 명령어 추가>
auth required pam_listfile.so item=user sense=deny file=/etc/ssh/sshuser onerr=succeed
=> /etc/ssh 디렉터리에 sshuser 라는 파일을 참조하여 해당 파일에 적힌 유저를 차단하겠다.
</etc/ssh/sshuser 유저추가>
test
=> test 계정만 SSH 차단
<sshd 파일에 해당 명령어 추가>
auth required pam_listfile.so item=user sense=allow file=/etc/ssh/sshuser onerr=succeed
=> /etc/ssh 디렉터리에 sshuser 라는 파일을 참조하여 해당 파일에 적힌 유저를 허용하겠다.
</etc/ssh/sshuser 유저추가>
test
=> test 계정만 SSH 허용
<sshd 파일에 해당 명령어 추가>
auth required pam_listfile.so item=group sense=deny file=/etc/ssh/sshgroup onerr=succeed
</etc/ssh/sshgroup 그룹추가>
TEST
=> TEST 그룹만 SSH 차단
<그룹에 유저 추가>
usermod -G TEST test
=> TEST 그룹에 test 유저 추가
<sshd 파일에 해당 명령어 추가>
auth required pam_listfile.so item=group sense=allow file=/etc/ssh/sshgroup onerr=succeed
</etc/ssh/sshgroup 그룹추가>
TEST
=> TEST 그룹만 SSH 허용
<그룹에 유저 추가>
usermod -G TEST test
=> TEST 그룹에 test 유저 추가
sshd_config
파일에 AllowUsers test
한 줄 추가해주기sshd_config
파일의 AllowUsers test
줄에 test1
추가해주기DenyUsers [차단해줄 유저명]
추가t*
처럼 t로 시작하는 유저 SSH 차단 가능AllowGroups
으로 TEST 그룹의 SSH 접근을 허용시켜줌DenyGroups
으로 TEST 그룹의 SSH 접근을 차단시킴cd /etc/pam.d
vi su
<6번째 줄의 설정 바꾸기>
auth required pam_wheel.so use_uid
wheel 그룹
에 있는 유저만 su 명령어
사용 가능