분류 전체보기 289

[Network] nc, telnet, /dev/tcp, socat 비교표 및 예시

리눅스에서 nc (Netcat), telnet, /dev/tcp, socat를 사용하여 통신 테스트를 할 때의 차이점을 비교표로 정리해 드리겠습니다. 아래 표는 각 도구의 주요 특징과 사용 시 고려해야 할 점들을 요약한 것입니다:도구설명장점단점사용 사례nc (Netcat)다양한 네트워크 연결을 위한 유틸리티로, TCP와 UDP 프로토콜 모두 지원합니다.- 8비트 클린 연결- 다양한 프로토콜 지원- 스크립트와의 파이프 연결 가능- 일부 시스템에서 기본적으로 설치되어 있지 않을 수 있음- 데이터 전송- 포트 스캐닝- 서버 시뮬레이션telnet원격 호스트에 연결하기 위한 프로토콜 및 클라이언트입니다.- 널리 사용됨- 인터랙티브한 사용이 가능- 보안이 취약함- 일부 데이..

Network 2024.05.01

[Linux] SSL,TLS 인증서 만료일 체크하여 Mattermost 전송

아래 스크립트는 도메인,포트 형식의 목록을 사용하여 SSL 인증서의 만료일자를 확인하고, 갱신일이 30일 이하인 경우에 대한 정보를 Mattermost로 전송하도록 작성하였습니다.#!/bin/bash# 도메인과 포트 목록 (도메인,포트 형식으로 정의)declare -A domainsdomains["www.naver.com"]="443"domains["example.com"]="443"domains["google.com"]="443"# 각 도메인,포트별로 SSL 인증서 정보를 가져오는 함수 정의get_ssl_info() { local domain="$1" local port="$2" local expiry_date expiry_date=$(openssl s_client -connect..

Linux 2024.04.30

[Linux] 리눅스에서 <,> 표준 입력,출력 리디렉션 명령어 사용법

