본문 바로가기

IT 개발 관련

(9)
쉘(shell) 프로그래밍과 bashrc Shell쉘이란 사용자와 커널 사이의 매개체 역할을 하는 프로그램이다. 사용자가 CLI 콘솔인 CMD, 혹은 터미널에 명령어를 입력하면, 쉘은 이를 프로세싱하기 위해 커널에 명령어를 해석하여 넘겨주는 일을 하는 프로그램이다. 커널은 쉘로부터 받은 지시를 해석하여 하드웨어를 위한 지시어로 바꿔준다. BashBash는 Bourne Again Shell의 축약어로, 리눅스에서 일반적으로 사용되는 쉘 프로그램이다.Bash는 5개의 공통된 설정 파일을 가지고 있다./etc/profile/etc/bashrc~/.bash_profile~/.bashrc~/.bash_logout최상위 디렉토리 아래의 etc 즉, /etc 디렉토리에는 일반적으로 전역적인 환경 설정 파일들이 존재한다.지역적인 파일은 사용자 개개인을 위한 ..
Redis 개념 정리 Redis (Remote Dictionary Server)In-memory DBMS로 주로 메모리 내에 DB 데이터가 저장되며, 이를 통해 빠른 조회 및 쓰기를 지원하는 기능을 갖고 있다. 키-값 데이터 구조에 기반한 다양한 자료 구조를 지원하고, 비동기 처리 및 분산 처리를 위한 기능을 제공하기에 고성능 시스템에서 널리 쓰이고 있다.Redis는 빠른 읽기 및 쓰기 성능을 가지고 있기에 웹 애플리케이션 데이터 캐싱 용도로 자주 쓰인다. 또한, 사용자 세션을 저장하는 용도로도 많이 사용되는 등 목적에 따라 다양하게 쓰이지만, 인 메모리 DBMS 특성상 문제로 데이터를 주기적으로 저장하기 때문에 데이터에 부분적으로 손실이 발생할 수 있다.다만 그렇다고 해서 Memcached와 착각하면 안되는게, Redis는..
HTTPS와 TLS/SSL 개념 정리 HTTPS일반적으로 웹 브라우저 상에서 사용자(클라이언트)와 웹 서비스(서버) 간에 데이터를 주고 받는데 사용되는 Application Layer (OSI 7계층 중 L7) 상의 프로토콜인 HTTP의 보안 버전이다.HTTPS는 데이터 전송의 보안을 강화하기 위해 암호화되며, 사용자가 개인 정보 등의 중요한 데이터를 전송할 때 특히 중요하며, 최신 웹 브라우저에서는 HTTPS를 매우 중요시한다. TLS/SSLHTTP의 보안 버전이 HTTPS이며, 해당 보안 강화에 적용되는 암호화 프로토콜이 TLS/SSL이다. 여기서 SSL은 보안 소켓 계층(Secure Sockets Layer)을 의미하며, TLS는 전송 계층 보안(Transport Layer Security)을 의미한다.현재 SSL은 몇 가지 보안 결함..