如何为CentOS 7配置静态IP地址的两种方法

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何为CentOS 7配置静态IP地址的两种方法相关的知识,希望对你有一定的参考价值。

两种方法可以更改:

一、netconfig命令

输入netconfig后将会出现下图所示,单击yes按钮。




进行相关配置后ok退出。

二、编辑网卡配置文件

1、vi  /etc/sysconfig/network-scripts/ifcfg-eth0

2、配置完以后重启动服务,ip地址就配置好了。

注意:此方法配置的ip地址后计算机从新启动仍然有效。

参考技术A 网络管理器(Network Manager)是一个动态网络的控制器与配置系统,它用于当网络设备可用时保持设备和连接开启并激活。默认情况下,CentOS/RHEL 7安装有网络管理器,并处于启用状态。
使用下面的命令来验证网络管理器服务的状态:
$ systemctl status NetworkManager.service

运行以下命令来检查受网络管理器管理的网络接口:
$ nmcli dev status

如果某个接口的nmcli的输出结果是“已连接”(如本例中的enp0s3),这就是说该接口受网络管理器管理。你可以轻易地为某个特定接口禁用网络管理器,以便你可以自己为它配置一个静态IP地址。
下面将介绍在CentOS 7上为网络接口配置静态IP地址的两种方式,在例子中我们将对名为enp0s3的网络接口进行配置。
不使用网络管理配置静态IP地址

进入/etc/sysconfig/network-scripts目录,找到该接口的配置文件(ifcfg-enp0s3)。如果没有,请创建一个。
打开配置文件并编辑以下变量:
在上图中,“NM_CONTROLLED=no”表示该接口将通过该配置文件进行设置,而不是通过网络管理器进行管理。“ONBOOT=yes”告诉我们,系统将在启动时开启该接口。
保存修改并使用以下命令来重启网络服务
# systemctl restart network.service

现在验证接口是否配置正确:
# ip add

使用网络管理器配置静态IP地址

如果你想要使用网络管理器来管理该接口,你可以使用nmtui(网络管理器文本用户界面),它提供了在终端环境中配置配置网络管理器的方式。
在使用nmtui之前,首先要在/etc/sysconfig/network-scripts/ifcfg-enp0s3中设置“NM_CONTROLLED=yes”。
现在,请按以下方式安装nmtui。
# yum install NetworkManager-tui

然后继续去编辑enp0s3接口的网络管理器配置:
# nmtui edit enp0s3

在屏幕中,我们可以手动输入与/etc/sysconfig/network-scripts/ifcfg-enp0s3中所包含的内容相同的信息。
使用箭头键在屏幕中导航,按回车选择值列表中的内容(或填入想要的内容),最后点击屏幕底部右侧的确定按钮。
最后,重启网络服务。# systemctl restart network.service
参考技术B 在红帽RHEL6系统中网卡配置文件的前缀为"eth",第1块即为"eth0",第2块即为"eth1"并依此类推,但在红帽RHEL7系统中的网卡配置文件前缀则以"ifcfg-eno"开始的。
第1步:首先要切换到"/etc/sysconfig/network-scripts"目录中(该目录存放着网卡的配置文件)。

第2步:使用vim编辑器修改网卡文件"ifcfg-eno13712",逐项写入配置参数并保存退出,因每台电脑的硬件及架构情况都是不一样的,网卡默认名称可使用ifconfig命令自行确认。
设备类型:TYPE=Ethernet
地址分配模式:BOOTPROTO=static
网卡名称:NAME=eno13712
是否启动:ONBOOT=yes
IP地址:IPADDR=192.168.1.11
子网掩码:NETMASK=255.255.255.0
网关地址:GATEWAY=192.168.1.1
DNS地址:DNS1=192.168.1.1
网站地址:linuxprobe/com
第3步:重启网卡设备并测试网络是否联通:systemctl restart network
希望能够帮助您!本回答被提问者采纳

如何为 Identity Server 4 生成和添加签名密钥?

【中文标题】如何为 Identity Server 4 生成和添加签名密钥?【英文标题】:How To Generate and Add a Signing Key for Identity Server 4? 【发布时间】:2020-07-01 11:07:24 【问题描述】:

我在 CentOS 上托管我的 ASP.NET Core Web 应用程序。我需要为 Identity Server 设置生产签名密钥。此密钥用于 JWT 令牌签名和验证。