리눅스에서 기호는 표준 입력과 표준 출력을 리디렉션하는 데 사용됩니다. 여기에 간단한 설명과 예시를 들어보겠습니다:cat > 기호는 명령어의 표준 출력을 파일로 리디렉션할 때 사용합니다. 예를 들어, "Hello World"라는 문자열을 temp.txt 파일에 저장하고 싶다면 다음과 같이 사용할 수 있습니다:이 명령을 실행하면 "Hello World"라는 문자열이 temp.txt 파일에 저장됩니다.echo Hello World > temp.txt리디렉션은 스크립트 작성이나 데이터 처리를 할 때 매우 유용하게 사용됩니다. 더 복잡한 작업을 위해서는 >>를 사용하여 기존 파일에 내용을 추가하거나, 2>를 사용하여 에러 메시지를 다루는 등 다양한 리디렉션 방법이 있습니다.표준 출력 리디렉션 (Standard..

Linux 2024.04.29

[Docker] docker cp 명령어 사용

도커에서 컨테이너의 파일을 로컬로 복사하거나 로컬의 파일을 컨테이너로 복사하는 명령어를 간단히 알려드리겠습니다:컨테이너 안에 있는 파일을 로컬로 복사:컨테이너 내부에 있는 파일을 로컬로 가져오려면 다음 명령어를 사용합니다:$ docker cp : 예를 들어, "tmp_container"라는 컨테이너 내부에 “/root/data/test.md” 파일이 있다면:$ docker cp tmp_container:/root/data/test.md ~/data/위 명령어는 컨테이너 이름과 컨테이너 내부 데이터 경로를 " : "로 구분해 적어주고, 로컬 경로를 지정합니다.로컬의 파일을 컨테이너 안으로 복사:로컬의 파일을 컨테이너로 옮기려면 명령 인자의 순서를 반대로 해주면 됩니다:$ docker cp :예를 들어, ..

Docker 2024.04.26

[Linux] envsubst 명령어 사용 방법 (환경 변수 치환)

envsubst 명령어는 환경 변수의 값을 텍스트 파일 내의 변수로 치환하는 데 사용됩니다. 이 명령어는 주로 설정 파일이나 스크립트에서 환경 변수의 값을 동적으로 적용할 때 유용합니다. 사용 방법은 다음과 같습니다:1. 환경 변수 내보내기: envsubst는 내보낸(exported) 환경 변수만 인식합니다. 따라서 먼저 사용할 환경 변수를 내보내야 합니다:export VARIABLE_NAME="value" 2. 치환할 파일 준비: 치환을 원하는 파일을 준비합니다. 이 파일 내에서 $VARIABLE_NAME 또는 ${VARIABLE_NAME} 형식으로 환경 변수를 참조합니다.3. envsubst 실행: 다음 명령어를 사용하여 파일 내의 변수를 환경 변수의 값으로 치환합니다:envsubst output_..

Linux 2024.04.25

Jenkins Credential 에 저장되어있는 계정 비밀번호 복호화(Decrypt)

Jenkins Credentials 에  저장되어있는계정에 대한 암호를 복호화 하고 싶을 경우 아래와 같이 따라하길 바란다.Jenkins 관리 메뉴 클릭 Credentials 메뉴 클릭 admin/****** 계정 클릭 F12 개발자 도구에서 _.password 찾아 value 값 복사 Script Console 메뉴 클릭 Script Console 화면에서 아래 명령어를 실행println hudson.util.Secret.decrypt("{AQAAABAAAAAQo8lYUq4g7VlK+yJCeA7kP6lM0LFRhF+YHfBXbsCaTDw=}")

CI-CD 2024.04.24

[Proxmox] QEMU Agent 설정하기

QEMU Guest Agent는 QEMU 가상 머신과 호스트 간에 통신하기 위한 에이전트입니다. 이것은 게스트 운영 체제 내에서 실행되며, 가상화 환경 내에서 여러 작업을 수행하는 데 사용됩니다. 주요 기능에는 시스템 정보 보고, 가상 디스크 관리, 시간 조정 등이 있습니다. 특히, 클라우드 환경이나 관리가 필요한 서버 환경에서 유용합니다. Ubuntu 및 Windows에서 QEMU Guest Agent를 설정하는 방법은 다음과 같습니다. GUI 화면에서 설정하는 방법 Ubuntu에서 QEMU Guest Agent 설정 1. QEMU Guest Agent 설치: 먼저 Ubuntu 게스트 운영 체제에서 QEMU Guest Agent를 설치해야 합니다. sudo apt update sudo apt insta..

Cloud 2024.02.28

[Docker] PhotoPrism 구축하기

PhotoPrism은 자체 호스팅되는 개인 미디어 서버로, 사진 및 비디오를 관리, 검색 및 공유할 수 있는 오픈 소스 소프트웨어입니다. 주요 기능은 다음과 같습니다: 사진 및 비디오 관리: PhotoPrism은 사진과 비디오를 업로드하고 정리하는 데 사용됩니다. 파일 시스템에서 자동으로 미디어를 스캔하고, 사진을 메타데이터 기반으로 정렬하고 태그를 할당하여 사용자가 쉽게 찾을 수 있도록 합니다. 검색 및 탐색: PhotoPrism은 강력한 검색 및 필터 기능을 제공하여 사용자가 특정 사진이나 비디오를 빠르게 찾을 수 있습니다. 날짜, 장소, 인물 등 다양한 기준으로 검색 및 필터링이 가능합니다. 사진 공유: 사용자는 PhotoPrism을 통해 사진을 공유할 수 있습니다. 원하는 사람과만 공유하거나 외부..

Docker 2024.02.27

[Docker] Nextcloud AIO 구축하기

Nextcloud All-in-One (AIO)는 Nextcloud 솔루션의 통합된 설치 및 관리를 제공하는 솔루션입니다. 이것은 일반적으로 개인 및 기업 사용자들이 자체 호스팅하는 클라우드 솔루션을 배포하고 관리하는 것을 단순화하기 위해 설계되었습니다. AIO는 다음과 같은 기능을 포함할 수 있습니다: Nextcloud Server: AIO는 Nextcloud 서버를 기반으로 합니다. Nextcloud는 클라우드 스토리지 및 파일 공유 서비스를 제공하여 사용자가 파일을 안전하게 저장하고 공유할 수 있도록 합니다. Database Server: Nextcloud는 사용자 및 파일 메타데이터를 저장하는 데 데이터베이스가 필요합니다. AIO에는 종종 데이터베이스 서버가 포함되어 있습니다. 일반적으로 MySQ..

Docker 2024.02.26

[WEB] Nginx 에서 $1 과 $args 차이

Nginx에서 $1 및 $args는 각각 정규 표현식에서 캡처된 그룹과 쿼리 문자열을 나타내는 변수입니다. 다음은 각각에 대한 설명입니다: $1: 정규 표현식에서 괄호로 둘러싸인 부분을 캡처하는 데 사용됩니다. 예를 들어, 만약 당신이 다음과 같은 정규 표현식을 가지고 있다면, 이때 $1은 괄호로 둘러싸인 부분에 해당하는 값을 가지게 됩니다. location ~ /example/(.*) { # 여기서 $1은 정규 표현식에서 괄호로 둘러싸인 부분에 해당합니다. # 예를 들어, /example/test일 경우 $1은 "test"가 됩니다. # 이 값을 사용하여 요청을 처리할 수 있습니다. ... } $args: 현재 요청의 쿼리 문자열을 나타냅니다. 예를 들어, 만약 /example?param1=value1..

WEB,WAS 2024.02.06