분류 전체보기 34

(Redis) OOM (Out Of Memory) 문제 시 해결 방법

※ Redis 클러스터에서 추가 메모리를 해제할 수 없는 경우 OOM (Out Of Memory) 메세지가 발생된다. : 지속적으로 해당 문제 발생 시, 텐센트 Redis 메모리를 비 정상적으로 많이 잡아 먹을 수 있음. 1. 해결 방법 : Redis 설정에서, maxmemory-policy 설정 값을 변경해준다. ※ maxmemory-policy : Redis Memory가 가득 찼을 때, 기존 데이터를 어떻게 처리할 지에 대한 옵션 2. maxmemory-policy 옵션 정리 옵션 값 설명 noeviction (기본 값) 기존를 삭제하지 않음. 메모리 한계에 도달 시 OOM 오류를 반환하며 새로운 데이터가 저장되지 않음. allkeys-lru 모든 것 중에서 * LRU 기준으로 삭제하여 공간을 확보..

Back-end/Server 2022.11.14

scp를 통해 파일 전송하기

1. SCP 란 ? : SecureCopy 의 약자로, 원격지에서 파일이나 디렉터리를 보내거나 가져올 수 있다. 2. 파일 전송 방법 2-1 파일을 보낼 때 (보내는 곳에서 작업) $ scp [옵션] [파일/폴더 경로] [받을 ID]@[받을 IP]:[받을 위치] 2-2 파일을 가져올 때 (받는 곳에서 작업) $ scp [옵션] [보내는 ID]@[보내는 IP]:[받을 위치] [파일/폴더 경로] 3. scp 옵션 정리. r 디렉터리 내 모든파일 /디렉터리 복사 scp -r p (소문자) 원본 권한 속성 유지 복사 scp -p P (대문자) 포트 번호 지정 복사 scp -P [포트번호] c (소문자) 압축 복사 scp -c v 과정 출력 복사 scp -v a 아카이브 모드 복사 scp -a ※ 받는 서버의 P..

Back-end/Server 2022.10.23

(리눅스) apt-get을 통해 yum 설치하기

1. vi 편집기를 열어 제일 아래 줄에 다음 코드를 추가해준다. $ vi /etc/apt/sources.list deb http://archive.ubuntu.com/ubuntu bionic main restricted universe multiverse deb http://archive.ubuntu.com/ubuntu bionic-security main restricted universe multiverse deb http://archive.ubuntu.com/ubuntu bionic-updates main restricted universe multiverse 2. 편집기 종료 후 설치 가능 리스트를 업데이트 해준다. $ apt-get updage ※ apt-get upgrade 와의 차이 - a..

Back-end/Server 2022.09.28

(php) Uncaught ErrorException: Return type of Illuminate\Support\Collection::offsetExists($key) 오류 해결 방법

Composer update시 PHP Fatal error: During inheritance of ArrayAccess: Uncaught ErrorException: Return type of Illuminate\Support\Collection::offsetExists($key) 다음과 같은 에러가 뜨는 경우가 있음. [원인] : PHP버전과 라라벨 버전이 맞지 않기 때문 [해결 방법] : php version을 7.4로 다운그레이드 해준다. (현재 PHP 사용 버전 8.1) * Mac 기준 php Downgrade 하는 방법 1. php 7.4 설치 (homebrew 패키지를 통해 터미널에서 다운로드 받아준다.) : $ brew install php@7.4 2. 현재 사용중인 php 버전 연결 중단..

Homestead 에서 php 8.x 버전 사용하기

homestead.yaml 파일에서 가상머신에서 사용할 php버전을 설정할 수 있다. * 그러나 homestead 13.2버전 부터 php 8.0 8.1버전을 지원함. 1. 홈스테드 버전 업그레이드를 위해 composer.json 파일에서 homestead 버전을 설정해준다. : 버전을 13.2로 변경해준 후 적용을 위해 컴포저를 업데이트 해준다. 명령어 => composer update 2. 홈스테드 설정파일에서 php 버전을 설정해준다. : homestead.yaml 파일의 sites 항목에서 php 버전을 설정 3. 적용을 위해 가상머신을 reload 해준다. 명령어 => vagrant reload --provision

BASH 취약점을 노린 SMTP 서버 공격 및 취약점 제거 방법

1. BASH 취약점 (Shell Shock) 이란? : 특정 BASH 버전에서 환경변수 함수 선언문 뒤에 임의의 명령어를 삽입하는 경우, 선언문 뒤의 명령어까지 실행되는 취약점이 있음. 2. BASH 취약점으로 생길수 있는 문제. : 공격자가 원하는 BASH명령어를 사용할 수 있으므로, 서버 내에 악성 프로그램 및 백도어등을 설치할 수 있음. (CGI의 User-Agent의 헤더 정보에 악성 명령어를 입력 후 전송 하는 등의 방법으로 공격) - 이를 통해 공격자는 SMTP서버를 해킹하고 공격한 서버를 통해 대량 피싱메일 발송등을 진행할 수도 있음. 3. BASH 취약점 확인 방법. : 환경변수를 선언하는 명령어 뒤에 임의의 명령어를 입력 해본다. $ env x='() { :;); echo test' b..

Back-end/Server 2022.08.09

Deep Fakes 란 무엇인가? 용어 및 관련 기술 정리

1. 얼굴을 조작하는 기술 (Facial Manipulations) - 총 4가지가 있음. 1-1. Face Synthesis : 아예 존재하지 않던 가상의 얼굴을 만들어서 그 얼굴을 이용해 합성하는 방법 1-2. Facial Attributes : 기존에 존재하던 얼굴에서 특정한 속성만 바꾸는 방법 Ex) 안경을 쓰지 않는 사람에게 안경을 씌운다던지, 머리 숱이 없는 사람에게 머리 숱을 입히는 등의 방법 1-3. Facial Expression : 표정을 바꾸는 방법 Source : victim person 피해자 (이 사람의 표정을) Target : reference person (이 사람이 하는 표정으로 바꿈) -> 피해자 입장에서는 자신이 직접 하지 않은 표정이나 말에 대해서 직접 한 것처럼 보이..

(리눅스) mount 란 무엇인가? mount 옵션 정리

1. 마운트 (mount) 란? : 리눅스에서 여러가지 하드웨어 장치들을 사용하기 위해 리눅스라는 운영체제에 인식시켜야 하는데 이를 가능하게 해주는 작업. 2. mount 명령어 사용법 : mount [-fnrvw] [t 파일 시스템 종류] [-o 옵션] 디바이스명 디렉토리명 2-1. [ -fnrvw] 옵션 -f : 실제 시스템 호출은 하지 않고 마운트 할 수 있는지 점검 -n : /etc/mtab 파일에 쓰기 작업을 하지 않고 마운트 -r : read only -v : 자세한 정보 출력 -w : read, write 모두 가능 2-2. 파일 시스템 (마운트할 장치에 맞게 사용) -vfat : Window 95, 98, NT 파일 시스템 -ext2 : 리눅스에서 사용되는 파일 시스템 -ext3 : ext..

Back-end/Server 2021.11.13