RHCSA-sarja: SSH: n suojaus, isäntänimen asettaminen ja verkkopalvelujen käyttöönotto - osa 8


Järjestelmänvalvojana sinun on usein kirjauduttava etäjärjestelmiin suorittamaan erilaisia hallintatehtäviä pääteemulaattorin avulla. Istut harvoin todellisen (fyysisen) terminaalin edessä, joten sinun on määritettävä tapa kirjautua etänä koneisiin, joita sinua pyydetään hallitsemaan.

Itse asiassa se voi olla viimeinen asia, joka sinun on tehtävä fyysisen päätteen edessä. Turvallisuussyistä Telnetin käyttö tähän tarkoitukseen ei ole hyvä idea, koska kaikki liikenne kulkee langan läpi salaamattomana, pelkkänä tekstinä.

Lisäksi tässä artikkelissa tarkastelemme myös verkkopalvelujen määrittämistä käynnistymään automaattisesti käynnistyksen yhteydessä ja opitaan määrittämään verkon ja isäntänimen tarkkuus staattisesti tai dynaamisesti.

SSH-tietoliikenteen asentaminen ja suojaaminen

Jotta voit kirjautua etäyhteydellä RHEL 7 -ruutuun SSH: n avulla, sinun on asennettava openssh-, openssh-client- ja openssh-server-paketit. Seuraava komento ei vain asenna etäkirjautumisohjelmaa, vaan myös suojatun tiedostonsiirtotyökalun sekä etätiedostojen kopiointiohjelman:

# yum update && yum install openssh openssh-clients openssh-servers

Huomaa, että on hyvä asentaa palvelimen vastineet, koska saatat haluta käyttää samaa konetta sekä asiakkaan että palvelimen kanssa jossain vaiheessa.

Asennuksen jälkeen on muutama perusasia, jotka sinun on otettava huomioon, jos haluat suojata etäkäytön SSH-palvelimellesi. Seuraavien asetusten tulisi olla tiedostossa /etc/ssh/sshd_config .

1. Vaihda portti, jota sshd-daemon kuuntelee, arvosta 22 (oletusarvo) korkeaksi (2000 tai suurempi), mutta varmista ensin, että valittua porttia ei käytetä.

Oletetaan esimerkiksi, että valitset portin 2500. Käytä netstat-palvelua tarkistaaksesi, käytetäänkö valittua porttia vai ei:

# netstat -npltu | grep 2500

Jos netstat ei palauta mitään, voit käyttää porttia 2500 sshd: lle turvallisesti, ja sinun on muutettava porttiasetusta määritystiedostossa seuraavasti:

Port 2500

2. Salli vain protokolla 2:

Protocol 2

3. Määritä todennuksen aikakatkaisu 2 minuutiksi, älä salli juuren kirjautumista ja rajoita minimiin niiden käyttäjien luettelo, joille voidaan kirjautua ssh: n kautta:

LoginGraceTime 2m
PermitRootLogin no
AllowUsers gacanepa

4. Jos mahdollista, käytä avainpohjaista salasanan todennuksen sijaan:

PasswordAuthentication no
RSAAuthentication yes
PubkeyAuthentication yes

Tämä olettaa, että olet jo luonut avainparin käyttäjänimesi kanssa asiakaskoneellesi ja kopioinut sen palvelimellesi tässä kuvatulla tavalla.

  1. Ota SSH-salasanaton kirjautuminen käyttöön

Verkkoasetusten ja nimen tarkkuuden määrittäminen

1. Jokaisen järjestelmänvalvojan on tunnettava hyvin seuraavat järjestelmänlaajuiset kokoonpanotiedostot:

  1. /etc/hosts käytetään nimien <---> IP-osoitteiden ratkaisemiseen pienissä verkoissa.

Jokaisella /etc/hosts -tiedoston rivillä on seuraava rakenne:

IP address - Hostname - FQDN

Esimerkiksi,

192.168.0.10	laptop	laptop.gabrielcanepa.com.ar

2. /etc/resolv.conf määrittää DNS-palvelinten IP-osoitteet ja hakuverkkotunnuksen, joita käytetään tietyn kyselyn nimen täydentämiseen täysin määritetylle toimialueen nimelle, kun toimialueen jälkiliitettä ei toimiteta.

Normaaleissa olosuhteissa sinun ei tarvitse muokata tätä tiedostoa, koska järjestelmä hallinnoi sitä. Jos kuitenkin haluat vaihtaa DNS-palvelimia, sinua kehotetaan pitämään kiinni jokaisesta rivistä seuraavasta rakenteesta:

nameserver - IP address

Esimerkiksi,

nameserver 8.8.8.8

