프로젝트를 수행하다보면 웹과 차단된 폐쇄망 환경에서 구성하는 경우가 있다.
웹 레파지토리와 격리되어있기 때문에 필요한 라이브러리와 서비스를 사용하려면 프로젝트에 사용할 라이브러리와 서비스를 구성해서 가지고 들어가야한다.
즉 환경 구성에 필요한 서비스와 라이브러리를 가지고 들어가는 행위이다.
폐쇄망을 구축하는 이유는 보안 때문이다.
해커들의 진입시도를 원천적으로 봉쇄하기 위해.
YUM(Yellowdog Updator Modified)란?
레드햇 계열에서 사용되는 RPM 패키지를 관리하는 도구이다.
RPM(Redhat Package Manager)란?
RPM은 레드햇 계열에서 사용되는 패키지.
YUM은 크게 패키지관련 설치, 제거, 저장소 업데이트, 원복 등의 작업을 할 때 많이 사용한다.
하지만 RHEL 8 버전 이상에는 YUM 대신 DNF 명령어를 사용한다.
yum clean all
yum repolist ('/etc/yum.repos.d' 경로에 있는 '~~.repo 확장자 파일을 읽어 repo에 저장)
yum install [설치 할 패키지 이름] (패키지 설치)
YUM Repository 설정 경로는 /etc/yum.repo.d 입니다.
해당 경로에 .repo 확장자를 가진 파일을 만들어준다.
RHEL의 경우 Subscription-manager 명령으로 Repo를 활성화 시켜줘야 Repo 파일 안에 내용이 채워진다.
REHL의 경우 Subscription-manager 명령을 통해 해당 Repo를 Enable 시켜줘야 Repo파일안에 내용이 채워진다.
subscription-manager register --username=아이디@메일주소 --password='비밀번호'
subscription-manager repos --enable=rhel-8-for-x86_64-appstream-rpms --enable=rhel-8-for-x86_64-baseos-rpms --enable=rhocp-4.10-for-rh
yum install yum-utils createrepo_c
mkdir -p /data/httpd/repo
reposync -p /data/httpd/repo --downloadcomps --download-metadata --repoid=rhel-8-for-x86_64-baseos-rpms
reposync -p /data/httpd/repo --downloadcomps --download-metadata --repoid=rhel-8-for-x86_64-appstream-rpms
싱크 작업이 순조롭게 진행 중.
yum install -y httpd
sudo vim /etc/httpd/conf/httpd.conf
# Listen 80
Listen 81
#DocumentRoot "/var/www/html"
DocumentRoot "/data/httpd"
<Directory "/var/www/html">
<Directory "/data/httpd">
systemctl enable --now httpd
81번 포트 개방, 리로드, 확인까지
sudo firewall-cmd --add-port=81/tcp --permanent
sudo firewall-cmd --reload
sudo firewall-cmd --list-ports
sudo firewall-cmd --list-services
chcon -R -t httpd_sys_content_t /data/httpd
ls -Lz /data/httpd
semange fcontext -l | grep httpd
curl http://localhost:81/repo/rhel-8-for-x86_64-appstream-rpms/