전체 글 109

OpenSSH 업그레이드 - Ubuntu 16.04

CVE 취약점 조치 일환이다. OpenSSL도 같이 올려줘야 한다. 가급적 최신 것으로 올린다. 민감한 서비스가 실행되고 있으면 업그레이드에 신중을 기한다.​ 【현재 버전 확인】 cat /etc/issue openssl version ssh -V 【OpenSSL】 OpenSSL을 먼저한다. 만약에 OpenSSL패키지를 삭제하고 진행하려는 경우 디펜던시들까지 제거되지 않도록 한다. 즉, sudo apt-get --purge autoremove openssl 또는, sudo dpkg --force-depends --purge openssl 명령을 쓰지 않는다. sudo apt-get remove openssl 으로 OpenSSL만 제거한다. sudo apt-get update sudo apt-get inst..

보안 2023.10.20

Rocky 9.2 - SMTP/Postfix

사이트에서 폼메일을 발송하고자 할 때이다. (No return, No reply) SMTP만 띄운다. 정규화된 도메인(FQDN)이 있어야 한다. ***예 : mail.sinanda.co.kr 【설치】 dnf install -y postfix 【설정】 vi /etc/postfix/main.cf ... myhostname = mail.sinanda.co.kr #추가 ... mydomain = sinanda.co.kr #추가 ... myorigin = $mydomain #주석해제 ... mynetworks_style = host #주석해제 ... relay_domains = $mydestination #주석해제 ... 【시작】 SMTP를 시작하고 부팅시 자동 실행으로 등록한다. systemctl enable ..

구축 2023.10.17

Rocky 9.2 - phpMyAdmin

버전 트러블이 잦은 도구이다. 가급적 PHP, MySQL/MariaDB 버전에 맞춰 쓰는 게 성가스럽지 않다. 2023년 10월 기준 가장 최근 버전은 phpMyAdmin 5.2.1 이다. Rocky 9.2 - mariaDB Rocky 9.2 - PHP 이 포스팅대로 했으면 PHP은 8.1, MariaDB는 10.5이다. 하여 여기서는 버전 호환성을 무시하는 식으로 phpMyAdmin을 설치한다. 【설치】 mkdir /var/www/html/phpMyAdmin curl https://files.phpmyadmin.net/phpMyAdmin/5.2.1/phpMyAdmin-5.2.1-all-languages.tar.gz > ./phpMyAdmin-5.2.1-all-languages.tar.gz dnf ins..

구축 2023.10.03

Rocky 9.2 - mariaDB

【설치 및 시작, 확인】 dnf install -y mariadb-server php-mysqli ***PHP 7 이상을 쓸거면 php-mysqli도 같이 설치 systemctl enable mariadb systemctl start mariadb systemctl status mariadb mariadb --version 【초기 설정】 mariadb-secure-installation ***선택 [Y/n]은 그냥 엔터시 Y가 기본으로 입력된다는 뜻 【로그인】 mysql -u root -p ***설정한 암호 입력 \q 또는 quit 또는 exit를 입력하여 로그아웃 【문자셋 보기】 show variables like '%character%'; 【디비 목록】 MariaDB [(none)]> show dat..

구축 2023.10.02

Rocky 9.2 - PHP-FPM(FastCGI)

PHP-FPM (FastCGI Process Manager)는 PHP엔진이다. PHP CGI모드 보다 성능이 우수하다. PHP 서버라고 해도 무방하다. WEB과 분리(TCP/IP 연결)해서 WAS로 구현해도 좋다. 여기는 WEB과 동일(Unix Socket 연결)한 시스템에서의 구축이다. ***TCP/IP 스택이 제거된 Unix Socket이 더 나은 성능을 낸다. 이전 글(Rocky 9.2 - PHP)의 연장이다. 【설치】 dnf install -y php-fpm 【기동 및 확인】 systemctl enable php-fpm systemctl start php-fpm systemctl status php-fpm 【FPM 설정】 /etc/php-fpm.conf 파일이다. 별로 손 댈 것은 없으니 그냥 기..

