본문 바로가기

분류 전체보기139

[Linux iptables를 이용해 방화벽 설정하기] [Linux iptables를 이용해 방화벽 설정하기] iptables는 시스템 관리자가 리눅스 커널 방화벽(다른 넷필터 모듈로 구현됨)이 제공하는 테이블들과 그것을 저장하는 체인, 규칙들을 구성할 수 있게 해주는 사용자 공간 응용 프로그램이다. 각기 다른 커널 모듈과 프로그램들은 현재 다른 프로토콜을 위해 사용되는데, iptables는 IPv4에, ip6tables는 IPv6에, arptables는 ARP에, ebtables는 이더넷 프레임에 적용된다. iptables는 동작을 위해 상승된 권한을 요구하며 사용자 루트가 실행하여야 하는데, 그렇지 않으면 작동하지 않는다. iptables는 리눅스 상에서 방화벽을 설정하는 도구로서 커널 2.4 이전 버전에서 사용되던 ipchains를 대신하는 방화벽 도구.. 2018. 1. 17.
스프링 MVC 패턴 Dreaming IT Study 3주차 학습 내용 (1) Spring 의 개념과 MVC 패턴 프레임워크 - 프로그래밍에서 특정 운영 체제를 위한 응용 프로그램 표준 구조를 구현하는 클래스와 라이브러리 모음- 개발에 대한 표준을 제공하는 틀 스프링 프레임워크 - 자바 플랫폼을 위한 오픈소스 애플리케이션 프레임워크- 동적인 웹 사이트를 개발하기 위한 여러가지 서비스 제공- 대한민국 공공기관의 웹 서비스 개발시 사용을 권장하고 있는 전자정부 표준 프레임워크의 기반 기술- 스프링 프레임워크는 Maven 환경을 지원하므로 패키지 의존성 관리에 효율적- 스프링 프레임워크는 자체 톰캣 서버를 제공- STS(Spring Tool Suite)라는 스프링 프레임워크에 최적화된 환경을 지원하는 IDE를 제공 웹 표준 개발 .. 2018. 1. 6.
[네트워크] HTTP 상태코드 [HTTP 상태코드] * 일반적인 HTTP 상태코드 100번대 : 정보 전송 200번대 : 성공 300번대 : 리다이렉션 400번대 : 클라이언트측 에러 500번대 : 서버측 에러 * 꼭 알아두어야할 HTTP 상태코드 200 OK: 클라이언트의 요청이 성공했다는 것을 나타냄 201 Created: 클라이언트의 PUT 요청이 성공적이라는 것을 나타냄 301 Moved Permanently: 브라우저의 요청을 다른 URL로 항시 전달한다는 것을 의미함. 다른 URL에 대한 정보는 Location 헤더에 나타남 302 Moved Temporarily: 브라우저의 요청을 임시 URL로 바꾸고 Location 헤더에 임시로 변경한 URL에 대한 정보를 적음. 클라이언트가 다음에 같은 요청을 하면 기존의 URL로 .. 2018. 1. 6.
Java & HTTP RESTFul API & Servlet Dreaming IT Study 2주차 학습 내용 * 객체 (Object) 1. 객체지향 (캡슐화, 상속, 다형성) - Java 언어는 C언어와 다르게 OOP(Object Oriented Programming) 성격을 가짐 - C언어는 절차지향적 언어. main()의 순서대로 진행이 됨 - Java는 객체 단위로 프로그램이 수행됨 - 캡슐화 : 다른 외부 객체에서 필드나 메소드를 참조하려고 접근 시 이를 보안상 보호하기 위한 개념 - 상속 : 부모 클래스가 있고, 이를 자식 클래스가 물려받아서 사용하는 구조 - 다형성 : 상속 기반에서 부모 클래스가 각각의 자식 클래스를 포함할 수 있어 다양한 형태를 취할 수 있 다는 개념. 즉 A가 부모이고 B,C가 자식클래스일 경우 A는 B가 될 수도 있고 C가 될수.. 2018. 1. 6.
[Book] IT 추천 도서 목록 IT 개발 도서 목록 (앞으로 읽어볼 도서나 개발자들의 공통 추천 도서들을 모아놓은 도서 모음. 빨간색으로 표시된 책은 추천 도서 모음에서 공통적으로 추천된 책) - 줌인터넷 포털 서비스 개발팀 추천 도서 1. 제대로 배우는 Backbone.js 프로그래밍 (애디 오스마니 지음)2. 인사이드 자바스크립트(송형주, 고현준 지음)3. 자바 ORM 표준 JPA 프로그래밍(김영한 지음)4. 스프링부트 코딩 공작소 (크레이그 월즈 지음)5. 스프링 인 액션(크레이그 월즈 지음)6. Gradle 그레이들 철저 입문(와타비키 타쿠마, 스에 노부히로, 하야시 마사토시, 이마이 마사노부 지음) - 자바지기 박재성님의 추천 도서 1. 이펙티브 자바2. 토비의 스프링3. 자바 ORM 표준 JPA 프로그래밍 (중복 추천 도서.. 2017. 12. 31.
[네트워크] 프록시 서버(Proxy Server) 프록시 서버(Proxy Server)란? 프록시 서버(Proxy Server)란 시스템에 방화벽을 가지고 있는 경우 외부와의 통신을 위해 만들어 놓은 서버 - 프록시(Proxy)란 원래 '대리' 라는 의미를 가지고 있음. - 프록시 서버는 클라이언트가 자신을 통해서 다른 네트워크 서비스에 간접적으로 접속할 수 있게 해주는 컴퓨터 - 보안 분야에서는 주로 보안상의 이유 등으로 직접 통신할 수 없는 경우가 존재함 - 위와 같은 경우 직접 통신할 수 없는 두 점 사이에서 대리로 통신을 수행하는 기능을 프록시, 그 중계 기능 을 하는 것을 프록시 서버라고 함 - 시스템에 방화벽을 가지고 있는 경우 외부와의 통신을 위해 만들어 놓은 서버 - 프록시 서버는 보안 상의 목적으로 설치되는 경우가 많으나, 단순히 보안 .. 2017. 12. 27.
[Git] Git & Github Dreaming IT Study 1주차 학습 내용 Git & GitHub Git(깃)이란 소스코드를 효과적으로 관리하기 위해 개발된 '분산형 버전 관리 시스템' 이다. (반대로 SVN은 중앙집중형 버전관리 시스템이다) 원래는 Linux소스코드를 관리할 목적으로 개발되었다. Git에서는 소스코드가 변경된 이력을 쉽게 확인할 수 있고, 특정 시점에 저장된 버전과 비교하거나 특정 시점으로 되돌아갈 수도 있다. 또 내가 올리려는 파일이 누군가 편집한 내용과 충돌한다면, 서버에 업로드할 때 경고 메시지가 발생된다. 이로써 누군가가 애써 편집한 내용을 덮어써버리는 등의 실수를 방지할 수 있다. * Git 설치 1. Chrome에서 git download 입력 2. https://git-scm.com/download.. 2017. 12. 26.
[네트워크] HTTP VS HTTPS [http 와 https 의 차이점] 웹 브라우저의 주소창을 자세히 보면 http://나 https://로 시작한다. 간략하게 설명하면 HTTPS 는 HTTP에서 보안성이 강화되었다고 생각하면 된다. HTML이란 무엇인가? 우리가 보는 웹 페이지의 대부분은 확장자가 html 이다. 기타 php, aspx, jsp 등도 있다.이들은 각각 웹 서버의 처리 엔진에 따른 결과물인데, 사실 확장자는 중요한게 아니다.확장자가 php, aspx, jsp인 것도 다들 html 이다. 웹 브라우저는 확장자를 보고 html 인 줄 아는게 아니라, 헤더에 있는 타입을 보고 아는 것이다. 우리가 보기에는 확장자가 php라도, 헤더에는 txt/html 로 타입이 규정되어 있고, 웹 브라우저는 그래서 이것이 html 인 줄 알 .. 2017. 12. 24.
[GIS] OpenLayers Simple Map 만들기 [OpenLayers Simple Map 만들기] 1. OpenLayers 란? - 웹 지도 서비스를 위한 라이브러리 - 웹 플랫폼에서 지도 데이터의 시각화와 조작을 편리하도록 하는 오픈소스 기반의 자바스크립트 라이브러리 - 클라이언트 사이드 javascript - AJAX, Web 2.0 활용 - BSD 라이선스 (자유롭게 수정 / 배포 가능) 2. OpenLayers의 이해 - Javascript 기반 - Javascript 기반이기 때문에 구축 환경과 관계가 없음 - OpenLayers에서 지도 서비스를 제공해주지는 않음 (구글맵, 네이버 맵 등과 같은 지도 서비스 를 제공하는 서버가 필요) - Google Maps, Bing Maps 등의 상용 지도와 OpenStreetMap 과 같은 오픈 데이터.. 2017. 12. 16.