🥇Home
![[Cloud] AWS EC2 접속](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdna%2FA4lm2%2FbtqDmmdsH1C%2FAAAAAAAAAAAAAAAAAAAAABXYkjZmzOib9WLxGe4jWWJeoMxXRdeeMMztp1yQhfaZ%2Fimg.png%3Fcredential%3DyqXZFxpELC7KVnFOS48ylbz2pIh7yKj8%26expires%3D1759244399%26allow_ip%3D%26allow_referer%3D%26signature%3DmnzjYAAbTcWrYH2g%252Fp6db3zUweo%253D)
[Cloud] AWS EC2 접속
EC2 인스턴스 접속 전 글에 앞서 내려받은 키페어가 사용된다. EC2 인스턴스에 할당된 퍼블릭 도메인 혹은 퍼블릭 IP를 이용하여 SSH로 접속한다 [SSH 클라이언트 ex) PuTTY] EC2 인스턴스에 접속하기 위해 ec2-user 사용자를 사용했으며, ec2-user는 Amazon Linux의 시스템 사용자 계정으로 앞으로 root 권한이 아닌 대부분의 작업은 ec2-user로 진행하게 된다.
![[Cloud] AWS EC2 생성](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdna%2FrtHdQ%2FbtqDk5J7FZG%2FAAAAAAAAAAAAAAAAAAAAAPMbdlvYaoIvpSoqCo5O4PaZ_MuJ46pd75KAZ4W5MKmE%2Fimg.png%3Fcredential%3DyqXZFxpELC7KVnFOS48ylbz2pIh7yKj8%26expires%3D1759244399%26allow_ip%3D%26allow_referer%3D%26signature%3Drvljgy6pQzR%252BsE%252FNfk7RdCZiqTo%253D)
[Cloud] AWS EC2 생성
AWS는 사용량 만큼 비용을 내야하므로 EC2 인스턴스가 켜져있는 시간에 대해 요금을 내야한다. 잠시 사용하지 않는경우 꺼두는것을 추천하며, 인스턴스를 끄는 방법은 인스턴스 대상을 오른쪽 마우스 버튼으로 클릭 한뒤 [인스턴스 상태] -> [중지] 를 선택한다. 여기서 [종료]는 "terminate" 로서 인스턴스를 완전히 삭제하는 것이다. 종료 시 복구 방법이 없으니 더는 사용하지 않는경우에만 [종료] 를 클릭한다. pending : 생성 중 running : 실행 중 stopped : 잠시 중시된 상태 terminated : 삭제(종료)된 상태
[Cloud] AWS EC2 개념
EC2 (Elastic Compute Cloud) 는 우리가 쉽게 사양을 고르고 원하는 시간만큼 사용할 수 있는 "가상서버" 다. CentOS, Ubuntu, Windows 등 운영 서버에 필요한 대부분의 OS를 지원하며, 사용 목적에 맞는 수십 가지 사양들을 제공한다. EC2 는 필요할 때마다 켜고 끌 수 있으며 사용한 시간에 대해서만 비용을 지급하면 된다. 비싼 돈을 주고 초기에 직접 서버를 구매해서 관리를 위한 공간과 인터넷 망을 구축하고 전기요금, 네트워크 비용 등 관리비를 지급하는 것에 비하면 정말 간편하고 저렴하게 서버를 이용할수 있다. EC2 생성 전 3가지 개념 1) AMI (Amazon Machine Image) AMI란 우리가 생성할 EC2 인스턴스의 기반이 되는 이미지다. 윈도우를 설..
[Cloud] AWS 리전 및 가용 영역
AWS 리전 과 가용 영역 AWS는 전 세계에 23개 지역에 인프라를 구축해서 호스팅하고 있는 글로벌 서비스다. (2019년 11월 기준) 지리 영역을 리전(region) 이라고 부르는데, 사용자가 가장 많은곳부터 리전을 만들고 있으며, 계속 늘려가고 있다. 서비스하려는 지역에 가장 가까운 리전을 선택해야 네트워크 지연 시간을 최소화 할수있다. 현재 한국에서는 서울 리전이 있으며 일본에는 도쿄와 오사카 리전이 있다. 대부분의 서비스는 모든 리전에 제공되지만 새로 생성된 서비스는 리전에 따라 늦게 오픈되는 경우도 있다. 모든 리전이 동일한 클라우드 서비스를 제공하는 것이 아니며, 더 많은 서비스를 가지고 있는 리전이 있다. 리전별로 몇 개월 정도 차이가 있으며 서울 리전은 다른 리전에 비해 조금 늦게 오픈..
[Cloud] AWS 개념
AWS Service AWS 에서는 단순한 컴퓨팅 서버만을 제공하는것이 아니라 운영서버에서 자주 사용되는 온갖 서비스들을 함께 제공한다. 데이터베이스, 배포 자동화, 모니터링, 보안, 메일, 도메인 등 100가지가 훨씬 넘는 서비스들을 제공하고 있다. 이러한 서비스 대부분은 모두 아마존 내부에서 더 편하게 운영 서버를 관리하기 위해 만들어서 사용하다가 어느정도 완성도가 높아지면 다른 회사들도 사용할 수 있게 서비스로 공개한 것들이다. AWS 같은 클라우드 서비스를 이용하지 않는다면 직접 서버를 구매해서 설치하고 관리해야하지만 사용하는 경우 몇번의 클릭만으로 생성하고 안정적으로 운영할수 있다. AWS 현재 위치 아마존뿐만 아니라 구글(Google Cloud), 마이크로소프트(Azure), IBM(IBM C..
[AWS] AWS 탄생배경
AWS 탄생 배경 AWS (Amazon Web Services) 는 미국 기업인 아마존에서 만든 클라우드 서비스 플랫폼이다. 인터넷 쇼핑몰 아마존에서 처음부터 클라우드 서비스 플랫폼을 만들 생각을 하고 있던 것은 아니였다. 2000년도 쯤 인터넷 쇼핑몰을 운영하던 아마존은 늘어난 트래픽과 주문량을 감당하다보니 자연스럽게 굉장히 뛰어난 수준의 내부 인프라 시스템을 구축하게 되었다. 컴퓨팅, 스토리지, 데이터베이스 등 운영 서버에 필요한 인프라를 누구보다 안정적이고, 규모를 키울수 있으며, 저렴하게 운영할 수 있는 능력을 아마존 쇼핑몰 하나에만 제공하기보다 전 세계 모든 회사를 대상으로 제공하자는 생각 을 하게 됐고 결국 2006년부터 이 인프라를 누구나 쉽게 사용할 수 있게 만들어 다른 회사에 돈을 받고 ..

Tomcat 원격 코드 취약점 | CVE-2020-1938 Ghostcat
취약버전 (취약점 공개일 2020.2.24) 9.0.0~9.0.30 8.5.0~8.5.50 7.0.0~7.0.99 Tomcat 버전별 취약점 업데이트 내용 확인 ※ 7.x : http://tomcat.apache.org/security-7.html ※ 8.x : http://tomcat.apache.org/security-8.html ※ 9.x : http://tomcat.apache.org/security-9.html 원인 AJP 연결은 HTTP 연결보다 신뢰도가 높은것으로 취급하며, 기존 취약점버전 Tomcat은 모든 IP주소(0.0.0.0) 에서 수신대기하는 AJP 커넥터를 기본적으로 사용하도록 설정하여 제공하였다. 이 부분은 신뢰할수없는 사용자가 AJP 포트에 엑세스할수있다는것이며, 공격자는 파일..
[Linux] 대기상태 D(uninterruptible sleep) PID 죽이기
http://www.novell.com/support/kb/doc.php?id=7002725 http://ssambback.tistory.com/115 리눅스 시스템을 운영하다 보면 시스템 Hang-up에 대한 문제점을 많이 들어나게 됩니다. 물론 리눅스 시스템 자체의 문제점이라고 보다는 특정 운영 프로세스에 대해서 인터럽트 또는 스케쥴이 정상적으로 진행되지 못했을때 나타는 문제점에 대해서 간략해 소개해 보고자 합니다. 갑자기 시스템 로그에서 출력하게된 /var/log/message 의 시스템 로그. kernel: INFO: task startup.sh:9902 blocked for more than 120 seconds. kernel: "echo 0 > /proc/sys/kernel/hung_task_..
[Linux] 깃허브란
먼저 Git 에 대해 설명한다 Git이란 버전관리 프로그램이다 쉽게 생각하여 버전 1.0 2.0 등등 버전을 관리한다는것이다 예를 들어 어떤 개발자는 1.1버전을 개발중에있는데 갑자기 에러가 발생한다고 하면 1.0 버전을 따로 저장해놓지 않았으면 큰일이 된다. 이럴때를 대비해 각각 프로그램을 버전별로 따로 저장해두면 해결하기 쉬우며 Git은 프로젝트 폴더안에 숨김폴더를 생성하여 이전 기록과 달라진 부분들을 기록하고 되돌아가고싶은 경우 그 달라진 부분을 복원한다. 폴더를 여러개 만들 필요도 없고, 코드의 저장과 불러오기가 명령어 한줄로 수행되며, 저장 하고 싶은 만큼 저장해도 실제 전체 코드를 저장하는 것이 아니기 때문에 용량이 크게 늘어나지도 않는다 또한 그룹 프로젝트의 경우 한 사람이 A라는 기능을 개..
[Linux] http -> https 주소 리다이렉트 시키기
여기 계신 분들이라면 당연히 다 알고 계시겠지만 문제는 인터넷에 나와 있는 한국말로 된 팁들이 대부분 어딘가 빠져 있거나 허술하거나 잘못되어 있더군요 저도 그것들을 믿고 실행했다가 작동이 안 되거나, 최상위 주소만 되고 세부주소는 안되거나 (예: xetown.com 만 되고 xetown.com/square는 안됨) 하는 문제점들을 겪었고 결정적으로 지금까지 "301 리다이렉트"가 아니라 "302 리다이렉트"로 적용되어 있었네요 (301은 영구적인 이동, 302는 일시적인 이동을 나타내는데, htaccess 리라이트 구문에 기재를 해 놓지 않으면 302로 인식하기 때문에 301이라고 명시해줘야 합니다) 이게 영어로 찾아보면 거의 다 제대로 나와 있는데, 한국어로 찾아보면 그렇지 않네요 각설하고... 한마디..
MYSQL 복구
회사 직원의 실수로 Mysql 을 특정 DB를 날렸다. 결국 복구는 했지만 백업화일을 만들어 두지 않아서 나름 귀찮고 힘든 과정이었다. 그래서 mysql 를 날렸을때 복구하는 방법을 간단하게나마 설명하고자 한다. root 계정으로 작업하고 /usr/local/mysql 을 기본 디렉토리로 본다는 가정하에.. ^^ mysqldump를 이용한 백업화일이 존재하는 경우 /usr/local/mysql/bin/mysql -u root -p < BackUp.sql 가장 쉽게 복구하는 방법이다. 하지만 이 경우 문제점이 있다. Cron 등의 프로그램으로 매일 백업을 받는다고 하더라도... 백업받은 시점과 DB를 날린 시점에서의 데이터는 다를수 있기 때문이다. 그런 부분을 커버 할수 있는것이 binlog 이다. 원래 ..
PHP 메모리 부족 (PHP Fatal Error: Allowed memory size of)
서버 램이 넉넉잡아 16기가 정도 남았다고 해봅시다. memory_limit이 128MB(기본값)이라면 섬네일 생성이 필요한 페이지를 동시에 100명이 요청해도 됩니다. (128MB × 100 = 12.8GB) memory_limit이 512MB이라면 섬네일 생성이 필요한 페이지를 동시에 50명만 요청해도 서버가 다운됩니다. (512MB × 50 = 25.6GB) 즉 서버에서 안정적으로 처리할 수 있는 동접수에 큰 차이가 생기고, 악의를 가진 사용자가 일부러 대용량 이미지를 첨부한 후 동시에 다수의 섬네일 생성을 요청하여 서버를 마비시킬 수 있는 취약점도 발생합니다. PHP Fatal Error: Allowed memory size of 134217728 bytes exhausted (tried to a..
미들웨어 개념 및 종류
https://dbrang.tistory.com/693 /******************************************************************************************** -- Title : 미들웨어 개념 및 종류 -- Reference : blog.naver.com/swinter8 -- Key word : ********************************************************************************************/ n 개 념 : 일반적으로 미들웨어란 개념은 의미상 뿐만 아니라, 기능, 제품 등을 고려할때, 광범위하다. 굳이 개념상 정리를 하자고 하면, 미들웨어란 “클라이언트와 서버 간의 통신을 ..
Apache log에 favicon.ico 출력 제거
1. 개요 1) favicon의 정의 - favicon이란, favorite + icon 의 합성어 - 즐겨찾기를 할 경우 즐겨찾기 목록 좌측의 아이콘을 등록할 때 쓰임/ - 한글로 "파비콘"이라고 칭함 - 즐겨찾기를 수행할 때, Default로 찾는 파일임(소스상에서 다른 지정을 안할 경우) Web Server를 운용하다 보면.. errorlog에 아래와 같은 로그가 남기는 것을 볼 수 있다. favicon은 즐겨찾기 등록시에 옆에 보이는 아이콘이다. 소스상에서 따로 코딩하지 않으면 자동적으로 해당 Docroot의 Root디렉토리에서 찾는다. 아래의 경우, /home/monitor/webapps 경로는 물리적 소스 경로이다. 사실상, 별로 중요치 않은 로그이기 때문에 안 쌓이게 하는 것이 좋다. ===..
![[Linux] 기존 구성 된 LVM 용량 늘리기](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdna%2FbUVg0V%2FbtqCpP9H9rO%2FAAAAAAAAAAAAAAAAAAAAAHUQB3Ne1CTgkHcX-PL5cTUiN-e49lFL4ncL81uHxsAg%2Fimg.png%3Fcredential%3DyqXZFxpELC7KVnFOS48ylbz2pIh7yKj8%26expires%3D1759244399%26allow_ip%3D%26allow_referer%3D%26signature%3DsTcV1Y29OpYUgbPA7AmzHABxFSA%253D)
[Linux] 기존 구성 된 LVM 용량 늘리기
기존 운영중인 LVM에 신규 디스크를 추가하여 LVM에 디스크 용량을 증가할 수 있습니다. 디스크 추가 및 PV 설정 LVM에 추가할 Disk를 마운트 합니다. $> sudo fdisk -l Disk /dev/sdd: 10.7 GB, 10737418240 bytes 64 heads, 32 sectors/track, 10240 cylinders Units = cylinders of 2048 * 512 = 1048576 bytes Sector size (logical/physical): 512 bytes / 4096 bytes I/O size (minimum/optimal): 4096 bytes / 4096 bytes Disk identifier: 0x00000000 fdisk를 통해 신규로 추가된 Disk..

팀뷰어 상업적 해결
출처 : https://blog.naver.com/vkxld133/220886588116 팀뷰어의 경우 원격을 한 만큼 팀뷰어의 임시폴더에 로그가 남아 팀뷰어를 다시 실행시켜도 원격한 아이디가 그대로 남아있습니다. 라이센스 만료를 판단 해서 차단하는 로직(알고리즘)은 원격한 아이디의 로그가 얼만큼인지를 판별하여 팀뷰어를 사용하고 있는 자신의 아이피에 대해 1차적으로 상업적 의심을 띄우게 되며 여기서 일정 수준을 넘을 경우 2차적으로 라이센스 만료로 넘어가서 아이피를 차단 시키는 구조로 되어 있는 것으로 알고있습니다. 밑에있는 방법은 팀뷰어를 완전히 지운 후 맥주소를 변경해 아이피를 변경하여 처음 설치했을때의 모습으로 돌리는 과정입니다. -----------해결방법 구분선 ------------- 첨부파일..
MYSQL 초기 패스워드 및 설정파일 위치
mysql 초기 패스워드 /root/.mysql_secret 초기 설정파일 cp -arp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf 또는 /etc/my-default.cnf
[Linux] Process의 대한 Thread 정보 확인
ps 명령어 옵션 – 'e' or 'A' : 모든 프로세스 선택 – 'f' or 'F' : 보여질 수 있는 모든 정보 출력 – 'L' : 스레드 정보인 LWP / NLWP 출력 – 'T' : thread를 보여준다. SPID 출력 (SPID = LWP, TID) #사람들이 ps -ef 를 많이 쓰는 이유 추가정보 – PID(Process ID) : 프로세스의 아이디 – PPID(Parent Process ID) : 부모 프로세스의 아이디 – LWP(Light Weight Process, is thread) : 스레드 고유아이디 – NLWP(Number Light Weight Process) : 해당 프로세스에서 동작하는 스레드의 총 갯수
국내 ISP DNS 정보
국내 인터넷망을 관리하는 통신사, 즉 ISP 사업자별로 대표 DNS 가 등록되어 있다. 간혹가다가 자동으로 할당받는 DNS 정보가 잘못되어 인터넷 연결이 안 될 수가 있다. 이런경우를 위해 DNS 정보를 임의로 입력해준다. 아래는 국내에서 대표적으로 사용하는 통신사별 DNS 정보이다. KT 기본 DNS 서버 : 168.126.63.1 보조 DNS 서버 : 168.126.63.2 SK 기본 DNS 서버 : 210.220.163.82 보조 DNS 서버 : 219.250.36.130 LG 기본 DNS 서버 : 164.124.101.2 보조 DNS 서버 : 203.248.252.2 Google 기본 DNS 서버 : 8.8.8.8 보조 DNS 서버 : 8.8.4.4
wget
리눅스 환경에서 인터넷 파일을 다운로드 할 경우 가장 많이 쓰이는 방법은 wget 명령어를 사용하는 것이다. 1. 단일 파일 받기 $ wget [URL] 다운로드 하는 동안 진행 경과와 함께 다음의 정보를 보여줌 - 현재 몇 퍼센트 다운 받았는지에 대한 정보 - 현재 다운로드 받은 바이트 수 - 현재 다운로드 속도 - 다운로드 완료까지 남은 시간 2. 다른 이름으로 저장하기 wget은 기본적으로 다운로드 경로의 마지막 슬래쉬('/') 다음에 오는 단어를 파일이름으로 사용합니다. 그런데 위 방법은 이상한 이름으로 저장이 됩니다. ex) wget http://serverstudy.tistory.com/abc[2][3][4].txt 라고한다면 저장된 파일이름은 abc[2][3][4] 가 됩니다. 그렇기 떄문에..