Weboldal keresés

RHCSA sorozat: SSH védelme, gazdagépnév beállítása és hálózati szolgáltatások engedélyezése – 8. rész


Rendszergazdaként gyakran be kell jelentkeznie távoli rendszerekre, hogy terminálemulátor segítségével különféle adminisztrációs feladatokat hajtson végre. Ritkán ülhet valódi (fizikai) terminál előtt, ezért be kell állítania egy módot, hogy távolról bejelentkezzen azokra a gépekre, amelyek kezelésére felkérik.

Valójában ez lehet az utolsó dolog, amit meg kell tennie egy fizikai terminál előtt. Biztonsági okokból nem jó ötlet a Telnet használata erre a célra, mivel az összes forgalom titkosítatlan, egyszerű szövegben halad át a vezetéken.

Ezenkívül ebben a cikkben azt is áttekintjük, hogyan lehet beállítani a hálózati szolgáltatásokat úgy, hogy azok automatikusan induljanak el rendszerindításkor, és megtanuljuk, hogyan kell statikusan vagy dinamikusan beállítani a hálózat és a gazdagépnév felbontását.

SSH kommunikáció telepítése és biztosítása

Ahhoz, hogy távolról tudjon bejelentkezni egy RHEL 7 dobozba SSH használatával, telepítenie kell az openssh, openssh -clients és openssh-servers csomagok. A következő parancs nem csak a távoli bejelentkezési programot telepíti, hanem a biztonságos fájlátviteli eszközt, valamint a távoli fájlmásoló segédprogramot is:


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

Vegye figyelembe, hogy jó ötlet a kiszolgáló megfelelőinek telepítése, mivel előfordulhat, hogy bizonyos pontokon ugyanazt a gépet szeretné használni kliensként és kiszolgálóként is.

A telepítés után néhány alapvető dolgot figyelembe kell vennie, ha biztonságos távoli hozzáférést szeretne biztosítani SSH-kiszolgálójához. A következő beállításoknak szerepelniük kell az /etc/ssh/sshd_config fájlban.

1. Módosítsa azt a portot, amelyen az sshd démon figyelni fog, 22-ről (az alapértelmezett érték) magas portra (2000 vagy nagyobb), de először győződjön meg arról, hogy a kiválasztott portot nem használja.

Tegyük fel például, hogy a 2500 portot választja. A netstat segítségével ellenőrizze, hogy a kiválasztott port használatban van-e vagy sem:


netstat -npltu | grep 2500

Ha a netstat nem ad vissza semmit, nyugodtan használhatja a 2500 portot az sshd-hez, és módosítania kell a port beállítást a konfigurációs fájlban az alábbiak szerint:


Port 2500

2. Csak a 2. protokoll engedélyezése:


Protocol 2

3. Állítsa be a hitelesítési időt 2 percre, ne engedélyezze a root bejelentkezést, és korlátozza minimálisra az ssh-n keresztül bejelentkező felhasználók listáját:


LoginGraceTime 2m
PermitRootLogin no
AllowUsers gacanepa

4. Ha lehetséges, használjon kulcsalapú hitelesítést jelszavas hitelesítés helyett:


PasswordAuthentication no
RSAAuthentication yes
PubkeyAuthentication yes

Ez azt feltételezi, hogy már létrehozott egy kulcspárt a felhasználói nevével az ügyfélgépen, és az itt leírtak szerint átmásolta a szerverére.

  1. Engedélyezze az SSH jelszó nélküli bejelentkezést

A hálózatkezelés és a névfelbontás konfigurálása

1. Minden rendszergazdának jól ismernie kell a következő rendszerszintű konfigurációs fájlokat:

  1. Az /etc/hosts a nevek <---> IP-címeinek feloldására szolgál kis hálózatokban.

Az /etc/hosts fájl minden sorának szerkezete a következő:


IP address - Hostname - FQDN

Például,


192.168.0.10	laptop	laptop.gabrielcanepa.com.ar

2. Az /etc/resolv.conf a DNS-kiszolgálók IP-címét és a keresési tartományt határozza meg, amely egy adott lekérdezésnév kiegészítésére szolgál egy teljesen minősített tartománynévhez, amikor nincs megadva domain utótag.

Normál körülmények között nem kell szerkesztenie ezt a fájlt, mivel azt a rendszer kezeli. Ha azonban módosítani szeretné a DNS-kiszolgálókat, vegye figyelembe, hogy minden sorban ragaszkodnia kell a következő struktúrához:


