목록리눅스/보안 (7)
Self-Improvement
*커널 파라미터 리눅스 시스템의 커널 변수의 값을 제어하여 시스템을 최적화할 수 있는 방식이다. 리눅스의 커널 패러미터는 /proc/sys 디렉토리에 존재한다. *커널 파라미터 설정 방법 1. 임시적 #echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all 2. 영구적 #sysctl -w net.ipv4.icmp_echo_ignore_all=1 or #vi /etc/sysctl.conf (적용할 커널 파리미터를 적는 곳) #sysctl -p (sysctl.conf 파일을 읽어들인다) #sysctl -a (+ grep CMD) 커널 파라미터 전체목록이 출력이 되어진다.
*정의 파일에 대한 ACL 설정을 통해서 file1에 대해서 소유자를 root 사용자 외에도 user01, user02 등 다중 사용자가 소유할수 있도록 설정할수 있다. 또한 그룹에 관해서도 추가로 속하도록 설정할수 있다. *getfacl 파일의 확장 속성정보를 보여주는 명령어 *setfacl 파일의 확장 속성정보를 설정하는 명령어 chmod CMD = setfacl -m *명령어 실습 #touch file1 #ls -l file1 #getfacl fil1 #setfacl -m user::rwx file1 (= u::7 file1) #getfacl file1 *새로운 사용자와 퍼미션 추가 실습 #setfacl -m u:user01:7 file1 #ls -l file1 #getfacl file1 *file..
*정의 개발, 운영 등의 작업을 수행함에 있어, 로그인계정 외의 다른 계정의 권한이 요구될 때, 그 계정을 직접 사용하지 않고 본인의 로그인 계정의 인증을 통해 해당 계정의 권한으로 작업을 수행할 수 있는 명령어 *장점 1. 일반사용자(EX: user01)가 작업시 관리자(EX: root)의 암호를 알 필요가 없다. 2. 일반사용자가 관리자 처럼 작업할 수 있는 명령어의 범위가 지정된다.(제한된 권한) *sudoers sudo을 사용하여 권한을 부여할 구체적인 설정을 하는 파일이 sudoers파일이다. 이 파일을 편집할 권한을 얻으면 시스템의 모든 권한을 얻을 수도 있기 때문에 매우 높은 보안 레벨로 보호되어야 한다. 이 파일의 편집은 visudo CMD로 편집한다. ※#visudo == #vi /etc..
*정의 SELinux의 기본 목적은 손상된 시스템 서비스로 부터 사용자 데이터를 보호하는 것이다. SELinux는 프로세스가 파일, 디렉토리, 포트에 액세스 할 수 있는지 결정하는 보안 규칙의 집합이다. *모드 1.Disable : SELinux가 꺼져 있고 액세스 제어의 기본 방식인 DAC가 사용되며 고급 보안이 필요 하지 않는 환경에서 사용된다. 2.Permissive : SELinux가 켜져 있고 다만 보안 정책 규칙은 강제되지 않는다. 보안 정책에 위반이 되어도 액세스는 허용되지만 메시지 /var/log/audit에 로그파일로 기록을 남긴다. 3.Enforce : SELinux가 켜져 있고 모든 보안 정책 규칙이 강제 된다. //현재 SELinux 모드 확인 #sestatus (=getenfoce..
*TCP_Wrappers tcp_wrapper는 finger, ftp, telnet, rlogin, rsh, exec, tftp, talk, comsat등의 네트워크 서비스를 필터링 할 수 있는 프로그램이다. (장점) 설정이 간단함(쉽게 설정 가능), 성능 저하 거의 없음. (단점) 모든 서비스에 대한 제어가 가능하지 않음. TCP 제어를 위해서는 /etc/hosts.allow, /etc/hosts.deny파일을 가지고 설정한다. (Rule 적용 순서) - /etc/hosts.allow 파일에 정의된것은 허용이 되고, - 만약 정의 되지 않은 내용이 있다면, /etc/hosts.deny 파일에 정의된것은 거부가 되고 - 만약 정의 되지 않은 내용이 있다면, 허용된다.. ※TCP_Wrappers는 따로 서..
*telnet #iptables -A INPUT -m state --state NEW -p tcp -s 192.168.20.200 -d 192.168.20.100 --dport 23 -j ACCEPT - 192.168.20.200에서 192.168.20.100으로의 telnet의 새로운 연결에 대해서 수락을 한다. *ssh #iptables -A INPUT -m state NEW -p tcp -s 192.168.20.0/24 -d 192.168.20.100 --dport 22 -j ACCEPT - 192.168.20.0/24대역에서 192.168.20.100으로의 ssh의 새로운 연결에 대해서 수락을 한다. *icmp #iptables -A OUTPUT -p icmp --icmp-type echo-req..
*방화벽(Firewall) 어떤 기관의 내부 네트워크를 보호하기 위해서는 외부에서의 불법적인 트래픽이 들어오는 것을 막고, 허가하거나 인증된 트래픽만 허용하는 적극적인 방어 대책이라고 할 수 있다. 방화벽 시스템의 기본 목표는 네트워크 사용자에게 가능한 한 투명성을 보장하면서 위험 지대를 줄이고자 하는 적극적인 보안 대책을 제공하는 것 *iptables 리눅스 2.4커널 버전이상에서 사용되는 방화벽 (GUI) #system-config-securitylevel (TUI) #system-config-securitylevel-tui (CLI) iptables CMD, /etc/sysconfig/iptables iptables 논리적인 3개의 사슬(chains)으로 구성되어 있고 각 INPUT, OUTPUT,..