3. 3. /etc/host.conf määrittää menetelmät ja järjestyksen, jolla isäntänimet ratkaistaan verkossa. Toisin sanoen, kertoo resolver-nimelle mitä palveluja ja missä järjestyksessä käyttää.

Vaikka tällä tiedostolla on useita vaihtoehtoja, yleisin ja perusasetukset sisältävät seuraavan rivin:

order bind,hosts

Mikä osoittaa, että resolverin on ensin etsittävä nimipalvelimia, jotka on määritetty kohdassa resolv.conf , ja sitten /etc/hosts -tiedostossa nimen tarkentamiseksi.

4. /etc/sysconfig/network sisältää reitityksen ja yleisen isännän tiedot kaikille verkkoliitännöille. Seuraavia arvoja voidaan käyttää:

NETWORKING=yes|no
HOSTNAME=value

Missä arvon pitäisi olla Fully Qualified Domain Name (FQDN).

GATEWAY=XXX.XXX.XXX.XXX

Missä XXX.XXX.XXX.XXX on verkon yhdyskäytävän IP-osoite.

GATEWAYDEV=value

Koneessa, jossa on useita verkkokortteja, arvo on yhdyskäytävälaite, kuten enp0s3.

5. Tiedostot /etc/sysconfig/network-scripts -kohdassa (verkkosovittimien määritystiedostot).

Aikaisemmin mainitun hakemiston sisällä on useita nimettyjä pelkkää tekstiä sisältäviä tiedostoja.

ifcfg-name

Missä nimi on verkkokortin nimi, jonka palauttaa ip-linkki, näytä:

Esimerkiksi:

Muut kuin loopback-käyttöliittymä, voit odottaa samanlaista kokoonpanoa verkkokortteillesi. Huomaa, että jotkin muuttujat, jos ne on asetettu, ohittavat /etc/sysconfig/network -mallissa olevat tälle tietylle käyttöliittymälle. Jokainen rivi on kommentoitu selvyyden vuoksi tässä artikkelissa, mutta varsinaisessa tiedostossa kannattaa välttää kommentteja:

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

Isäntänimien asettaminen

Red Hat Enterprise Linux 7: ssä hostnamectl-komentoa käytetään sekä kyselyyn että järjestelmän isäntänimen asettamiseen.

Näytä nykyinen isäntänimi kirjoittamalla:

# hostnamectl status

Muuta isäntänimi käyttämällä

# hostnamectl set-hostname [new hostname]

Esimerkiksi,

# hostnamectl set-hostname cinderella

Muutosten voimaantuloa varten sinun on käynnistettävä isäntänimi uudelleen (tällä tavoin sinun ei tarvitse kirjautua ulos ja uudelleen sisään muutoksen toteuttamiseksi):

# systemctl restart systemd-hostnamed

Lisäksi RHEL 7 sisältää myös nmcli-apuohjelman, jota voidaan käyttää samaan tarkoitukseen. Näytä isäntänimi suorittamalla:

# nmcli general hostname

ja muuttaa sitä:

# nmcli general hostname [new hostname]

Esimerkiksi,

# nmcli general hostname rhel7

Verkkopalvelujen käynnistäminen käynnistettäessä

Lopuksi katsotaanpa, kuinka voimme varmistaa, että verkkopalvelut käynnistetään automaattisesti käynnistyksen yhteydessä. Yksinkertaisesti sanottuna tämä tapahtuu luomalla symboleita tiettyihin tiedostoihin, jotka on määritetty palvelun määritystiedostojen [Install] -osassa.

Palomuuri (/usr/lib/systemd/system/firewalld.service):

[Install]
WantedBy=basic.target
Alias=dbus-org.fedoraproject.FirewallD1.service

Ota palvelu käyttöön seuraavasti:

# systemctl enable firewalld

Toisaalta palomuurin poistaminen käytöstä oikeuttaa poistamaan symlinkit:

# systemctl disable firewalld

Johtopäätös

Tässä artikkelissa olemme esittäneet yhteenvedon yhteyksien asentamisesta ja suojaamisesta SSH: n kautta RHEL-palvelimelle, kuinka muuttaa sen nimeä ja lopuksi kuinka varmistaa, että verkkopalvelut käynnistetään käynnistettäessä. Jos huomaat, että tietty palvelu ei käynnistynyt oikein, voit käyttää vianetsintää systemctl status -l [palvelu] ja journalctl -xn.

Voit vapaasti ilmoittaa meille, mitä mieltä olet tästä artikkelista, käyttämällä alla olevaa kommenttilomaketta. Kysymykset ovat myös tervetulleita. Me odotamme yhteydenottoasi!