구축 2023.10.02

Rocky 9.2 - PHP

CGI 모드 설치이다. 워드프레스, 그누보드, XE, Drupal 같은 일반적 CMS에 적당한 웹서버 환경이다. Rocky Linux가 기본으로 제공하는 버전으로 설치한다. 【설치】 ***가능한 버전 확인 dnf module list php ***설치 예 dnf module -y enable php:8.1 ***라이브러리 설치 dnf install -y php php-cli php-gd php-curl php-zip php-mbstring ***설치 확인 php -v 【설정】 cp -a /etc/php.ini /etc/php.ini-default vi /etc/php.ini ... ;짧은 태그 허용 short_open_tag = On ... ;명령어 실행 제한 disable_functions = curl..

구축 2023.10.01

Rocky 9.2 - Apache 가상호스트 - https 설정

Let's Encrypt의 90일 짜리 무료인증서 사용이다. 90일 만기 전에 자동으로 갱신하는 식이다. ***발급과 갱신에 Certbot을 이용 VirtualHost가 설정돼 있어야 한다. 실제 도메인이어야 한다. ***예 : sinanda.co.kr DNS에 sinanda.co.kr을 A타입, @호스트, IP를 값으로 하여 A레코드를 등록해놨다. 그리고 www는 CNAME 레코드로 등록했다. 【사이트 생성】 mkdir -p /var/www/sinanda.co.kr/html vi /etc/httpd/conf.d/sinanda.co.kr.conf ServerAdmin webmaster@sinanda.co.kr DocumentRoot /var/www/sinanda.co.kr/html ServerName s..

구축 2023.09.30

Rocky 9.2 - Apache 가상호스트 - 계정별

【개요】 한 서버에 홈페이지를 여러개 운영하는 웹호스팅이다. 사용자 계정의 홈 안에 특정 디렉터리를 웹루트로 한다. ***사용자를 user01, 사이트는 user01.co.kr 이며 DNS는 아직 없는 경우를 가정한다. 【웹루트 설정】 계정별 웹루트 디렉터리를 public_html으로 일원화 한다. mkdir /etc/skel/public_html chmod 751 /etc/skel/public_html ***public_html이 계정을 추가할 때 자동으로 생성되도록 하는 거다. 【UserDir 사용】 vi /etc/httpd/conf.d/userdir.conf ... #UserDir disabled ... UserDir public_html ... Options MultiViews SymLinksIf..

구축 2023.09.26

Rocky 9.2 - Apache 가상호스트

【개요】 홈페이지를 몇 개만 운영하는 경우이다. SELinux 정책이 적용된 /var/www/html과 /var/log/httpd를 그대로 활용한다. ***사이트 이름을 예를 들어서 abc.co.kr 이라고 가정하고 DNS에 등록되지는 않았다. 【웹루트 디렉터리 만들기】 mkdir -p /var/www/abc.co.kr/html 【설정 파일 작성】 vi /etc/httpd/conf.d/abc.co.kr.conf ServerAdmin webmaster@abc.co.kr DocumentRoot /var/www/abc.co.kr/html ServerName abc.co.kr ServerAlias www.abc.co.kr ErrorLog logs/abc.co.kr-error_log CustomLog logs/a..

구축 2023.09.26

Rocky 9.2 - Apache 설정 - 기본

【기본 설정 파일】 /etc/httpd/conf/httpd.conf 【편집】 httpd.conf 파일을 편집기로 연다. ... #오류 페이지에 보여줄 실제 사용중인 관리자 이메일 주소로 수정 ServerAdmin webmaster@example.co.kr ... #호스트 이름과 포트를 지정 ServerName localhost:80 ... #웹루트에서 디렉터리 나열을 제거, Indexes 인자 ... Options FollowSymLinks ... ... #기본 문자셋을 지정하지 않음, 주석처리 #AddDefaultCharset UTF-8 #바로 아래에 보안을 위해서 다음을 추가 ServerTokens Prod ServerSignature Off TraceEnable Off ... 【설정 확인】 apac..

구축 2023.09.26