리눅스(Linux)/CentOS47 728x90 반응형 [CentOS 8] MariaDB 11.4 소스 컴파일 설치 CentOS 8에서 MariaDB 11.4를 소스 컴파일 설치하는 방법은 아래와 같다.MariaDB 소스 컴파일 설치아래의 명령어를 입력하여 MariaDB 11.4 소스 파일을 다운로드 받고 압축 해제 한다.wget https://mirrors.xtom.jp/mariadb//mariadb-11.4.3/source/mariadb-11.4.3.tar.gztar -xf mariadb-11.4.3.tar.gzmv mariadb-11.4.3 mariadb-11.4.3-srccd mariadb-11.4.3-src아래의 명령어를 입력하여 makefile을 생성한다. 디렉토리 경로는 필요에 따라 수정한다.cmake \-DCMAKE_INSTALL_PREFIX=/home2/mariadb/mariadb_11.4.3 \-DM.. 2024. 10. 23. [CentOS 8] "sudo cmake command not found" 문제 해결 현상cmake가 분명히 있는데 sudo 명령어로 cmake를 실행하면 명령어가 없다고 나타난다.sudo: cmake: command not foundsudo: cmake: 명령이 없습니다해결 방법아래의 명령어를 입력하여 cmake 바이너리 파일의 심볼릭 링크를 생성한다.sudo ln -s /usr/local/cmake/bin/cmake /usr/local/bin/cmake참고문서"Can’t use cmake with sudo on ubuntu", Elliot2636, 2023년 1월 26일. @원문보기 2024. 9. 27. [CentOS 8] CMake 설치 CentOS Steram 8에서 소스 컴파일 설치할 일이 생겼는데 CMake가 없어서 수행이 불가능했다. 시행착오가 다소 있었기에 본 글에 CMake 설치하는 방법을 정리한다. CentOS Stream 8에서 CMake를 설치하는 방법은 아래와 같다.의존성 패키지 설치아래의 명령어를 입력하여 의존성 패키지를 설치한다. 의존성 패키지 관련 이슈가 발생한다면 '--allowerasing' 옵션을 입력하여 실행한다.yum install openssl-develCMake 설치아래의 명령어를 입력하여 CMake 소스를 다운로드 받는다.wget https://github.com/Kitware/CMake/releases/download/v3.30.3/cmake-3.30.3.tar.gz아래의 명령어를 입력하여 cmak.. 2024. 9. 5. CentOS 배포판 버전과 커널 버전 확인하는 명령어 배포판 버전 확인 배포판 버전 확인 명령어는 아래와 같다. cat /etc/*release* 커널 버전 확인 아래의 명령어를 입력하면 커널 버전을 확인할 수 있다. cat /proc/version 2023. 8. 21. [CentOS] 그래픽카드(VGA) 정보 확인 아래의 명령어를 입력하면 장착된 그래픽카드(VGA, Video Graphics Array, GPU, Graphics Processing Unit) 정보를 확인할 수 있다. lspci | grep -i VGA 참고문서 "lspci(8) — Linux manual page", man7.org, 2022년 11월 20일. @원문보기 2023. 8. 1. [CentOS] 톰캣 로그를 실시간으로 확인하는 방법 로그 실시간 확인 방법 CentOS에서 톰캣(Tomcat) 로그를 실시간으로 확인하기 위해서는 톰캣의 동작을 기록하는 파일 'catalina.out'을 계속 읽어오는 읽어와야 한다. 아래의 명령어를 참조하여 자신의 톰캣 경로에 맞게 실행하면 아래의 사진처럼 로그를 계속 잘 읽어오는 것을 확인할 수 있다. tail -f logs/catalina.out 2023. 7. 6. [CentOS] 파일 크기 확인하기 CentOS에서 파일 크기를 확인하는 명령어는 아래와 같다. 리눅스(Linux)에서는 디렉토리도 파일로 취급하기 때문에 파일명에 디렉토리명을 입력하면 디렉토리의 크기를 알 수 있다. 현재 경로 이하의 모든 파일의 크기를 알고 싶다면 'du'만 입력하면 된다. du -hs {파일명} 참고문서 "du(1) — Linux manual page", Linux, man7.org. @원문보기 2023. 7. 5. [CentOS 7] 계정 비밀번호 만료 안 되게 설정하기 개발용인데 계정 비밀번호를 주기적으로 보안을 위해 변경하는 것은 생산성을 저해시키는 요소 중 하나이다. 하지만 최근 운영체제들은 기본적으로 계정 비밀번호가 만료되도록 설정되기 때문에 이러한 현상을 피하기 위해서는 계정 비밀번호가 만료되지 않도록 설정하는 것이 좋다. 계정 비밀번호 만료 화면 아래의 같이 계정의 비밀번호가 만료되었다고 나타난다. You are required to change your password immediately (password aged) WARNING: Your password has expired. You must change your password now and login again! Changing password for user [계정명]. Changing passwo.. 2023. 2. 16. [CentOS 7] GitLab 재시작 및 상태 확인 명령어 GitLab을 재시작하는 명령어는 다음과 같다. GitLab 재시작 명령어 gitlab-ctl restart GitLab 상태 확인 명령어 gitlab-ctl status 2022. 10. 30. [CentOS 7] SMTP 서버(SendMail) 설치하기 SMTP 서버의 필요성 운영 중인 서비스에서 메일 발송이 필요하다면 온라인에서 제공되는 SMTP(Simple Mail Transfer Protocol) 서비스를 이용해도 되지만 때로는 자체적으로 SMTP 서비스를 구축할 필요가 있다. 본 글에서는 SMTP 서버(Server) 설치를 통해 SMTP 서비스를 구축하는 방법을 소개한다. SendMail 설치 아래의 명령어를 입력하여 SendMail과 설정 관련 패키지를 설치한다. yum install sendmail sendmail-cf m4 아래의 명령어를 입력하여 어떤 버전이 잘 설치되었는지 확인한다. sendmail -d | grep -i Version SendMail 설정 아래의 명령어를 입력하여 Sendmail 설정 파일을 텍스트 에디터로 연다. vi.. 2022. 8. 23. [CentOS 7] Fail2Ban에서 SSH 정책 설정하기 Fail2Ban 정책을 조정해야하는 이유 무작위 대입 공격(Brute foce, 브루트포스)은 가장 단순하고 시간이 오래걸리지만 시간만 있다면 언젠가는 해킹이 가능한 것이 특징이다. 그런 관점에서 무작위 대입 공격에 필요한 비용을 최대한 올리는 것이 중요하다. 지난 글에서는 CentOS에서 Fail2Ban을 설치하는 방법을 다루었고 기본 정책만으로는 무작위 대입 공격을 방어하기에는 부족하기 때문에 Fail2Ban 정책을 손보는 것이 좋다. Fail2Ban 정책 설정 아래의 명령어를 입력하여 Fail2Ban 정책 파일을 수정한다. vi /etc/fail2ban/jail.conf 아래의 사진처럼 각종 설정 화면이 나타날텐데 SSH에 적용할 것이고 로그인 관련 시도 허용 횟수와 밴 시간을 적절하게 조절한다. .. 2022. 8. 22. [CentOS] 프로세스가 사용 중인 포트 확인 포트(Port)가 이미 점유되어 있어서 사용하지 못 하는 경우 어떤 프로세스가 해당 포트를 사용하고 있는지 확인하는 것이 필요하다. 아래의 명령어를 입력하면 현재 사용 중인 포트와 프로세스 정보가 나타난다. netstat -tulpn | grep LISTEN 2022. 8. 12. [CentOS] 프로세스 목록 확인 및 프로세스 종료하기 한번씩 프로세스 목록을 확인하고 프로세스를 죽여야 하는 경우가 있다. 본 글에서는 이러한 경우를 해결할 수 있는 명령어를 정리했다. 프로세스 목록 확인 아래의 명령어로 프로세스 목록을 확인할 수 있다. ps a 프로세스 종료하기 아래의 명령어로 프로세스를 종료할 수 있다. kill [옵션] [프로세스명] 2022. 8. 7. [CentOS] 명령어 입력 기록(History) 삭제 명령어를 입력하면 아래의 사진처럼 기록이 남는다. 명령어를 입력한 기록을 보안을 위해 삭제해야하는 경우가 있다. 특정 기록만 삭제 아래의 명령어를 입력하면 해당 줄(Line)의 기록만 삭제된다. history -d [줄번호] 모든 기록 삭제 모든 기록을 삭제하려면 아래의 명령어를 입력한다. history -c 2022. 8. 5. [CentOS] 사용자 계정 추가 계정 목록 확인 아래의 명령어를 이용하여 계정 목록을 확인한다. cut -f1 -d: /etc/passwd 계정 생성 아래의 명령어를 입력하여 사용자 계정을 추가한다. useradd 계정명 홈 디렉토리를 설정하고 싶다면 아래 명령어를 활용해서 계정을 추가한다. useradd USERNAME -d 경로명 계정을 삭제하고 싶다면 다음의 명령어를 이용하여 삭제한다. userdel 계정명 비밀번호 설정 아래의 명령어를 입력하여 사용자 계정의 비밀번호를 설정한다. passwd 계정명 2022. 8. 3. [CentOS 7] Fail2Ban 설치 본 글에서는 CentOS 7.8을 기준으로 Fail2Ban을 설치한다. Fail2Ban은 SSH(Secure SHell)를 통한 무차별대입공격(Brute Force) 등의 계정 탈취를 막기 위해 접근 시도를 제한하는 프로그램이다. Fail2Ban 설치 아래의 명령어로 Fail2Ban을 설치한다. yum install fail2ban Fail2Ban 자동 실행 설정 아래의 명령어로 Fail2Ban이 CentOS가 기동하면 자동으로 실행되도록 설정한다. systemctl enable fail2ban Fail2Ban 실행 아래의 명령어로 Fail2Ban을 실행한다. systemctl start fail2ban Fail2Ban 상태 확인 아래의 명령어로 Fail2Ban이 잘 실행되었는지 확인한다. systemc.. 2022. 8. 3. [CentOS] 아파치 톰캣(Apache Tomcat) 9.0 추가 설치 방법 한 컴퓨터에 여러개의 아파치 톰캣(Apache Tomcat)을 구동해야하는 경우에는 아래와 같이 톰캣을 설치하면 된다. 본 글에서는 기존에 'tomcat' 서비스가 '/home/tomcat/apache-tomcat-9.0.63'에 설치되어 기본 포트로 구동되고 있는 것을 전제로 하여 톰캣 1대를 더 설치하는 것을 안내한다. 아래의 글처럼 기존 톰캣을 설치했다고 가정한다. 2022.02.19 - [분류 전체보기] - [Amazon Linux 2/CentOS 7] 아파치 톰캣(Apache Tomcat) 9.0 설치하는 법 기존 톰캣은 사용자 서비스를 위한 톰캣이고 새 톰캣은 관리자 서비스를 위한 톰캣이기에 새 톰캣의 구분자를 'admin'으로 정했다. 1. 아파치 톰캣 압축해제 아래의 명령어를 입력하여 추가.. 2022. 6. 10. [CentOS] 아파치 톰캣(Apache Tomcat) 포트 8080를 방화벽에서 허용하는법 CentOS에는 firewall 이라는 방화벽을 사용하고 있기 때문에 로컬이 아닌 외부에서 아파치 톰캣(Apache Tomcat)의 기본 포트인 8080으로 접근하려고 하면 접속이 되지 않는다. 아래와 같이 방화벽에서 TCP 8080포트를 허용하는 설정을 수행하면 외부에서도 접근이 가능하다. 1. 방화벽 규칙 목록 확인 아래의 명령어를 입력하여 현재 적용되어 있는 방화벽 규칙 정보를 확인한다. 필자의 경우 8080/TCP 포트가 없는 것을 알 수 있었다. firewall-cmd --list-all 2. 방화벽 허용 포트 추가 아래의 명령어를 입력하여 방화벽에서 허용하는 포트를 추가한다. firewall-cmd --permanent --zone=public --add-port=8080/tcp 3. 방화벽 .. 2022. 6. 10. [CentOS 7/8] HTTPS 서비스를 위해 사설 SSL 인증서 생성하기 HTTPS 등 SSL을 이용한 암호화 통신을 생성하기 위해서는 SSL 인증서가 필요하다. 공인된 SSL 인증서를 쓰는 방법이 가장 좋겠지만 비용이 발생하고 굳이 공인된 SSL이 필요하지 않은 경우 사설(Private) SSL 인증서를 생성하여 사용하는 것이 편리하다. 이 글에서는 CentOS에서 OpenSSL을 이용한 사설 SSL 인증서를 생성하는 법에 대해서 다룬다. 편의를 위해서 아래의 경로에서 작업을 수행한다. 작업 경로: /etc/pki/tls/certs 1. OpenSSL을 설치한다. 아래의 명령어를 입력하여 OpenSSL을 설치한다. yum install openssl openssl version 2. 루트 인증서 키를 생성한다. 아래의 명령어를 입력하여 루트 인증서 키를 생성한다. opens.. 2022. 5. 28. [CentOS] 즉시 재부팅 명령어 CentOS를 즉시 재부팅하는 명령어는 아래와 같다. sudo shutdown -r 대기시간 2022. 3. 16. [CentOS] Crontab을 통해 프로그램 스케줄링 CentOS에서 매일 정해진 시간에 프로그램을 구동하고 싶다면 crontab을 이용하여 프로그램 스케쥴을 설정할 수 있다. 1. 프로그램 스케줄 등록 아래의 명령어를 입력하여 프로그램 스케줄 등록 프로그램을 실행한다. crontab -e 아래의 명령어를 입력하여 프로그램 스케줄을 설정한다. '분 시 일 월 요일 명령어'로 구분해서 입력하면 된다. 모든 조건에 해당하게 설정하려면 '*'를 사용하면 된다. '분'은 0부터 59까지 설정할 수 있으며 '시'는 0부터 23까지 설정할 수 있다. '일'은 1부터 31일까지, '월'은 1부터 12까지, 요일은 0부터 7까지 설정할 수 있다. 0과 7은 일요일이며 1은 월요일, 2는 화요일이다. 2. 프로그램 스케줄 목록 확인 아래의 명령어를 입력하여 등록한 프로그램.. 2022. 3. 5. [Amazon Linux 2/CentOS 7] 아파치 톰캣(Apache Tomcat) 9.0 설치하는 법 아마존 리눅스(Amazon Linux 2)에 아파치 톰캣(Apache Tomcat) 9.0을 설치하는 방법을 소개한다. 톰캣 설치 전에 자바가 설치되어 있지 않다면 아래의 글에서 자바를 설치하도록 하자. 2022.02.16 - [개발/리눅스] - [Amazon Linux 2] 자바(Java) 8 설치하는 법 1. YUM(Yellow dog Updater, Modified)으로 설치가능한 패키지 확인 YUM 명령어를 통해 톰캣을 설치할 수 있으면 간단하겠지만 현재 기준으로는 7.0만 설치가 가능하다. sudo yum list | grep tomcat 2. 톰캣 웹사이트에서 9.0 버전 다운로드 주소 확인 그러므로 톰캣 웹사이트에 가서 9.0 버전 파일의 주소를 확인하고 다운로드한다. 아파치 톰캣 웹사이트 .. 2022. 2. 19. [CentOS 8] 라라벨(Laravel) 8 설치하고 PHP 내장 웹서버에서 실행하는 방법 꽤나 많은 착오가 있었기에 라라벨(Laravel) 8을 CentOS 8에 설치하는 방법을 정리한다. 라라벨을 설치하는 것 까지는 동일한데 설치된 라라벨을 실행하는 웹서버로 여러가지를 사용할 수 있어서 비슷한 내용으로 여러번 포스팅할 것 같다. 본 글에서는 가장 간단한 방법인 PHP 내장 웹서버로 라라벨 8 프로젝트를 실행하는 것을 소개한다. 설치환경은 아래와 같은데 혹시 PHP를 설치하지 않았다면 아래의 '[CentOS 8] PHP 7.4 버전 설치하는 법'를 참고하여 설치하면 된다. 설치환경 : CentOS 8.5.2111, PHP 7.4.19 2021.12.23 - [개발/리눅스] - [CentOS 8] PHP 7.4 버전 설치하는 법 1. PHP-JSON 모듈 설치 아래의 명령어를 입력하여 php-.. 2021. 12. 28. [CentOS 8] PHP 7.4 버전 설치하는 법 라라벨8은 PHP 7.3 이상을 요구하기에 이에 맞춰 PHP 버전을 설치해줄 필요가 있었다. 시행착오가 있었기에 시행착오없이 다음에도 설치할 수 있도록 이 글에 PHP 7.4 버전을 설치하는 방법을 남긴다. 설치환경 : CentOS 8.5.2111 1. 사용가능한 PHP 패키지 목록 확인 및 설치하는 PHP 패키지 변경 사용가능한 PHP 패키지 목록을 아래의 명령어로 확인한다. 아래의 사진을 보면 PHP 7.2가 기본 패키지이고 활성화되어 있는 것을 볼 수 있다. sudo dnf module list php 아래의 명령어를 입력하여 PHP 관련 설정을 초기화한다. sudo dnf module reset php sudo dnf module list php 아래의 명령어를 이용하여 설치하는 PHP 패키지 버.. 2021. 12. 23. [CentOS 7/8] 파일(폴더) 소유주와 소속그룹 변경 파일에 접근하기 위해서는 접근 권한이 있어야 한다. 권한을 부여하는 방법 중 하나는 해당 파일의 소유주와 소속그룹을 변경하는 방법이 있다. 파일 권한 확인 아래의 명령어를 입력하여 파일의 소유주와 소속그룹을 확인한다. ls -al 여기서는 www 폴더의 소유주와 소속그룹을 변경할 것이다. 명령어가 실행된 결과를 보면 소유주와 소속그룹이 나타나 있는데 유저 "root"와 그룹 "root"에 소속되어 있음을 알 수 있다. 파일 소유주 및 그룹 변경 아래의 명령어처럼 입력하여 파일의 소유주와 그룹을 변경한다. chown -R 유저명:그룹명 대상파일(폴더) ls -al 폴더의 소유주와 소속그룹이 apache로 변경된 것을 확인할 수 있다. 아파치 웹서버의 경우 권한이 없으면 파일을 읽고 쓰지 못 하고 이 경우 .. 2021. 11. 25. [CentOS 7] FFMPEG를 설치하자 Xpress Engine에서 GIF 파일을 MP4 파일로 변환하는 기능을 테스트해보고자 FFMPEG를 설치하게 되었다. 설치하는 방법은 아래와 같다. 1. 'epel-release'를 설치한다. 아래의 명령어를 입력하여 'epel-release'를 설치한다. yum -y install epel-release 2. NUX 저장소를 추가한다. 아래의 명령어를 입력하여 NUX 저장소 정보를 추가한다. rpm -Uvh http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-5.el7.nux.noarch.rpm 3. FFMPEG를 설치한다. 아래의 명령어를 입력하여 FFMPEG를 설치한다. yum install ffmpeg ffmpeg-devel.. 2021. 9. 16. [CentOS 7] Openssl을 최신 버전으로 업데이트하기 CentOS 7에서는 Openssl이 yum으로 자동 업데이트 되는 최신버전이 낮다. 나의 경우 1.0.2k였는데 이로 인해 openssl을 참조하는 패키지를 설치할 때 오류가 발생했었다. 본 글에서는 Openssl을 1.1.1k로 컴파일 설치하는 것을 설명한다. 1. 기존 Openssl 1.0.2k 삭제 아래의 명령어를 입력하여 기존 Openssl 1.0.2k를 삭제한다. yum remove openssl 2. Openssl 1.1.1k 다운로드 아래의 명령어를 입력하여 Openssl 1.1.1k를 다운로드 한다. wget https://www.openssl.org/source/openssl-1.1.1k.tar.gz 3. Openssl 1.1.1k 압축해제 아래의 명령어를 입력하여 다운받은 Openss.. 2021. 8. 7. [CentOS 7] SSH 보안 강화를 위해 포트 번호를 수정하자 SSH 보안 강화를 위해서는 포트 번호를 수정하는 것이 필수적이다. 흔한 22번 포트로 SSH를 이용하는 경우 온갖 종류의 공격에 시달리는 불상사가 발생한다. 1. SSH 설정 변경 아래 명령어를 입력하여 SSH 설정을 변경한다. vi /etc/ssh/sshd_config '#Port 22' 라고 주석처리 되어 있는 것을 #을 지우고 포트번호를 22 대신에 다른 숫자를 아래 사진처럼 입력한다. 필자의 경우 테스트용으로 10022로 입력하였다. 2. SELinux 포트 사용 허용 SELinux가 입력한 포트를 허용하도록 아래의 명령어를 입력한다. semanage port -a -t ssh_port_t -p tcp 포트번호 필자의 경우 아래와 같이 입력하였다. semanage port -a -t ssh_po.. 2021. 8. 4. [CentOS 7] tar 명령어로 특정 파일(폴더)를 제외하고 압축하기 최근에 제타위키나 다른 블로그에 있는 "리눅스에서 특정 파일을 제외하고 압축하기" 글을 참고하여 압축을 진행하였는데 특정 파일이나 폴더가 제외되지 않아서 이것저것 삽질하다가 되는 명령어를 찾아서 글을 적게 되었다. 'a'라는 최상위 폴더가 있고 그 하위에 'b'라는 폴더와 'c'라는 폴더, index.php 파일이 있을때 'b'폴더를 제외하고 압축하는 명령어는 다음과 같다. tar -zcvf "a.tar.gz" --exclude "a/b" "a/" 위의 명령어를 입력하면 아래와 같이 로그가 나타난다. 압축된 파일을 확인해보면 아래 사진처럼 'b' 폴더만 제외하고 잘 압축된 것을 알 수 있다. 'tar 명령어로 특정 파일(폴더)를 제외하고 압축하는 명령어'는 아래와 같이 정리할 수 있다. tar -zcvf.. 2021. 5. 9. [CentOS 7] 워드프레스 설치 중 'Permission denied'가 발생하는 경우 워드프레스를 설치 중에 '데이터베이스 연결을 구축하는 중 오류입니다'라는 메시지가 떠서 'wp-config.php'파일을 수동으로 생성하고 디버그 옵션을 활성화시키니 'Permission denied'라는 메시지가 나타났다. 나의 경우는 데이터베이스 서버를 별도로 두고 있었기 때문에 SELinux에서 데이터베이스로 연결을 차단하여 발생하는 문제였다. 1. 아파치 웹서버 네트워크 연결 권환 활성화 아래의 명령어를 입력하여 네트워크 연결 권한을 활성화한다. setsebool httpd_can_network_connect_db=1 2. 워드프레스 설치 진행 잘 적용이 되면 워드프레스 설치화면을 새로고침한다. 아래처럼 워드프레스 설치화면이 나타나면 잘 된 것이다. 2021. 4. 18. 이전 1 2 다음