文件:tempkey.rsa


  "KeyId": "vbWO1QORQrwci26Cd7q59A",
  "Parameters": 
    "D": "IqOOHtuw10jHnCnrZbzh3TwA40q7KWuby22wl/ooRXn//XJktc8Hwe0JvxD8tvHtk4wfhzkUwiH+zY/cub+kI3oklD9diiWOjFIJcu+k9U9ocXg0ipvrk87rMM3x/u4im9HTYbkNU9Ru6pBdvb8ChAVWR5qOoSVDiFL1Yr8K+sSLix6nm6p0ax2CSf1sJEtNHDRrgI6mSOei97CpiuXpFX/JkwimqvbskcdQY91cgQ9poTWyuolFtFnOx0wSNEG4x1UWVsw85st5JHcU7pN0v1hhQZRcNYBfuZ7uHTFlhbkBip1D191pytSid8C4XTNiLbVPaY1pAqJhDLy6e7bi5Q==",
    "DP": "BVqSzlGs02ZFN9/xPug8VDZCxsReFmtd2xwhO8J7/JzGxxbbe9oq78q2blxDH6nY/I2M2DsKbm2BK2xE9ZHTkSuFHYw39OFHH3UZJNw8d3LMq8d2yZlzBTN21uKzVOwYd0zIchfvTIM3laOxW9j7sObOj8Nd/Pawkm2reFsmIzU=",
    "DQ": "BvpYLvxVPw7qrCtr6unhawV8ox4obq8WZEK/nu6hqBYxydW+zUJWv0fSYgygP9PYykGuTI+nYxCvm9rqw27uLoGsiEFT23Smzz5kDm0h+OzjJc5Wc+YL9wAI+O/xJ/Bi7uyKu+0eTMvG2Y5WpfYhJv2JZIWQUODHZ9SLDe8X3e8=",
    "Exponent": "AQAB",
    "InverseQ": "MKg8Pba2dyIsL3pumcR9e24fOZ8NIizJkTsDZoLkU2ccB6fFKfUioglHHL8ZEPKWT3ByJphJZv9JZIxgtCSLhFC1XcNLsWejPvEb6IMX9L1FIM7Ibo05L3tdZGTFsXwU9/3j2gk/ZFPKrnJXV9+6TToEAmxH7HIIPJONsfDBGho=",
    "Modulus": "nVpQtZgMHnpz9ZfnJs/sTkA8vqPldPe8IL9JQttcrE3RZKLKd+mrcleLqzrRtBCePHfLZMgoX19ShZeq2t4Ea6Sm+5SkV0l0862OD+ILnzFFqaqvQlra7UnRL2FXwxpp09LqLxoDq8fDXfHGOdMumP2TB6mozFgGWGBY9zlc9ctrDoSvfjsagcsLlp2LhCPAg4yCzyV/+4ADnls7NNnAc2Ba1MGFT5OJpfDggL+FXTMlHwTW8LJ9GsT4FAi5Z7dygLOnWc7zpl+Y9sSUtSNOAQlU+oX9VJQD6ZFbosM8nSHcjvCivpxAzOKn+5I6EQXis+pwne9VVjT27iv/NubG5Q==",
    "P": "z53dmREjm+MCchaWsvhPcWVWf7gGezix6KuGzMHa5vhVafrvv2rCy9aHSDWLpxPKb999/2Bw7ExI2b4DTuNkIJTLv/mQEl1PyhtbfLmclPHHbzTM9gnJ3nHrJhpj60/jbinFDkvzV++nqnTKToSgP2TNy5POXWn3FKNHgIxYNwM=",
    "Q": "wgXGJTOdv4B1owmtDmxucssRjWQzW0qEOCr/bBjT32ZofRI1HLBjOwnY4qzxmpD00voWLuphZSBUxtF47IZrrr33vNy2jedD3xy00fgBhuG0exxgQagCSTR0+QoccY8jOWYq2B+FsV9umpOEpgtqq67Moe/MkMp8Gg+8fqiLkfc="
  

现在,我需要为 ASP.NET Core 应用程序生成一个生产密钥。我正在将 Kestrel 与 Nginx 一起使用。如何生成 key.rsa 文件并将其用于生产?

我也检查了其他问题。他们正在使用他们的 Windows 证书存储来读取证书。我需要一个使用 key.rsa 在 centos 上工作的解决方案。

到目前为止的代码::

    // Code skipped for brevity....

    #region Add ASP.NET Core Identity Server
        // Using ASP.NET Core Identity Server
        services.AddIdentityServer()
            .AddConfigurationStore<MySQLConfigurationDbContext>()
            .AddOperationalStore<MySQLPersistedGrantDbContext>()
            .AddAspNetIdentity<Identity.BOL.IdentityUser>()                
            .AddDeveloperSigningCredential();
        #endregion

        // Use Authentication
        services.AddAuthentication();                
    

【问题讨论】:

【参考方案1】:

我不清楚您是在问如何生成密钥,还是在生成密钥后如何使用它。我猜是第二个问题,因为您已经获得了您生成的密钥的示例。

您需要摆脱.AddIdentityServer 上的.UseDeveloperSigningCredential() 并使用其他一些构建器扩展便利方法:

https://identityserver4.readthedocs.io/en/latest/topics/startup.html#refstartupkeymaterial

或者,如果您需要更多自定义功能,请使用以下接口: https://identityserver4.readthedocs.io/en/latest/topics/crypto.html

但本质上,这些构建器扩展可能就是您所需要的。保持相同版本的代码,只是在 dev 和 live 上使用不同的密钥材料。

这是使用扩展方法的 x509 重载的示例,但您可以使用对您的关键材料有意义的任何方法:

    var x509 = new X509Certificate2(
         File.ReadAllBytes(somefilename),somepassword);

    services.AddIdentityServer(options =>
        
            the options I care about
        )
        .AddSigningCredential(x509)
        .AddValidationKey(x509);

【讨论】:

我都想要。我也想生成和使用。我找到了一个解决方案......只是想要。暂时查看其他解决方案。请展示你是如何做到的。 好吧,我们只使用 openssl 命令行来生成密钥。类似***.com/questions/5244129/… 我的答案中的代码 sn-p 只是从 PFX 文件创建 x509 证书。 PFX 文件是使用 openssl 创建的。考虑到 PFX 最初是由 PEM 材料创建的,这可能看起来有点漫长,但这是有原因的 :) 该服务也托管在 Centos 上,因此不会靠近Windows 证书存储。 正是我想要的...我正在使用完全相同的方法。您是使用单个密钥进行签名和验证还是使用两个不同的密钥?我用的是 100 年寿命的 @Ariel 您是否能够开发一个流程来自动生成新证书和自动密钥翻转?你愿意分享这个过程吗?

以上是关于如何为CentOS 7配置静态IP地址的两种方法的主要内容,如果未能解决你的问题,请参考以下文章

如何为CentOS 7配置静态IP地址

如何为CentOS 7配置静态IP地址

如何为CentOS 7配置静态IP地址

如何为CentOS 7配置静态IP地址

如何为CentOS 7配置静态IP地址

如何为CentOS 7配置静态IP地址