본문 바로가기

OS/Linux

Linux - CentOS 7/8 & Ubuntu 18/20 서버 튜닝: 성능과 안정성을 높이는 방법 리눅스 서버를 처음 설치한 뒤 안정성과 성능을 높이기 위해 꼭 필요한 OS 튜닝 작업을 정리했습니다.이 가이드는 CentOS 7/8과 Ubuntu 18/20에서 공통적으로 적용할 수 있는 설정입니다.1. OS 기본 설정1.1 패키지 업데이트* CentOSyum update -y * Ubuntuapt update && apt upgrade -y 1.2 타임존 설정 및 시간 동기화서버 시간을 정확히 설정하여 로그 관리 및 작업 스케줄에 오류가 없도록 합니다.* 타임존 설정timedatectl set-timezone Asia/Seoul* 시간 동기화- Chrony 사용yum install -y chrony # CentOSapt install -y chrony # Ubuntusystemctl enable --n.. 더보기
Linux - OpenSSL 소스 설치 가이드: SSH 및 NTP 데몬 문제 해결과 올바른 설정 OpenSSL을 소스 설치하거나 업데이트할 때, 설정이 꼬여서 SSH나 NTP 같은 중요 서비스가 실행되지 않을 수 있습니다.특히, OpenSSL은 시스템의 다른 패키지들과 많이 의존적이기 때문에 설치 시 경로 설정과 옵션을 신중히 설정해야 합니다.이번 글에서는 OpenSSL 설치 과정에서 발생한 문제 해결하는 방법을 정리합니다.1. 문제 상황: OpenSSL 설치 후 SSH와 NTP 데몬 오류OpenSSL을 소스 설치한 후, SSH나 NTP 데몬을 재시작할 때 아래와 같은 오류 메시지가 발생할 수 있습니다.# SSH 데몬 재시작 시 오류[root@localhost]# systemctl restart sshdStopping sshd: [ OK ]Starting sshd: [FAILED]OpenSSL ve.. 더보기
Linux - Turnserver 프로세스 및 트래픽 문제 자동화 Turnserver를 운영하다 보면 프로세스가 비정상적으로 종료되거나 트래픽 처리에 문제가 생길 수 있습니다.이를 자동으로 탐지하고 대응하는 스크립트 작성법과 함께, 효율적인 로그 관리 방법까지 정리해 보겠습니다.1. 준비 작업iftop 설치본 스크립트는 iftop을 사용해 트래픽을 모니터링합니다. 따라서, 먼저 iftop을 설치해야 합니다.Ubuntu/Debiansudo apt updatesudo apt install iftopCentOS/RHELsudo yum install epel-releasesudo yum install iftop설치가 완료되면 다음 명령으로 iftop이 정상적으로 작동하는지 확인해 보세요.sudo iftop -h2. Turnserver 프로세스 확인 및 재시작 스크립트 #!/b.. 더보기
Linux - CentOS 7 프로세스 크래시 디버깅 CentOS 7 서버를 운영하다 보면 특정 프로세스가 예기치 않게 종료되는 경우가 발생할 수 있습니다.이때 ABRT(Automated Bug Reporting Tool)를 사용하면 크래시 원인을 빠르게 파악할 수 있습니다.이번 글에서는 CentOS 7 환경에서 ABRT를 설치하고 설정하는 방법을 알아보겠습니다.ABRT 설치하기CentOS 7에서는 ABRT가 기본 설치되어 있지 않기 때문에 yum 패키지 관리자를 사용하여 설치합니다.sudo yum install -y abrt abrt-cli abrt-addon-ccpp abrt-tuiabrt: 프로세스 크래시를 감지하고 정보를 수집하는 ABRT 데몬입니다.abrt-cli: 커맨드라인 인터페이스로 ABRT를 제어할 수 있는 도구입니다.abrt-addon-c.. 더보기
Linux - CentOS 8 네트워크 설정(NetworkManager / nmcli) CentOS 7까지는 ifcfg-* 파일을 통해 네트워크 설정을 관리하고, systemctl restart network 명령어로 네트워크를 재시작했었습니다. 하지만 CentOS 8에서는 NetworkManager가 네트워크 관리를 하다 보니 설정 방식이 조금 달라졌습니다.이번 포스트에서는 NetworkManager와 ifcfg, nmcli, nmtui, ifdown/ifup 등 명령어의 활용법을 소개합니다. 기존 네트워크설정(IP / DNS 설정) 이 궁금하다면? Linux - 네트워크설정(IP / DNS 설정)서버로 쓸 OS는 보통 동적 IP 할당인 DHCP를 사용하지 않고 정적 IP를 사용합니다. 리눅스에서 네트워크 설정에 관련된 파일들을 수정하여 네트워크를 설정하는 방법을 정리해 봅니다. ※ DH.. 더보기
Linux - Crontab에서 Command Not Found 오류 해결 리눅스에서 crontab을 통해 주기적으로 명령어를 실행하려 할 때, 특정 명령어를 찾지 못해 "command not found" 오류가 발생하는 경우가 있습니다. 이는 crontab의 기본 PATH 설정이 제한적이기 때문인데요, 기본적으로 /usr/bin 등 제한된 경로만 인식하기 때문에 다른 경로에 설치된 프로그램이나 도구는 찾지 못하는 경우가 발생합니다. 이 글에서는 Python, Node.js 등 다양한 도구를 crontab에서 원활히 실행하기 위한 PATH 설정 방법을 알아보겠습니다. Crontab을 모른다면? Linux - Crontab (크론탭)Crontab 1. cron이란 : 일정시간마다 프로그램을 자동으로 실행시키는 데몬입니다. (Windows 의 작업스케줄러와 유사함) 2. crond.. 더보기
Linux - 스크립트 명령어를 등록하고 버전 관리하는 법 리눅스 환경에서 바이너리 파일이나 스크립트를 명령어로 등록하면, 터미널에서 해당 명령어를 바로 입력하여 실행할 수 있습니다. 특히 직접 설치한 패키지나, 여러 버전을 동시에 관리해야 하는 환경에서는 효과적으로 사용 가능합니다. 1. 환경 변수 PATH에 경로 추가하기일반적으로 터미널에 입력된 명령어는 PATH 환경 변수에 지정된 경로에서 찾습니다. 기본적으로 /usr/bin과 같은 경로가 PATH에 포함되어 있어, 여기에 등록된 명령어는 별도의 경로 없이도 실행됩니다.바이너리나 스크립트가 위치한 디렉토리를 PATH에 추가하면, 해당 명령어로 바로 실행 가능합니다.export PATH=$PATH:/your/custom/path주의 사항: 여러 디렉토리를 추가하면 PATH가 복잡해져 유지 관리가 어려워지므로.. 더보기
Linux - SSL 인증서 만료 체크 스크립트 서버 운영 시 SSL 인증서의 만료 여부를 주기적으로 체크하는 것은 중요합니다.SSL 인증서가 만료되면 웹사이트 접속 시 보안 경고가 발생하여 접속에 문제가 발생할 수 있습니다.도메인 리스트를 읽어 SSL 인증서의 만료 일자를 확인 후 만료가 임박한 인증서에 대해 이메일을 발송하는 스크립트를 소개합니다. 1. 기존 SSL 인증서 만료 체크 스크립트우선 기본적인 SSL 인증서 만료 체크 스크립트를 살펴보겠습니다. 이 스크립트는 URL과 포트를 인자로 받아 SSL 인증서를 가져와 만료 일자를 확인하고, 만료일이 15일 이하로 남은 경우 이메일을 발송합니다.checkSSL_Dday.sh 스크립트#!/bin/bashtoday="`date`"date2nanosec="`date +%Y%m%d_%H%M%S_%N`"U.. 더보기