nameserver - IP address

Például,


nameserver 8.8.8.8

3. 3. Az /etc/host.conf meghatározza azokat a módszereket és sorrendet, amelyek szerint a gépnevek feloldása a hálózaton belül történik. Más szóval, megmondja a névfeloldónak, hogy mely szolgáltatásokat és milyen sorrendben használja.

Bár ennek a fájlnak több opciója is van, a leggyakoribb és alapvető beállítás a következő sort tartalmazza:


order bind,hosts

Ez azt jelzi, hogy a feloldónak először a resolv.conf fájlban megadott névszervereket, majd az /etc/hosts fájlt kell keresnie a névfeloldáshoz.

4. A /etc/sysconfig/network az összes hálózati interfészhez tartalmaz útválasztási és globális gazdagépinformációkat. A következő értékek használhatók:


NETWORKING=yes|no
HOSTNAME=value

Ahol az érték a Fully Qualified Domain Name (FQDN) legyen.


GATEWAY=XXX.XXX.XXX.XXX

Ahol XXX.XXX.XXX.XXX a hálózat átjárójának IP-címe.


GATEWAYDEV=value

Több hálózati kártyával rendelkező gépen az érték az átjáróeszköz, például az enp0s3.

5. Az /etc/sysconfig/network-scripts fájlok (hálózati adapterek konfigurációs fájljai).

A korábban említett könyvtárban számos egyszerű szöveges fájl található.


ifcfg-name

Ahol a név a hálózati kártyának az ip link show által visszaadott neve:

Például:

A visszahurkolt felületen kívül hasonló konfigurációra számíthat a hálózati kártyák esetében. Ne feledje, hogy bizonyos változók, ha be vannak állítva, felülírják az /etc/sysconfig/network fájlban található változókat az adott interfész esetében. Ebben a cikkben minden sor megjegyzést kapott a pontosítás érdekében, de a tényleges fájlban kerülje a megjegyzéseket:


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

Gazdanevek beállítása

A Red Hat Enterprise Linux 7 rendszerben a hostnamectl parancs a rendszer gazdagépnevének lekérdezésére és beállítására szolgál.

Az aktuális gazdagépnév megjelenítéséhez írja be:


hostnamectl status

A gazdagépnév megváltoztatásához használja a


hostnamectl set-hostname [new hostname]

Például,


hostnamectl set-hostname cinderella

A módosítások életbe léptetéséhez újra kell indítania a hostnamed démont (így nem kell ki- és bejelentkeznie a változtatás alkalmazásához):


systemctl restart systemd-hostnamed

Ezenkívül az RHEL 7 tartalmazza az nmcli segédprogramot is, amely ugyanerre a célra használható. A gazdagépnév megjelenítéséhez futtassa:


nmcli general hostname

és megváltoztatni:


nmcli general hostname [new hostname]

Például,


nmcli general hostname rhel7

A hálózati szolgáltatások indítása rendszerindításkor

Végezetül nézzük meg, hogyan biztosíthatjuk, hogy a hálózati szolgáltatások rendszerindításkor automatikusan elinduljanak. Egyszerűen fogalmazva, ez a szolgáltatás konfigurációs fájlok [Telepítés] szakaszában megadott bizonyos fájlokhoz mutató hivatkozások létrehozásával történik.

tűzfal esetén (/usr/lib/systemd/system/firewall.service):


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

A szolgáltatás engedélyezéséhez:


systemctl enable firewalld

Másrészt a tűzfal letiltása feljogosítja a szimbolikus hivatkozások eltávolítására:


systemctl disable firewalld

Következtetés

Ebben a cikkben összefoglaltuk, hogyan telepítsünk és biztosítsunk kapcsolatokat SSH-on keresztül egy RHEL-kiszolgálóhoz, hogyan változtassuk meg a nevét, és végül hogyan biztosítsuk, hogy a hálózati szolgáltatások elinduljanak csomagtartó. Ha azt észleli, hogy egy bizonyos szolgáltatás nem indult el megfelelően, a systemctl status -l [szolgáltatás] és a journalctl -xn használatával elháríthatja a hibaelhárítást.

Nyugodtan ossza meg velünk, mit gondol erről a cikkről az alábbi megjegyzés űrlap segítségével. Kérdéseket is szívesen fogadunk. Várom válaszukat!