写在前面


  • 对于可以连接外网的服务器装软件,只要配置yum源就可以随便使用了
  • 但是对于内网来说,不能连接外网,一般情况下,管控平台只有上传的权限。尤其一些涉密的岗位,比如电力,电信,军工之类的。
  • 今天和小伙伴聊聊内网服务器如何装软件的问题。

可事实是,唯恐暴露才华不足的卑怯的畏惧,和厌恶钻研刻苦的惰怠,就是我的全部了。 ——中岛敦《山月记》


方法一、直接下载安装包rpm方式

找一台有网机器安装 Nginx需要的软件包(尽量同版本的操作系统,最小化安装)

┌──[root@liruilongs.github.io]-[~]
└─$ yum -y install nginx --downloadonly --downloaddir=/root/soft  #把Nginx需要的软件包下载到 /root/soft 下

检查一下

┌──[root@liruilongs.github.io]-[~]
└─$ cd /root/soft/
┌──[root@liruilongs.github.io]-[~/soft]
└─$ ls
nginx-1.20.1-9.el7.x86_64.rpm  nginx-filesystem-1.20.1-9.el7.noarch.rpm
┌──[root@liruilongs.github.io]-[~/soft]
└─$

把整个文件夹打包拷贝到内网环境,然后执行 rpm -ivh /xx/* 命令安装所有依赖包

┌──[root@liruilongs.github.io]-[~]
└─$ rpm -ivh /root/soft/*
warning: /root/soft/nginx-1.20.1-9.el7.x86_64.rpm: Header V4 RSA/SHA256 Signature, key ID 352c64e5: NOKEY
Preparing...                          ################################# [100%]
Updating / installing...1:nginx-filesystem-1:1.20.1-9.el7  ################################# [ 50%]2:nginx-1:1.20.1-9.el7             ################################# [100%]
┌──[root@liruilongs.github.io]-[~]
└─$ systemctl start nginx
┌──[root@liruilongs.github.io]-[~]
└─$ curl http://127.0.0.1:80
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head><title>Welcome to CentOS</title><style rel="stylesheet" type="text/css">

如果内网环境有 createrepo命令的话,把下载的东西拷贝过去,可以自定义yum源,通过yum的方式安装


┌──[root@liruilongs.github.io]-[~]
└─$ createrepo  -v /root/soft/
Spawning worker 0 with 1 pkgs
Spawning worker 1 with 1 pkgs
Worker 0: reading nginx-1.20.1-9.el7.x86_64.rpm
Worker 1: reading nginx-filesystem-1.20.1-9.el7.noarch.rpm
Workers Finished
Saving Primary metadata
Saving file lists metadata
Saving other metadata
Generating sqlite DBs
Starting other db creation: Tue Nov  2 02:41:26 2021▽
[nginx]
Ending other db creation: Tue Nov  2 02:41:26 2021
Starting filelists db creation: Tue Nov  2 02:41:26 2021
Ending filelists db creation: Tue Nov  2 02:41:26 2021
Starting primary db creation: Tue Nov  2 02:41:26 2021
Ending primary db creation: Tue Nov  2 02:41:26 2021
Sqlite DBs complete
┌──[root@liruilongs.github.io]-[~]
└─$ cd /root/soft/
┌──[root@liruilongs.github.io]-[~/soft]
└─$ ls
nginx-1.20.1-9.el7.x86_64.rpm  nginx-filesystem-1.20.1-9.el7.noarch.rpm  repodata
┌──[root@liruilongs.github.io]-[~/soft]
└─$ cd repodata/;ls
2a85d8bedd0e987fe0c492840e8d9e7194f1da556db1282b6b731cc0c6978ded-primary.sqlite.bz2
8fe41a398aa040ec1b69ea2d54fae6c91dda6964a51a737b9becfa05bb7504f4-other.sqlite.bz2
a8c56a126109fae47bdd4dfa6e33e8575bd9e660fc6826f6623fb8d08f1ce293-filelists.xml.gz
b5c57aa7aecbcfe4826a9e4c4dcb3c05193b0ed64e6858e4e755bc785003a009-primary.xml.gz
dbc9a1a851b14aeb972e05dac2b17a896848993ebbd494a01b566c75ba5d0ef8-other.xml.gz
ed1fa31928cf100748169e2b5ff1cb354b1c45a0b860f805830eb679872d38fd-filelists.sqlite.bz2
repomd.xml
┌──[root@liruilongs.github.io]-[~/soft/repodata]
└─$ cd ..;createrepo --update  ./
Saving Primary metadata
Saving file lists metadata
Saving other metadata
Generating sqlite DBs
Sqlite DBs complete
┌──[root@liruilongs.github.io]-[~/soft]
└─$ vim nginx.repo
┌──[root@liruilongs.github.io]-[~/soft]
└─$ cat nginx
cat: nginx: No such file or directory
┌──[root@liruilongs.github.io]-[~/soft]
└─$ cat nginx.repo
[nginx]
name=nginx
baseurl=file://root/soft
enabled=1
gpgcheck=0
priority=1
┌──[root@liruilongs.github.io]-[~/soft]
└─$

方法二、通过IOS挂载配置

iso挂载的方式,iso挂载方式这里可以使用不同的协议,但是内网,所以我们只能用file协议,前提将有包的IOS镜像拷贝到要装包的机器。当然,如果这个机器所在内网的其他机器有相关的包,可以使用httpftp协议。

挂载本地镜像文件。正常IOS文件一般会放到dev/ 文件夹下,需要把相关的文件挂载到指定的目录下,

[root@liruilongs.github.io ~]# mkdir /centos7 #创建挂载点
[root@liruilongs.github.io yum.repos.d]# mount /dev/CentOS-7-x86_64-DVD-1810.iso /centos7/ #挂载镜像光盘
[root@liruilongs.github.io yum.repos.d]# ls /centos7/ #验证挂载结果

将yum的原本配置备份

[root@liruilongs.github.io ~]# cd /etc/yum.repos.d/ #进入yum的repo文件目录下
[root@liruilongs.github.io yum.repos.d]# mkdir oldrepo #创建目录
[root@liruilongs.github.io yum.repos.d]# ls
[root@liruilongs.github.io yum.repos.d]# mv CentOS-* oldrepo/ #将所有的.repo的文件移动到oldrepo目录下
[root@liruilongs.github.io yum.repos.d]# ls

第三步:配置本地yum源

[root@liruilongs.github.io ~]# vim /etc/yum.repos.d/centos7.repo #创建一个新的repo文件
[centos] #自定义名字,具有唯一性,随便定义
name=Centos7 #对软件源的描述信息
baseurl=file:///centos7 #指定yum服务端的访问路径
gpgcheck=0 # 0为不检测,1为检测,要更改为0,检测只是检测红帽官方打包的rpm包
enabled=1 #是否立即生效,1为是
[root@liruilongs.github.io ~]# yum clean all #清空客户端下的yum清单列表
[root@liruilongs.github.io ~]# yum repolist #重新加载服务端的清单列表

这样我们通过iso装包就配置好啦。之后就可以通过yum使用了

关于 Linux中内网安装软件的一些笔记相关推荐

  1. ubuntu内网安装软件

    在生产环境中很少有连接外网的服务器,这里以ansible内网安装为例来介绍. 1.安装ansible(有外网) 1.ansible的安装包存在于ansible的PPA中,如果要下载PPA(个人软件包存 ...

  2. Java实现Http代理服务器通过http代理进行内网安装yum软件

    Java实现Http代理服务器&通过http代理进行内网安装yum软件 1.Http代理服务器简介 2.Http代理服务器Java实现 2.1 Java源码 2.2 代码分析说明 3.通过ht ...

  3. linux 内网yum,Linux下 内网环境 通过ISO yum安装依赖

    Linux下 内网环境 通过ISO yum安装依赖 上传系统系统镜像 创建镜像挂载点 mkdir iso 将系统镜像挂载到 /iso 挂载点上 [root@localhost home]# mount ...

  4. 内网穿透软件对比——cpolar : 花生壳(中)

    系列文章 内网穿透软件对比--cpolar : 花生壳(上) 内网穿透软件对比--cpolar : 花生壳(中) 内网穿透软件对比--cpolar : 花生壳(下) 文章目录 系列文章 1. 前言 2 ...

  5. CISCO内网客户端软件anyconnect-win安装下载

    ❤️CISCO内网客户端软件anyconnect-win安装下载 功能作用:用来连接内网

  6. 内网安装视频会议软件有几个步骤?

    视频会议软件的部署环境一种是在公网,一种是私网.而类似zoom,腾讯,钉钉的视频会议软件是在公网使用的云视频会议软件,在内网安装视频会议软件可以选择rhub连通宝. 在内网安装的视频会议软件保密性强, ...

  7. 内网安装管家婆软件如何实现外网访问?内网穿透的几种方案教程

    管家婆软件从网络架构上分两种版本:web(浏览器http端口)访问的版本和客户端(211固定端口+sqlserver数据库)访问的版本.公司库管经常用仓库登录管家婆,一旦需要在公司外部登陆访问管家婆客 ...

  8. linux用rpm安装nginx,Linux内网安装nginx(rpm包安装方式)

    然后,将下载好的rpm包放入服务器内,地址随意,进入对应目录,执行Linux命令: ( rpm -ivh rpm包的名字) rpm -ivh nginx-1.18.0-1.el7.ngx.x86_64 ...

  9. ddns与内网穿透软件

    ddns与内网穿透软件 ZeroTier(推荐) 注册服务端 注册客户端 其他一些命令 moon服务器 花生壳 Frp 参考 ZeroTier(推荐) ZeroTier属于一个点对点的虚拟网络(P2P ...

  10. 内网穿透软件对比——cpolar : 网云穿(上)

    系列文章 内网穿透软件对比--cpolar : 网云穿(上) 内网穿透软件对比--cpolar : 网云穿(中) 内网穿透软件对比--cpolar : 网云穿(下) 文章目录 系列文章 1. 前言 2 ...

最新文章

  1. java 修改 request参数值,如何在HttpServletRequest中设置参数?
  2. C++11中的bool变量不进行初始化,结果随机,可能是false也可能是true,所以一定要初始化
  3. 关于Lambda和匿名内部类
  4. Angular介绍、安装Angular Cli、创建Angular项目入门教程
  5. numpy的增删改查操作
  6. 【排序算法】堆排序——常规方法
  7. TCP/IP学习笔记12-- IP协议基础
  8. python拉格朗日插值法_Python 实现拉格朗日插值
  9. 苹果4.3该如何避免?机审人审怎么过?
  10. JavaScript 学习笔记(第三天)
  11. 电脑出现All boot options are trled.黑屏不能开机解决方法
  12. 中国移动首次明确的LTE终端频率要求
  13. 登录网页无法连接服务器,"无法连接到服务器,用户xxx登陆失败" 解决办法
  14. HANA学习季(一) :HANA的基本概念
  15. 那些不得不说的性能优化套路
  16. 充电桩设计之电川 充电板的驱动控制程序
  17. 小程序--搜索页面(有搜索历史记录)
  18. mx4 pro 刷 原生 android,魅族MX4 Pro怎么刷机?通用刷机和固件升级教程
  19. 跟领导谈话需注意什么_设计师必须注意的10个有趣的谈话
  20. 写给买过单反相机和将要买单反的童鞋们~~(我本想查单反的入门教程的,看到这帖子后受益匪浅啊)【转帖】...

热门文章

  1. 我的服务器开发之路-服务器SSH默认端口22和ftp默认端口21修改
  2. 未将引用设置到对象的实例
  3. 如何使用python将数据写入txt文件
  4. 大学计算机应用经典案例,大学计算机基础经典实验案例集
  5. 如何查找论文是否被SCI,EI检索
  6. 如何区分网线是几类的_如何区分家里的网线是超五类还是超六类的呢?
  7. php抽奖简单源码,php转盘抽奖 完整例子源码(含模拟数据)
  8. Android启动模式分析
  9. 自我介绍及阅读与思考及未来的期望
  10. 计算机音乐对应的数字,音乐和数字之间的关系