m1ndy5's coding blog

리눅스 소프트웨어 관리 & 로깅 본문

클라우드 with AWS/Linux

리눅스 소프트웨어 관리 & 로깅

정민됴 2023. 3. 3. 22:53

리눅스에서 패키지를 install하려면 yum(amazon linux, centos, redhat) 또는 apt(ubuntu)를 사용해 간단하게 install을 할 수 있다.
그렇다면 install할 소프트웨어 패키지는 어디서 가져오는 것일까?!

리포지토리

  • install 할 소프트웨어 패키지가 이미 저장되어 있는 공간
  • 온라인 리포지토리, 로컬 리포지토리가 있는데 온라인 리포지토리는 반드시 인터넷에 연결되어있어야한다.
  • 로컬 리포지토리는 내부 서버에 위치해 있다.

    yum 패키지 관리자

  • yum <옵션> <명령어> <패키지 이름>
  • ex) yum -y install -> 설치
  • ex) yum remove -> 제거
  • ex) yum list installed | grep -> yum으로 설치한 pn보기

    소스 코드에서 소프트웨어 설치하기

    wget

  • 재귀 다운로드 가능
  • HTTP, HTTPS, FTP 프로토콜 지원

    curl

  • 단일 리소스만 다운로드
  • wget보다 더 많은 프로토콜 및 플랫폼 지원

    yum의 장점??

  • rpm으로 소프트웨어를 다운받을 시에 그 소프트웨어를 사용할 때 필요한 다른 소프트웨어들도 수동으로 다운받아줘야함 (의존성 문제 발생)
  • yum을 사용하면 의존성 문제를 해결해줌
  • 하지만 리포지토리에 없다면? 결국 rpm으로 다운받아줘야하긴한다ㅎㅎ

    로깅

  • 어떤 소프트웨어가 실행될 때 발생하는 이벤트를 추적하는 수단
  • 로그 파일은 보통 /var/log에 저장된다
  • 어떤 이벤트가 발생해서 어떤 문제가 생겼는지 확인하고 해결할 수 있게 도와준다
  • 로그가 많이 쌓이면 용량을 차지함
  • 레벨 5까지는 정상 범위로 봄
  • 숫자가 작아질 수록 emergency한 로그

    lastlog

  • 시스템에 대한 최근 로그인 정보를 얻을 수 있음
  • 특정 사용자에 대한 로그인 정보 얻을 수 있음

    이외의 지식

    방화벽은 2가지 종류가 있음 1. 네트워크 방화벽 2. OS 방화벽
    ec2 os 방화벽은 기본적으로 비활성화가 되어있음
    원래는 시스템을 설치하면 os 방화벽에서 그 시스템을 허용을 해주어야함
    centos 기준 firewall-cmd --add-service=<서비스 이름> --permanet 를 하면 서비스한테 방화벽 허용
    정리하면 1. 패키지 설치 2. 서비스 구동 3. 방화벽 허용
    aws cli을 사용할 때 aws_access_key_id와 aws_secret_access_key가 필요 이거 해킹당하면 개망함!!!
    jwt_token처럼 aws_session_token 으로 일시적인 권한 부여 가능
    aws_session_token은 aws STS에서 발급해줌