본문 바로가기

분류 전체보기

(176)
[Linux] SELinux SELinux 리눅스의 전통적인 보안을 강화하기 위하여 탄생함. 리눅스의 각각의 객체 (프로세스 파일 서비스 디렉토리 데몬 등)에 모두 정책을 부여한다. 접근, 실행, 수정, 복사 등의 정책을 부여하여 정책이 어긋나면 실행이 되지 않게 하는 것 CentOS 7 부터는 SELinux의 역할이 자동으로 수행된다. SELinux의 3가지 모드 # 강제 (Enforcing) : 완전히 실행을 시킴. 시스템 보안에 영향을 끼치는 영향이 확인이 되면 그 기능의 작동을 차단 # 허용 (Permissive) : 시스템보안에 영향을 끼치는 기능이 확인되면 허용은 하되 로그에 기록을 한다 # 비활성 (Disabled) : SELinux를 비활성화 한다. 메모리에 SELinux 모듈이 아예 올라가지 않는다. SELinux ..
[Linux] Linux 데이터베이스 기초 데이터베이스 # 데이터 : 하나하나의 자료들을 의미 # 테이블 : 데이터를 표 형식으로 만든 것 # 데이터 베이스 : 테이블들들이 데이터베이스를 의미한다 # DBMS : 데이터베이스를 관리하는 소프트웨어. 대표적으로 관계형 데이터베이스인 MySQL, MSSQL, ORACLE # 레코드 : 테이블의 가로, 이름이 따로 없다 # 열, 필드, 컬럼 : 테이블의 세로, 이름이 있다. # PK (Primary Key) 주요키 : 레코드를 식별하는 유일한 값을 가지고 있는 비어있지 않은 필드 # 외래키 : 다른 테이블의 주요키와 대응되는 필드를 말한다 # SQL : 구조화된 질의언어로서 DB에서 정보를 얻거나 조작하거나 갱신하는 등의 역할을 하는 언어이다. SELinux OFF # 원활한 실습 진행을 위해 SELi..
[Linux] DNS 레코드 DNS 레코드란 DNS 서버에 특정 작업을 나타내는 데 사용되는 다른 문자열을 의미한다. DNS레코드는 권한있는 DNS 서버에 있는 지침으로서 해당 도메인과 연결된 IP 주소 및 해당 도메인에 대한 요청을 처리하는 방법을 포함하여 도메인에 대한 정보를 제공한다. 모든 DNS레코드에는 TTL (Time-to-Live)도 있으며 DNS 서버가 해당 레코드를 새로 고치는 빈도를 나타낸다. DNS 레코드 종류와 역할 레코드 종류 의미 A 특정 호스트의 주소 (IPv4) , 도메인을 가지고 IP를 알아냄 AAAA 특정 호스트의 주소 (IPv6) , 도메인을 가지고 IP를 알아냄 CNAME 별칭 레코드 정보 MX 메일 교환기에 대한 정보 (Mail Exchanger) NS 도메인의 네임 서버 정보 (Name Ser..
[Linux] DNS 서버 만들기 실습 DNS 서버 만들기 실습 * 캐시 전용 네임 서버 만들기 실습 - DNS 서버 : 자기 자신은 DNS 정보를 가지고 있지 않고 다른 DNS서버에 질의를 하는 것이다. * 실습할 VM을 2개 준비한다. yum -y install bind bind-chroot DNS서버를 구성하기 위한 bind , bind-chroot를 설치한다. -y 옵션은 install 할 때 나오는 yes/no 에 대하여 모두 yes를 한다는 의미이다. yum -y install httpd systemctl restart httpd httpd를 install 한 후 restart를 통해 httpd를 active 상태로 만들어준다. vi /etc/named.conf 12 options { 13 listen-on port 53 { 127..
[Linux] DNS DNS (Domain Name Service) 사용자가 도메인 이름을 요청할 때 이 도메인 이름을 실제 주소인 IP로 바꿔서 사용자에게 전달해주는 서비스 클라이언트(사용자)가 서버(웹)에 접속하기 위해서는 IP가 필요하다. 그러나 모든 웹사이트의 IP를 알고있을수는 없으므로 웹주소를 통해IP로 접속하는 것이다. 이러한 서비스르 제공하는 서버가 DNS서버이다. 호스트와 도메인 호스트 이름 : 네트워크상의 컴퓨터 각각의 이름 도메인 이름 : 네트워크의 범위를 지정하는 이름 -> 구역같은 느낌으로 생각해보자 www.naver.com 네이버 네이버 메인에서 다양한 정보와 유용한 컨텐츠를 만나 보세요 www.naver.com www : 호스트 이름 naver.com : 도메인 이름 FQDN (Fully Qulif..
[Python] 백준 2562 : 최댓값 https://www.acmicpc.net/problem/2562 2562번: 최댓값 9개의 서로 다른 자연수가 주어질 때, 이들 중 최댓값을 찾고 그 최댓값이 몇 번째 수인지를 구하는 프로그램을 작성하시오. 예를 들어, 서로 다른 9개의 자연수 3, 29, 38, 12, 57, 74, 40, 85, 61 이 주어 www.acmicpc.net count = 0 tmp = 0 list = [] for i in range(9): list.append(int(input())) if list[i] > tmp: tmp = list[i] count = i + 1 print(tmp) print(count) 코드 해석 count = 0 tmp = 0 list = [] count => 최댓값이 저장된 배열의 번째수 저장..
[Python] 백준 10818 최소, 최대 https://www.acmicpc.net/problem/10818 10818번: 최소, 최대 첫째 줄에 정수의 개수 N (1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄에는 N개의 정수를 공백으로 구분해서 주어진다. 모든 정수는 -1,000,000보다 크거나 같고, 1,000,000보다 작거나 같은 정수이다. www.acmicpc.net n = int(input()) a = list(map(int,input().split())) min = a[0] max = a[0] for i in range(n): if max a[i]: min = a[i] print(min,max) n = lnt(input()) a = list(map(int,input().s..
[Python] 백준 1110 더하기 사이클 https://www.acmicpc.net/problem/1110 1110번: 더하기 사이클 0보다 크거나 같고, 99보다 작거나 같은 정수가 주어질 때 다음과 같은 연산을 할 수 있다. 먼저 주어진 수가 10보다 작다면 앞에 0을 붙여 두 자리 수로 만들고, 각 자리의 숫자를 더한다. 그 다음, www.acmicpc.net n = int(input()) n_num = n i = 0 while True: sum = n//10 + n % 10 set_num = (n % 10) * 10 + sum % 10 i += 1 n = set_num if set_num == n_num: break print(i) 코드 해석 문제 0보다 크거나 같고, 99보다 작거나 같은 정수가 주어질 때 다음과 같은 연산을 할 수 있..