본문 바로가기
컴퓨터 활용(한글, 오피스 등)/50_2.운영체제_리눅스

[CentOS 7.8] local yum repository 구성 (폐쇄망x, 인터넷x)

by 3604 2023. 10. 10.
728x90

출처: [CentOS 7.8] local yum repository 구성 (폐쇄망x, 인터넷x) (tistory.com)

목차

1.System Structure
2. Virtualbox 가상 서버 스펙 확인
3. CentOS 버전 확인
4. Network 구성(폐쇄망, 인터넷x)
5. Local yum repo 구성

 

내용

 

 

| System Structure

폐쇄망에 인터넷 사용이 안되고 Local YUM Repository를 구현해보았습니다.

 

 

 

| Virtualbox 가상 서버 스펙

HDD 크기는 60GB, 메모리는 4086MB로 했습니다.

설치 예정 : JAVA, DB(Mysql 5.7), WAS(Tomcat), WEB(Apache), SSL 등

 

저번에 HDD 크기를 20GB로 설정했는데 Local Yum Repo 하는 중에 아래와 같이 공간이 부족하다는 에러가 나서 이번에 크게 60GB로 했습니다.

 

 

 

 CentOS 버전 확인

Vitualbox, CentOS 7.8.

[magicfido@localhost logs]$ cat /etc/redhat-release
CentOS Linux release 7.8.2003 (Core)

  CentOS-7-x86_64-DVD-2003

 

 

 

 Network 구성(폐쇄망, 인터넷x)

폐쇄망에 인터넷 안되는 것을 구현하기 위하여 호스트 전용 어댑터만 선택하였습니다.

vi /etc/sysconfig/network-scripts/ifcfg-enp0s3
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=none
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=enp0s3
UUID=4a30ca4b-a634-4bc1-a698-da42e1d3daf2
DEVICE=enp0s3
ONBOOT=yes
IPV6_PRIVACY=no
IPADDR=192.168.56.101
PREFIX=24
GATEWAY=192.168.56.1
DNS1=8.8.8.8
 
사실 폐쇄망인 경우에는 DNS 설정을 안해줘도 무방하지만 해줬다.

Network 설정을 하고 난 후에는 재시작을 반드시 해준다.

systemctl restart network(CentOS7)
service network restart(CentOS6)

 

ifconfig ip 주소를 보면 잘 설정된 것을 확인할 수 있다.

폐쇄망을 구현했기 때문에 yum repolist 시 당연히 아래와 같이 에러가 뜬다.

Could not resolve host: mirrorlist.centos.org; 알 수 없는 오류

 

 

 

본격적으로 Local yum repo를 구성을 시작!

| Local youm repo

1) rm -rf /etc/yum.repos.d/CentOS-*

rm -rf /etc/yum.repos.d/CentOS-*

외부 통신을 사용하지 않을것이기 때문에 CentOS-7이라는 이름을 가진 Repo 파일을 전부 삭제합니다.

 

2) CentOS-7-x86_64-DVD-2003 업로드 (나는 Filezilla를 이용)

다들 본인의 CentOS를 설치했던 iso 파일을 업로드 해줍니다.

iso를 가져오는 이유는 iso 파일안의 디렉토리에 서버를 운영할 때 필요한 기본적인 rpm들이 모여있기 때문입니다.

 

3) iso 파일 마운트

[root@localhost ~]# cd /root/
[root@localhost ~]# mkdir tmp     --마운트할 임시 디렉토리 생성
[root@localhost ~]# mkdir repo    --repo 안에 구성될 패키지들이 들어갈 파일들
[root@localhost ~]# ls
CentOS-7-x86_64-DVD-2003.iso  initial-setup-ks.cfg
[root@localhost ~]# mount -o loop CentOS-7-x86_64-DVD-2003.iso /root/tmp
mount: /dev/loop0 is write-protected, mounting read-only

mount 라는 명령어 혹은 ll /root/tmp로 마운트가 잘 된 것을 확인할 수 있습니다.

 

4) 마운트한 파일들 복사

cp -rfvp /root/tmp /root/repo

5) mount 해지

[root@localhost tmp]# umount /root/tmp
[root@localhost tmp]# ll /root/tmp

 

6) repo file 작성

vi /etc/yum.repos.d/local.repo
[local]                                                    
name=CentOS-7.8-Basic   --이름은 마음대로
baseurl=file:///root/repo/tmp       --package와 repodata가 있는 위치
enabled=1         --repo 활성화 할경우 1
gpgcheck=0       --gpg 서명 사용 안할경우 0

7) repolist 불러오기

[root@localhost tmp]# yum repolist

 

8) yum 사용하기(테스트)

위와 같이 Local yum repository를 구성했으면 Local에 저장되어있는 yum을 사용할 수 있게 됩니다!

아래와 같이 예시로 httpd와 Openssl을 다운받아도 잘 되는것을 확인할 수 있습니다.

 

참고로 CentOS7.8에 선택한 소프트웨어는 아래와 같습니다.

백업 클라이언트, 레거시 X Window 시스템 호환성, 호환성 라이브러리, 개발용 툴, 보안 툴

[root@localhost script]# yum -y install httpd

yum -y install openssl-devel

참고: https://lilo.tistory.com/26

 

☞ 더 많은 인프라 구축 방법(폐쇄망)을 보고 싶으면 아래 링크를 클릭해주세요.

2021.12.13 - [Linux] - CentOS 7.8 설치 및 putty 접속 (원하는 버전 설치 링크 포함)

2021.12.14 - [Linux] - [CentOS 7.8] local yum repository 구성 (폐쇄망x, 인터넷x)

2021.12.17 - [DATABASE/DB install & upgrade] - CentOS7 Mysql5.7 install (폐쇄망, internet X)

2021.12.22 - [WEB|WAS] - [CentOS7] Apache 설치 (폐쇄망, 인터넷X, Local yum repo)

2021.12.23 - [WEB|WAS] - Apache - Tomcat 연동 (물리적 분리 - 외부망 : WEB, 내부망 : WAS)

2021.12.24 - [Security] - [CentOS7] SSL 설치 및 SSL 적용

2022.01.27 - [WEB|WAS] - Apache, Tomcat tuning

2022.03.16 - [DATABASE] - Mysql, MariaDB PASSWORD Lifetime 설정(만료기간)

728x90