作为系统管理员,您将经常使用终端仿真器登录到远程系统以执行各种管理任务。 你很少坐在一个真实(物理)终端的前面,所以你需要设置一种方式远程登录到你将被要求管理的机器。
事实上,这可能是你将要在物理终端前做的最后一件事。 出于安全原因,使用Telnet用于此目的是不是一个好主意,因为所有数据都经过加密中,明文电线。
此外,在本文中,我们还将讨论如何配置网络服务以在启动时自动启动,并了解如何静态或动态设置网络和主机名解析。
RHCSA:安全SSH和启用网络服务 - 第8部分
安装和保护SSH通信
让您能够远程登录到使用SSH在RHEL 7中,你将不得不安装OpenSSH,OpenSSH的客户机和OpenSSH的服务器软件包。 以下命令不仅将安装远程登录程序,还将安装安全文件传输工具以及远程文件复制实用程序:
# yum update && yum install openssh openssh-clients openssh-servers
请注意,安装服务器对应是一个好主意,因为您可能希望在某个时刻或另一个点使用与客户端和服务器相同的机器。
安装后,如果你想安全远程访问你的SSH服务器,你需要考虑几个基本的事情。 下面的设置应该出现在/etc/ssh/sshd_config
文件。
1.改变那里的sshd守护程序将从22(默认值)监听的端口到高端口(2000或更高版本 ),但首先要确保未使用所选择的端口。
例如,假设你选择端口2500。 使用netstat的 ,以检查是否正在使用或不选择的端口:
# netstat -npltu | grep 2500
如果netstat的不返回任何东西,你可以放心地使用端口2500 sshd之前,您应该按如下方式更改配置文件中的端口设置:
Port 2500
2.只允许协议2:
Protocol 2
3.配置认证超时2分钟,不允许root登录,并限制在最小被允许通过ssh登录的用户列表:
LoginGraceTime 2m PermitRootLogin no AllowUsers gacanepa
4.如果可能,使用替代密码验证的基于关键:
PasswordAuthentication no RSAAuthentication yes PubkeyAuthentication yes
这假设您已经在客户端计算机上使用您的用户名创建了密钥对,并将其复制到您的服务器,如此处所述。
配置网络和名称解析
1.每个系统管理员应充分熟悉以下系统范围的配置文件:
- / etc / hosts文件来解析名称<---> IP地址在小型网络中。
在每一行/etc/hosts
文件的结构如下:
IP address - Hostname - FQDN
例如,
192.168.0.10 laptop laptop.gabrielcanepa.com.ar
2. /etc/resolv.conf
指定的DNS服务器和搜索域,它用于在未提供域Postfix完成给定的查询名称为完全限定域名的IP地址。
在正常情况下,您不需要编辑此文件,因为它是由系统管理。 但是,如果您想更改DNS服务器,请注意,您需要在每行中坚持以下结构:
nameserver - IP address
例如,
nameserver 8.8.8.8
3. 3. /etc/host.conf
规定的方法和通过该主机名是在网络内解决的顺序。 换句话说,告诉名称解析器使用哪些服务,以及以什么顺序。
虽然此文件有几个选项,最常见和基本的设置包括一行如下:
order bind,hosts
这表明解析器应先在指定的域名服务器resolv.conf
,然后到/etc/hosts
文件进行名称解析。
4. /etc/sysconfig/network
包含了所有网络接口路由和全球主机信息。 可以使用以下值:
NETWORKING=yes|no HOSTNAME=value
其中值应为完全限定域名(FQDN)。
GATEWAY=XXX.XXX.XXX.XXX
其中XXX.XXX.XXX.XXX是网络的网关的IP地址。
GATEWAYDEV=value
在具有多个NIC的机器, 值是网关装置,如enp0s3。
5.文件里面/etc/sysconfig/network-scripts
(网络适配器配置文件)。
在前面提到的目录中,你会发现几个纯文本文件命名。
ifcfg-name
其中name是网卡的名称由IP链路显示为退货:
检查网络链接状态
例如:
网络文件
除Loopback接口,你可以期望你的网卡类似的配置。 需要注意的是一些变量,如果设置,将覆盖那些在/etc/sysconfig/network
为这个特定的接口。 每一行都在本文中被评论为澄清,但在实际文件中,您应该避免注释:
HWADDR=08:00:27:4E:59:37 # The MAC address of the NIC TYPE=Ethernet # Type of connection BOOTPROTO=static # This indicates that this NIC has been assigned a static IP. If this variable was set to dhcp, the NIC will be assigned an IP address by a DHCP server and thus the next two lines should not be present in that case. IPADDR=192.168.0.18 NETMASK=255.255.255.0 GATEWAY=192.168.0.1 NM_CONTROLLED=no # Should be added to the Ethernet interface to prevent NetworkManager from changing the file. NAME=enp0s3 UUID=14033805-98ef-4049-bc7b-d4bea76ed2eb ONBOOT=yes # The operating system should bring up this NIC during boot
设置主机名
在红帽企业Linux 7,hostnamectl命令用于查询和设置系统的主机名。
要显示当前主机名,请键入:
# hostnamectl status
检查系统主机名
要更改主机名,请使用
# hostnamectl set-hostname [new hostname]
例如,
# hostnamectl set-hostname cinderella
为使更改生效,您将需要重新启动hostnamed守护进程(这样你就不必为了将更改应用于注销并重新上):
# systemctl restart systemd-hostnamed
设置系统主机名
此外, 红帽7还包括nmcli实用工具,可用于同样的目的。 要显示主机名,请运行:
# nmcli general hostname
并更改它:
# nmcli general hostname [new hostname]
例如,
# nmcli general hostname rhel7
使用nmcli命令设置主机名
在引导时启动网络服务
总而言之,让我们看看如何确保网络服务在启动时自动启动。 简单来说,这是通过创建符号链接到服务配置文件中的[安装]部分中指定某些文件进行。
在firewalld(/usr/lib/systemd/system/firewalld.service)的情况下:
[Install] WantedBy=basic.target Alias=dbus-org.fedoraproject.FirewallD1.service
启用服务:
# systemctl enable firewalld
另一方面,禁用firewalld权限删除符号链接:
# systemctl disable firewalld
在系统引导时启用服务
结论
在这篇文章中,我们总结了如何安装并通过SSH到RHEL服务器的安全连接,如何更改其名称,最后如何保证网络服务在引导启动。 如果您发现某个服务无法正常启动,可以使用systemctl状态-l [服务]和journalctl -xn来解决它。
请随时使用下面的评论表格让我们知道您对本文的看法。 也欢迎提问。 我们期待您的回音!