专栏首页运维监控日志分析利用 Nginx 反向代理搭建本地 yum 服务器

利用 Nginx 反向代理搭建本地 yum 服务器

在政府,医院等单位有网络安全要求,对内外网进行物理隔离,然而内网主机无法访问互联网下载安装包,通过Nginx 反向代理搭建本地yum服务器实现内网主机安装包下载。

Centos 8.2 部署 Nginx Server

系统版本

[root@yum-server ~]# cat  /etc/redhat-release 
CentOS Linux release 8.2.2004 (Core)

配置Nginx 源

 cat nginx.repo 
[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true

[nginx-mainline]
name=nginx mainline repo
baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/
gpgcheck=1
enabled=0
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true

安装 nginx

dnf install nginx

查看nginx软件包信息

nginx 配置文件

[root@yum-server /]# egrep -v "*#|^$" /etc/nginx/conf.d/default.conf 
server {
    listen       1888;
    location /software/ {
        root   /mnt/nginx;
        autoindex on;
        autoindex_exact_size off;
        autoindex_localtime on;
        charset utf-8,gbk,gb2312;
    }
    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   /mnt/nginx;
    }
     location /centos/ {
         proxy_pass http://mirrors.aliyun.com/centos/;
     }
     location /zabbix/ {
         proxy_pass http://mirrors.aliyun.com/zabbix/;
     }
     location = /nginx_status {
        stub_status on;
        access_log /var/log/nginx/status.log;
        allow 127.0.0.1;
        deny all;
     }
}

nginx 发布文件目录

autoindex on;  # 开启目录文件列表
autoindex_exact_size on;  # 显示出文件的确切大小,单位是bytes
autoindex_localtime on;  # 显示的文件时间为文件的服务器时间
charset utf-8,gbk,gb2312;  # 避免中文乱码


防火墙配置


firewall-cmd    --add-port=1888/tcp --permanent
firewall-cmd    --reload

目录访问测试

内网主机repo文件

Centos-7.repo

 cat Centos-7.repo 
[base]
name=CentOS-$releasever - Base - 172.168.1.176:1888
baseurl=http://172.168.1.176:1888/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=http://172.168.1.176:1888/centos/RPM-GPG-KEY-CentOS-7

#released updates 
[updates]
name=CentOS-$releasever - Updates - 172.168.1.176:1888
baseurl=http://172.168.1.176:1888/centos/$releasever/updates/$basearch/
gpgcheck=1
gpgkey=http://172.168.1.176:1888/centos/RPM-GPG-KEY-CentOS-7

#additional packages that may be useful
[extras]
name=CentOS-$releasever - Extras - 172.168.1.176:1888
baseurl=http://172.168.1.176:1888/centos/$releasever/extras/$basearch/
gpgcheck=1
gpgkey=http://172.168.1.176:1888/centos/RPM-GPG-KEY-CentOS-7

#additional packages that extend functionality of existing packages
[centosplus]
name=CentOS-$releasever - Plus - 172.168.1.176:1888
baseurl=http://172.168.1.176:1888/centos/$releasever/centosplus/$basearch/
gpgcheck=1
enabled=0
gpgkey=http://172.168.1.176:1888/centos/RPM-GPG-KEY-CentOS-7

#contrib - packages by Centos Users
[contrib]
name=CentOS-$releasever - Contrib - 172.168.1.176:1888
baseurl=http://172.168.1.176:1888/centos/$releasever/contrib/$basearch/
gpgcheck=1
enabled=0
gpgkey=http://172.168.1.176:1888/centos/RPM-GPG-KEY-CentOS-7

zabbix.repo

cat zabbix.repo 
[zabbix]
name=Zabbix Official Repository - $basearch
baseurl=http://172.168.1.176:1888/zabbix/zabbix/4.2/rhel/7/$basearch/
enabled=1
gpgcheck=1
gpgkey=http://172.168.1.176:1888/zabbix/RPM-GPG-KEY-ZABBIX-A14FE591

[zabbix-non-supported]
name=Zabbix Official Repository non-supported - $basearch 
baseurl=http://172.168.1.176:1888/zabbix/non-supported/rhel/7/$basearch/
enabled=1
gpgkey=http://172.168.1.176:1888/zabbix/RPM-GPG-KEY-ZABBIX
gpgcheck=1

清除缓存

yum clean all

生成缓存

yum makecache

查看rpm

yum list 

yum 测试

本文分享自微信公众号 - 开源搬运工宋师傅(gh_9e345a3a1074),作者:songhp

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2020-10-23

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • ELK 集群部署

    Elasticsearch 是一个分布式、高扩展、高实时的搜索与数据分析引擎。它能很方便的使大量数据具有搜索、分析和探索的能力。充分利用Elasticsearc...

    Kevin song
  • Grafana Install&Upgrade (一)

    Grafana 是一款采用 go 语言编写的开源应用,主要用于大规模指标数据的可视化展现,Grafana支持许多不同的数据源。每个数据源都有一个特定的...

    Kevin song
  • Grafana -- Variables 变量使用(二)

    Grafana Variables 变量提供了用户和面板交互,并动态刷新面板的功能。Grafana 利用 Variables变量配置可实现不同主机的图表数据快速...

    Kevin song
  • angularJS学习之路(二)---模块

    wust小吴
  • python如何安装下载后的模块

    使用第三方模块之前,需要先下载并安装该模块,然后就能像使用标准模块和自定义模块那样导入并使用了。因此,本节主要讲解如何下载并安装第三方模块。

    砸漏
  • 重磅长文|提高深度学习性能的四种方式

    大数据文摘
  • 光模块购买该如何选择?

    经常买光模块的人都知道,现在市场上生产光模块技术门槛越来越低,市面上各种光模块愈来愈多,如原装的,假原装的,兼容的,二手的。这些模块之间的兼容性也影响了使用者网...

    晟科通信
  • 如何有效使用Mysql的Query Cache

    须要根据Query Cache失效机制来判断哪些表适合使用Query哪些表不适合。 由于Query Cache的失效主要是因为Query所依赖的Table数据发...

    dys
  • CAdvisor + InfluxDB + Grafana搭建Docker容器监控系统

    利用docker compose组合应用并利用scale可以快速对容器进行扩充,而docker compose启动的服务容器都在同一台宿主机上,对于一个宿主机上...

    CodingDiray
  • Prometheus+grafana搭建jenkins监控

    为了便于监控Jenkins搭建后的执行情况呢,我们搭建一个完整的监控体系,使用的Prometheus监控报警 ,展示用的是grafana。

    用户6367961

扫码关注云+社区

领取腾讯云代金券