전체 글 (57) 썸네일형 리스트형 Linux_p #13 암호화(Encryption) 평문 메시지나 데이터를 송수신 할 때 송수신자만 이해할 수 있도록 원문 메시지나 데이터를 변형 시켜서 암호문으로 만드는 작업을 암호화로 부른다 대칭키 송 수신자가 모두 같은 키를 가지게 되므로 공유키 개념이 있다. 송 수신자는 자신이 사용했던 키와 암호문을 함께 수신자에게 전송해야 하는 위험이 있다. 해시 알고리즘은 john the ripper, cain&abel 사이트애서 크랙 --bt ==md5deep echo "I" > test1.txt md5deep test1.txt echo "I" > test2.txt md5deep test2.txt echo "I love you for sentimental reason" > test3.txt md5deep test3.txt ==sh.. Linux #16 침입감지 시스템(IDS), 침입예방 시스템(IPS)과 네트워크 모니터링 보안설정의 기본원칙에 Fail Safe와 Safe Failure가 있다. Fail Safe는 시스템에 오류가 있어도 사용자나 시스템에 피해가 없게 하는 것으로, 예를 들어 네트워크의 인증을 인증 서버로 하게 되어 있을 때 이 인증 서버에 문제가 있어도 정규 사용자는 다른 방법으로 로그온이 되게 하는 것이다. Fail Safe 설정에서는 예를 들어 '인증을 받지 못하면 httpd 서비스는 거부된다'라는 기본원칙은 있을 때 이 기본원칙에 명시하지 않은 vsftpd와 같은 서비스는 인증을 허용된다는 이면의 뜻이 있을 수 있어서 위험할 수 있고, 수많은 서버 서비스의 인증을 일일이 모두 지정하기에는 쉽지 않다는 문제가 있다. Safe Fai.. Linux_p #12 SSL 활용하기(Secure Socket Layers) SSL을 이용한 키로 ssh, scp, https, sftp 등에 활용하면 일반적인 평문장 연결이 아닌 키를 사용하는 암호화된 연결을 이루므로 보안이 좋아진다. 유명 포털 사이트는 이미 불특정 사용자들의 접속하는 것을 대비해서 각 브라우저별로 인증서를 넣어 두었다. 중소기업에서는 자신의 SSL을 사용하는 서비스에 접속하려면 브라우저에 SSL 키가 있어야 한다. # yum -y install gcc-c++ gcc hack.c -o hack # nano /etc/hosts SSL을 이용해 키 만들기 /etc/pki/tls/openssl.cnf 에서 디폴트로 설정 가능 x509 = 정식 인증성 생성 #openssl x509 -in www.kahn.edu... Linux #15 프로세스 모니터링 하기 어느 프로그램을 실행해서 생성되는 프로세스(process)는 해당 프로그램을 실행한 사용자의 권한으로 실행되므로 역으로 프로세스를 보면 해커에 의한 침투 프로세스를 알아낼 수 있다. 'ps 옵션' 형식으로 프로세스를 보는데 많은 옵션이 있다. ps ef ~ OR ps aux ~ 해서 외부에서 연결된 프로세스 번호를 보고 kill -9 PID 해서 연결을 끊을 수 있다. find 명령어에서 여러 옵션(-perm(권한), -name(파일_명), -type f/d(파일/디렉터리), -not(부정), -iname(대소문자 무시 파일_명), -user(사용자), -used(사용기간), -inum(i-node 숫자), -empty(빈 파일/디렉터리), -size ! +100M(100M 이하).. Linux_p #11 관리자적 명령어들 1. root 의 패스워드 변경하기 centos1 시작화면에서 i - e 2. 부팅 정보를 가지고 있는 /etc/grub.conf 파일 잠궈두기 # ls -l /etc/grub2.cfg # vi /boot/grub2/grub.cfg & # grub2-setpassword # cat /boot/grub2/user.cfg # grub2-mkconfig -o /boot/grub2/grub.cfg reboot 시작화면시 i - e Enter username: root rootoor 3. chroot(change root) 관리자는 서버 시스템에 FTP나 ,HTTP, NFS 등의 서버 서비스를 설정해두고, 클라이언트들이 FTP나 Telnet, SSH, HTTP 등으로 서버에 연결해서 파일을 업/.. Linux #14 SYN flood 공격 막기 SYN Flooding 공격은 두 노드 간 TCP 연결인 3-way handshakes를 이용한 일종의 DoS(Deny of Service) 공격이다. 일반적으로 TCP에서의 3-way handshakes 연결은 클라이언트가 먼저 서버에게 SYN를 보내서 서버에게 연결을 요청하면 >서버는 SYN+ACK를 클라이언트에게 보내서 연결을 기다리고 >그러면 이제 클라이언트가 ACK를 서버로 보내서 서로 연결되는 과정을 가진다. 클라이언트가 계속해서 연결을 요청하는 SYN만 보내서 서버가 연결을 하려고 하면 ACK를 보니재 않으므로써 연결이 되지 못하고 연결 정보를 저장하는 backlog queue가 가득차서 서비스 불능인 상태가 되는 공격이다. =>이런 syn_flooding 공격을.. Linux_p #10 침입감지 시스템(IDS), 침입예방 시스템(IPS)과 네트워크 모니터링 $ snort ----BT ifconfig eth0 promisc $ cat -n /etc/snort/rules/icmp.rules any any - 어느 네트워크에 누구든지 /etc/fail2ban/jail.conf $ DenyHosts wget http://sourceforge.net/projects/denyhosts/files/denyhosts/2.6/DenyHosts-2.6.tar.gz --no-check-certificate # nano -c denyhosts.cfg 네트워크 실행 # cat /var/log/denyhosts # tail -f /var/log/secure Linux #13 Linux 서버 시스템 보안 Linux 서버를 한동안 운영하면 여러 사용자나 시스템 설정, 그리고 서버 서비스에 관한 정보들이 들어있게 된다. 서버 서비스들이 정상으로 운영되기 위해서 그리고 사용자들의 정보가 외부로 노출되지 않게 하려면 서버 머신에 보안을 설정해 두는 것이 필요하다. 서버 시스템에 보안을 설정할 때에는 다음과 같은 기본적인 원칙이 있으므로 이에 따라서 설정해주는 것이 좋다. ∎ 꼭 필요한 프로그램만 설치하고 사용자 접근을 최대한 제한한다. ∎ 관련 프로그램(응용프로그램, 안티바이러스 프로그램, 패치 등)들을 자주 업데이트한다. ∎ 사용자에 대한 정확한 정보(계정관리, 패스워드, 권한 등)를 늘 최신으로 유지한다. ∎ 시스템 보안의 목표를 비밀성(confidentiality), 무결성(i.. 이전 1 2 3 4 5 6 7 8 다음