본문 바로가기
반응형

인프라28

네트워크 통신 언어 프로토콜 TCP/IP 각 나라별 사람들이 소통하기 위해서 언어가 일치해야하는 것 처럼 컴퓨터 네트워크들 장비들도 통신하기 위해서는 언어가 일치해야합니다. 즉, 통신하기 위해서 TCP/IP 프로토콜 이라는 언어를 사용합니다. 그 외에 사용되어지는 언어들도 많지만, 대부분 TCP/IP라고 생각하면 됩니다. TCP/IP 계층 구조는 4계층으로 구성되어있습니다. OSI 7계층을 더 압축시킨 구조라고 생각하면 됩니다. 1.네트워크 인터페이스 계층 2.인터넷 계층 3.트랜스포트 계층 4.애플리케이션 계층 - 계층별 주요 프로토콜 네트워크 인터페이스 계층(이더넷, 무선LAN, PPP 등) 인터넷 계층(IP, ICMP, ARP 등) 트랜스포트 계층(TCP, UDP 등) 애플리케이션 계층(HTTP, SMTP, POP3, IMAP4, DHCP.. 2024. 2. 10.
네트워크 운용 논리 구성도 물리 구성도 네트워크 구축 후에 어떻게 운용할것인가에 대한 고민도 필요하다. 효율적인 네트워크 관리 및 운용을 위해서 물리 구성도와 논리 구성도가 필수라고 생각한다. 논리구성도는 각네트워크 흐름을 도식화한것이다. A부서, B부서 사용자들이 어떤 스위치와 어떤 보안장비를 거쳐서 내부와 혹은 외부와 통신하는지에 대한 흐름도이다. 두번째로 현행화되어야 할것은 물리구성도인데 장비의 물리적인 내용들이다. 네트워크 장비가 어떤 인터페이스끼리 연결이 되어있는지 배선은 광케이블인지 랜케이블인지 네트워크 장비가 몇층, 어디 랙에 마운트가 되어있는지에 대한 구성도이다. 2개의 구성도가 현행화 되어있어야 네트워크 운용하는데 많은 도움이 된다. 2024. 2. 3.
기본 네트워크 장비 종류 L2스위치 L3스위치 라우터 네트워크를 구성하는 기기는 대표적으로 L2스위치, L3스위치, 라우터가 있다. 네트워크 데이터를 수신하여 어디로 보낼지 결정해서 데이터를 전송해주는 역할을 한다. 이때, L2스위치, L3스위치, 라우터는 사용하려는 네트워크 환경에 맞게 구성할 수 있다. 구성에 꼭 라우터가 없어도 L3로 구성을 할 수 도 있고, 규모가 작은 네트워크라면 굳이 상위 스위치가 아닌 L2스위치로만도 구성이 가능하다. 인터페이스는 물리적인 장비의 LAN케이블을 꼽을 포트 구멍이다. 포트와 인터페이스는 동일하다고 생각하면 된다. 데이터를 주고 받기 위해서 네트워크 장비의 인터페이스(포트) 끼리 연결한다. 이때, LAN케이블이 될 수도 있고, 광케이블이 될 수도 있고 연결 케이블은 다양하다. 2024. 1. 27.
클라우드 서비스 분류 Iaas / Paas / Saas 클라우드 서비스에 따른 분류 IaaS / PaaS / SaaS가 있다. 클라우드의 어떤 서비스를 쓰냐에 따라 분류된것이다. 약자는 다음과 같다. Iaas(Infrastructure as a Service) "이아스" 라고 읽는다. 하드웨어 부분만 빌려서 쓴다고 생각하면 된다. CPU, 메모리, 저장장치만 빌려 OS등을 설치해서 쓰는 서비스이다. Paas(Platform as a Service) "파스"라고 읽는다. 하드웨어 부분뿐만아니라 OS, 미들웨어까지 빌려쓰는 서비스이다. 사용할 어플리케이션만 설치해서 쓰면 된다. Saas(Software as a Service) "사스"라고 읽는다. 하드웨어 부분부터 어플리케이션 부분까지 이용할 수 있는 서비스이다. 우리가 가장 흔하게 접근하는 클라우드 서비스라고.. 2024. 1. 13.
네트워크 온프레미스 방식 클라우드 방식 개념 서버 운용방식에는 온프레미스 방식과 클라우드 서비스 방식이 있다. 온프레미스 방식은 흔히 우리가 알고 있는 방식으로 직접 서버 자산을 구입하여 OS를 설치하고 서비스를 설치하고 관리하는 방식이다. 물론 장점도 있지만, 시간과 비용의 단점도 존재한다. 반대로 클라우드 서비스는 온프레미스 방식과 반대로 클라우드 서비스 사업자가 서버를 도입하고 관리하는 방식으로 우리는 서버를 직접관리하지 않고 서비스를 이용 할 수 있는 장점이 있다. 반대로 보안적인 문제의 단점도 존재한다. 2024. 1. 6.
네트워크 TCP/IP 4가지 계층 주요 프로토콜 TCP/IP란 네트워크에서 데이터를 주고 받는 언어라고 생각하면 됩니다. TCP/IP 4가지 계층에는 애플리케이션 계층 트랜스포트 계층 인터넷 계층 네트워크 인터페이스 계층 으로 구성되어있습니다. 애플리케이션 계층의 주요 프로토콜은 HTTP, SMTP, POP3, IMAP4, DHCP, DNS등이 있습니다. 트랜스포트 계층의 주요 프로토콜은 TCP, UDP가 있습니다. 인터넷 계층의 주요 프로토콜은 IP, ICMP, ARP 등이 있습니다. 네트워크 인터페이스 계층의 주요 프로토콜은 이더넷, 무선 LAN, PPP 등이 있습니다. 2023. 12. 23.
네트워크 구성 LAN과 WAN 개념 네트워크를 구성하기 위해서는 LAN과 WAN의 용어에 대해 알아보자. LAN은 Local Area Network를 줄인말로 가정에서 쓰고 있는 네트워크 혹은 기업에서 쓰고 있는 네트워크 영역을 말합니다. LAN은 기업이나 가정에서 쓰고 있는 PC나 서버등을 연결한 네트워크 영역인데 직접 구축해서 사용하면 되기때문에 구축 및 유지관리 해주는 인건비 초기 장비 비용이 발생 할 수 있습니다. 반대로 WAN은 Wide Area Network를 줄인말로 인터넷이라고 생각하면 됩니다. 본사(LAN)-지사(LAN)간의 통신을 연결해준다고 생각해도 됩니다. 이건 직접 구축할 수는 없고 ISP(통신사업자)가 직접 구축하고 관리하기 때문에 서비스 계약요금, 통신요금이 발생합니다. 흔히, 가정에서는 인터넷요금이라고도 하죠 2023. 12. 16.
네트워크 사설망, 인터넷망 개념 장/단점 네트워크를 다양한 관점으로 분류할 수 있지만, 누가 사용하는지에 따라 분류할 수 도있다. 사설망 - 특정 사용자만 사용 할 수 있는 사설 네트워크 인터넷망 - 누구나 이용할 수 있는 네트워크 사설네트워크는 기업에서 회사 직원들만 사용할 수 있도록 제한하거나 가정에서 가족들끼리 사용하도록 제한하는 경우이다. 반면 인터넷은 사용자를 제한하지않고, 누구든 이용할 수 있는 네트워크이다. *사설네트워크의 장점은 보안성이지만 단점으로는 제한된 사용자들끼리만 데이터를 주고 받을 수 있다. *인터넷망의 장점은 다양한 데이터를 공유할 수 있지만, 단점으로는 크래커의 공격에 대해서 안전할 수 없다. 2023. 12. 9.
그림으로 배우는 네트워크 Network 원리 네트워크 쉽게 배우기 입문책 그림으로 배우는 네트워크 Network 원리 영진닷컴 저자 Gene(진) 역자 김성훈 네트워크 입문하기에 좋은 책이다. 기초 개념부터 간단한 네트워크 보안까지 그림과 같이 설명이 되어 있다보니 비전공자 혹은 처음 네트워크 접하기에는 좋은 서적이라고 생각한다. 챕터7에서는 네트워크 보안을 다루고 있다. 해당책으로 네트워크 개념정리를 다시 해보려고 한다. 2023. 12. 2.
리눅스 passwd 파일 구조 및 계정 패스워드 변경 방법 리눅스 로그인 시 사용자 계정과 패스워드를 입력하면 /etc/passwd 파일과 일치하는지 검증한다. root 소유주의 644권한을 가진 일반파일이다. passwd 파일 구조 root계정을 기준으로 보면 root:x:0:0:root:/root:/bin/bash 총 7개의 필드로 : 구분자로 구분한다. 각 필드의 의미는 1) root : 계정명 2) x : shadow 패스워드를 사용한다는 의미 - 즉, 평문 패스워드를 사용하지 않고 암호화 된 패스워드를 사용하겠다는 의미이다. 3) 0 : 사용자 ID값 (UID) - 시스템은 계정명으로 사용자를 식별하는 것이 아니라 UID, GID 값을 확인하여 권한은 부여하고 식별한다. 그렇기때문에 계정명이 꼭 root가 아니더라도 UID , GID 값을 0으로 설정 .. 2023. 5. 18.
리눅스(LINUX) crontab 사용법 및 cron.allow & cron.deny 접근제어 설정 CRON 리눅스에서 CRON은 정기적인 스케줄 관리 기법이다. CROND 데몬이 정해진 작업을 지정 시간에 주기적으로 실행시켜 준다. 이러한 설정은 CRONTAB 명령어로 제어가 가능하다. crontab [option] 옵션 값 - r : crontab에 등록 된 작업을 모두 삭제 -l : crontab에 등록 된 작업 리스트 출력 -e : crontab에 새로운 작업을 추가 crontab -e 6개 필드 설명 구분 의미 사용법 필드1 분 분은 0~59 까지의 숫자로 작성 필드2 시간 시는 0~23 까지의 숫자로 작성 필드3 일 일은 1~31 까지의 숫자로 작성 필드4 월 월은 1~12 까지의 숫자로 작성 필드5 요일 요일은 0~6까지의 숫자로 작성 0 : 일요일, 1 : 월요일, 2 : 화요일, 3 :.. 2023. 4. 21.
네트워크 VLAN 개념, VLAN 사용 이유 VLAN Virtual LAN으로 "가상의 랜"을 뜻한다 기본적인 네트워크 장비 스위치와 라우터를 보자 스위치는 "콜리전 영역"을 나눠준다. 즉, 1차선을 4차선,8차선으로 만들어주는 역할. 라우터는 "브로드캐스트 영역"을 나눠준다. 그럼 브로드캐스를 막기 위해서는 라우터가 무조건 필요하다는 소리인데, 스위치의 VLAN 기술을 사용하면 해결 할 수 있다. VLAN은 "브로드캐스트 영역"을 나눌 수 있기 때문이다. 위의 그림은 VLAN 기술을 사용하지 않은 네트워크 구성도이다. 색깔별로 A, B, C 3개의 네트워크가 존재한다. 3개의 네트워크를 만들기 위해서 SW-A, B, C 3대의 스위치가 쓰였다. 위의 그림은 VLAN 기술을 사용한 구성도이다. 똑같이 A, B, C 3개의 네트워크로 나뉘어져 있지만.. 2023. 4. 20.
네트워크 라우터(Router) 모드 종류 및 모드 변경 명령어 라우터는 콘솔을 통한 접속, 통신이 가능한 경우 터미널을 통한 접속도 가능합니다. 라우터와 콘솔케이블을 연결하고 하이퍼터미널 콘솔접속을 시도한 화면입니다. 라우터 모드는 1. 유저모드 2. 프리빌리지드 모드 3. 구성모드 4. 셋업모드 5. RXBOOT모드 먼저, 유저모드는 프롬프트가 'Router>' 인 경우 유저모드라고 하며 유저모드에서 간단한 핑이나 트레이스와 같은 명령어는 가능하나, 구성 자체 변경은 불가능한 모드입니다. 프리빌리지드모드 프롬프트가 'Router#' 인 경우 프리빌리지드모드라고 하며 구성 파일 변경이 가능한 모드입니다. 유저모드에서 프리빌리지드모드로 변경하는 명령어 enable 구성모드 프롬프트가 'Router(config)#' 인 경우 구성모드라고 하며 프리빌리지드모드에서 구성모.. 2023. 4. 8.
IP 위치 추적, 악성 이력 IP 평판 조회 사이트 대표적인 IP 위치 조회 사이트로는 KISA에서 운영하는 whois가 있다. 1) Whois https://xn--c79as89aj0e29b77z.xn--3e0b707e KISA 후이즈검색 whois.kisa.or.kr 한국인터넷진흥원 인터넷주소자원 검색(후이즈검색) 서비스 입니다. xn--c79as89aj0e29b77z.xn--3e0b707e 두번째로는 2) Mylocation https://mylocation.co.kr https://mylocation.co.kr/NotSupport.aspx?type=6 정상적인 방법으로 사이트에 접근하시기 바랍니다. mylocation.co.kr 국내IP에 대해서만 확인이 가능하다. VirusTotal은 악성 파일이나 악성 URL 및 IP등을 분석하여 Clean한지.. 2023. 3. 17.
리눅스(LINUX) CentOS7 설치 가이드 VM 최소 설치 및 ISO 이미지 파일 다운로드 VM을 통한 리눅스 CentOS7 설치 가이드 물리적 서버 설치도 크게 다르지 않다. ISO 이미지파일은 아래 경로에서 다운로드 가능하다. https://www.centos.org/download/ Download Home Download Architectures Packages Others x86_64 RPMs Cloud | Containers | Vagrant ARM64 (aarch64) RPMs Cloud | Containers | Vagrant IBM Power BE (ppc64) RPMs Cloud | Containers | Vagrant IBM Power (ppc64le) RPMs Cloud | Containers | Vagrant ARM32 (armhf www.centos.org VMware.. 2023. 3. 11.
리눅스(LINUX) 계정 그룹 추가 및 기본그룹과 보조그룹 개념 리눅스는 UID(계정명)값과 GID(그룹명)값이 존재합니다. 우리한테는 문자열로 보이지만, OS에서는 정수 값으로 권한을 식별하게 됩니다. 1) 소유주 권한 2) 그룹 권한 3) 그 외 사용자권한 사용자는 무조건 하나의 그룹을 갖게 됩니다. test라는 하나의 계정을 생성하면 test 계정과 test 그룹을 기본적으로 생성되는데 이때 생성되는 그룹이 '기본그룹' 입니다. 파일을 생성하거나 디렉토리를 생성할 때 부여되는 그룹입니다. root 계정을 예시로 보면 groups=0(root) 기본 그룹 root 하나만을 가지고 있습니다. root 계정으로 생성된 파일이기 때문에 그룹명은 root로 되어 있습니다. /etc/group 파일은 모든 그룹에 대한 정보를 저장하고 있는 파일입니다. 4개의 필드로 구성 .. 2023. 1. 14.
레드햇 엔터프라이즈 리눅스 RHEL 6.8 64bit VM 설치 가이드 레드햇 엔터프라이즈 리눅스 RHEL 6.8버전 64bit VM 설치 가이드입니다 Create a New Virtual Machine 선택 Typical (recommended) 선택 I will install the operating system later. 선택 Linux 선택 후 Version 선택(준비한 ISO파일 버전 및 bit 선택) VM 이름 및 설치 경로 지정 VM에 할당 할 Disk Size 지정 후 Store virtual disk as a single file 선택 Edit virtual machine settings 클릭 CD/DVD (SATA) 선택 후 Use ISO image file 지정(이미지 파일 지정) 필요에 따라 Network Adapter를 추가하거나 Memory를 변경.. 2022. 12. 30.
[MYSQL ERROR] java.sql.SQLException: Value '0000-00-00' can not be represented as java.sql.Timestamp 위의 에러는 JDBC를 통해 Mysql Select 질의 시 발생 됩니다. Mysql Table의 DateTime컬럼에 접근 시 발생되는 에러인데 해당 컬럼의 Default 값을 0000-00-00 00:00:00으로 정의가 되었을 시 Connector/J driver에서 에러로 간주하여 실행 시 에러가 발생합니다. 해당 컬럼의 정의를 변경하거나 JDBC DB URL를 변경하여 해결 할 수 있습니다. jdbc:mysql://1.1.1.1:3306/mysql?zeroDateTimeBehavior=convertToNull jdbc:mysql://1.1.1.1:3306/mysql 일반적인 JDBC URL에서 ?zeroDateTimeBehavior=convertToNull 위의 Null 변환 옵션을 추가하면 해.. 2022. 12. 17.
리눅스(LINUX) SELinux 영구 비활성화/임시 비활성화/종료 상태 확인 리눅스 초기 설치 후 OS 방화벽과 SELinux를 비활성화 하는것을 권장한다. #sestatus SELinux status : enabled Current mod : enforcing 현재 상태와 동작 모드를 확인 할 수 있다. 비활성화 방법 2가지 1) 영구 비활성화 (OS reboot 필요) #vi /etc/selinux/config SELINUX=disabled 수정 #reboot #sestatus reboot 후 영구적으로 비활성화 시키는 방법이다. 2) 임시 비활성화(OS reboot 불 필요) 당장 reboot이 불가한 상황일 때 임시 비활성화를 해주면 된다. #setenforce 0 #sestatus Current mode : permissive 변경 확인 임시 비활성화이기때문에 재부팅 시.. 2022. 12. 2.
리눅스 CentOS7 본딩(Bonding) 설정 및 본딩 상태 확인, fail over 테스트 방법 CentOS7 본딩 설정 가이드 #cat /etc/redhat-release 메이저 버전마다 본딩 설정 방법이 조금씩 상이하므로 본딩 설정 전 리눅스 버전을 사전에 확인하는 것이 좋다. #ifconfig -a 네트워크 인터페이스를 확인하여 사용 가능한 인터페이스 2개 확보(ens33, ens37) #cd /etc/sysconfig/network-scripts #pwd #ls ifcfg-* 네트워크 본딩 설정을 하기 위해서 /etc/sysconfig/network-scripts 경로로 이동한다. #cp ifcfg-ens33 ifcfg-ens37 #cp ifcfg-ens33 ifcfg-bond0 #ls ifcfg-* 기존에 존재하는 ifcfg-ens33 파일을 ifcfg-ens37 파일1개, ifcfg-bo.. 2022. 11. 30.
[네트워크] 핑(Ping) 과 트레이스(Trace) 네트워크에서 핑과 트레이스는 중요한 한부분입니다. 그림에서처럼 네트워크가 구성되어 있을때, 라우터 C에서 라우터 A의 이더넷 172.70.100.1 으로 핑을 보내게 되면 RouterC# ping 172.70.100.1 이런방법을 '단순핑' 이라고 합니다. 단순핑 같은 경우는 목적지주소는 적어줄수 있으나 출발지주소는 정할수가 없습니다. 라우터C의 시리얼 203.210.200.2 로 고정이 되어있죠. 출발지 주소를 변경할수 있는 핑이 '확장핑' 입니다 그냥 ping 명령어를 치게되면 출발지주소, 목적지주소,Echo패킷의 수, 크기 등을 지정해줄수가 있습니다. 이렇게 출발지, 목적지뿐만 아니라 중간에 거친 경로에 대한 정보랑 소요시간까지 볼 수 있는 것이 트레이스(Trace) 명령어 입니다. 트레이스 명령은.. 2017. 8. 6.
[네트워크] 네트워크 STP(스패닝 트리 프로토콜) 네트워크장비 '스위치'를 공부하다보면 STP라는 용어가 나옵니다. STP란? Spanning Tree Protocol 의 약자입니다. 그렇다면 스패닝 트리 프로토콜은 무엇일까요? 흔히 네트워크를 구성할 때 스위치와 라우터로 구성하게 됩니다. 우선 라우터를 신경쓰지않고 스위치부분만 보겠습니다. 이해를 돕기 위해서 이미지는 구글에서 가져왔습니다. 일반적으로 사람들은 출발지부터 목적지로 갈수있는 길이 여러개라면 어디로갈지 고민하게되고 생각이 많아지게됩니다. 네트워크장비도 마찬가지로 출발지부터 목적지까지의 스위치의 경로가 2개 이상이라면 방황을 하게됩니다(Looping) 하지만 일반적으로 네트워크를 구성할 때 한쪽 경로가 문제가 생기면 돌아갈수있도록 2개의 경로를 만드는 실수를 많이 하게됩니다. 이런 문제점(L.. 2017. 8. 6.
[네트워크] 이더넷과 토큰링 네트워크의 구성방식에는 크게 이더넷방식과 토큰링방식이 있습니다. 이더넷방식은 CSMA/CD라는 기술을 사용하게됩니다. 쉽게 말하면 충돌을 감지한다는 것입니다. 한 네트워크상에 A라는 호스트가 통신을 하고있는것이 감지된다면 B라는 호스트는 통신을 하고싶어도 A라는 호스탁 통신이 끝날때까지 기다리게되며 A라는 호스트가 통신이 끝난것을 감지하면 B라는 호스트는 통신을 하게됩니다. 그렇지만, C라는 호스트도 A호스트가 통신이 끝날때까지, 기다리다가 통신이 끝난것을 감지하여, B호스트와 C호스트가 동시에 통신을 하게되면 어떻게될까요? 두 호스트가 충돌이 나게됩니다. 그런경우 랜덤한시간동안 기다렸다가 다시 통신을 시도하게 됩니다. 이더넷방식은 충돌이 불가피하다고 볼 수 있습니다. 반대로 토큰링방식은 말그대로 호스트.. 2017. 8. 6.
[네트워크] 네트워크 기초 인터넷은 이제 없어서는 안 될 존재가 되었습니다. 인터넷 - 인터(Inter) 넷(Network) 서로의 네트워크를 연결시켰음을 의미합니다. 우리가 사람들과 한국어로 소통을 하듯 네트워크도 통신하는 언어가 필요합니다. 네트워크에서 통신하는 언어를 '프로토콜'로 생각하시면됩니다. 인터넷에서는 TCP/IP라는 프로토콜을 사용하게되며 그 밖의 IPX, AppleTalk 여러 프로토콜이 있습니다. 종종 듣게되는 인트라넷, 엑스트라넷도 동일하게 TCP/IP 프로토콜을 사용하여 통신하게 됩니다. 인터넷과 달리 인트라넷은 사내에서만 사용하는 네트워크를 의미하며, 엑스트라넷은 사내구성원들을 포함하여, 협력업체까지 사용하게되는 네트워크를 말합니다. 2017. 8. 6.
[LINUX] CentOS7 text, gui모드 변경 7버전 이하에서는 text 모드와 gui 모드설정을 /etc/inittab 파일을 수정하여 설정하였지만, 7버전 이후에서는 systemctl 명령어를 사용하여 변경이 가능합니다. -현재 모드 확인- systemctl get-default -text 모드로 변경- systemctl set-default multi-user.target -gui 모드로 변경- systemctl set-default graphical.target 2017. 7. 29.
[LINUX] 스태틱 라우팅 설정 [LINUX] 스태틱 라우팅 설정 다른 대역대간의 네트워크 통신을 위해서 스태틱 라우팅 설정방법 > 64 대역대 PC > route 명령을 통한 라우팅정보 확인 > 63 대역대 PC > route add -net 192.168.64.0/24 dev eth0 (임시) 라우팅 정보 추가 삭제시 route del -net 192.168.64.0/24 dev eth0 vi /etc/sysconfig/network-scripts/route-eth0 (영구) ADDRESS0=192.168.64.0 NETMASK0=255.255.255.0 GATEWAY0=192.168.63.2 2017. 7. 16.
[LINUX] su 사용 제한 방법 리눅스 su 사용 제한 가이드 관리자 권한(#)이 없는 일반 사용자($)가 su 명령을 사용하는 것을 제한, Password Guessing(암호 추측)을 통해 관리자 권한을 획득할 수 없도록 설정. > 제한을 두지 않으면 일반사용자가 su 명령을 통해 관리자권한을 획득 가능 > 제한을 위해서 /etc/pam.d/su 파일 수정필요 > 수정전 내용(su 명령어를 제한하지 않을 때) > 수정후 내용(su 명령을 제한할 때) auth required pam_wheel.so use_uid 주석 제거 > 수정 후 su명령어 사용 시 'incorrect password' 출력 2017. 7. 16.
[MYSQL] 사용자(DB USER) 생성하기 [MYSQL] 사용자(DB USER) 생성하기 $mysql -uroot -p mysql 접속 후 데이터베이스 선택 mysql> use mysql; mysql > insert into user (host, user, password) values ('localhost', 'test', password('test')); 쿼리 실행 시 아래와 같은 에러 발생 > ERROR 1364 (HY000): Field 'ssl_cipher' doesn't have a default value 이유: mysql 버전이 높아짐에 따라 보안 강화 mysql> insert into user (Host, User, Password, ssl_cipher, x509_issuer, x509_subject, authentication_.. 2017. 7. 9.
반응형