RHCSA Serisi: SSH'nin Güvenliğini Sağlama, Ana Bilgisayar Adını Ayarlama ve Ağ Hizmetlerini Etkinleştirme - Bölüm 8


Bir sistem yöneticisi olarak, bir terminal emülatörü kullanarak çeşitli yönetim görevlerini gerçekleştirmek için sıklıkla uzaktaki sistemlerde oturum açmanız gerekecektir. Nadiren gerçek (fiziksel) bir terminalin önünde oturacaksınız, bu nedenle yönetmeniz istenecek makinelerde uzaktan oturum açmanın bir yolunu ayarlamanız gerekir.

Aslında bu, fiziksel bir terminalin önünde yapmak zorunda kalacağınız son şey olabilir. Güvenlik nedeniyle, tüm trafiğin şifrelenmemiş, düz metin olarak kablo üzerinden geçmesi nedeniyle Telnet'i bu amaçla kullanmak iyi bir fikir değildir.

Ayrıca bu makalede, ağ hizmetlerinin önyükleme sırasında otomatik olarak başlayacak şekilde nasıl yapılandırılacağını da inceleyeceğiz ve ağ ve ana bilgisayar adı çözümlemesinin statik veya dinamik olarak nasıl ayarlanacağını öğreneceğiz.

SSH İletişimini Kurma ve Güvenliğini Sağlama

SSH kullanarak bir RHEL 7 kutusuna uzaktan oturum açabilmeniz için openssh, openssh'i yüklemeniz gerekir. -clients ve openssh-servers paketleri. Aşağıdaki komut yalnızca uzaktan oturum açma programını yüklemekle kalmayacak, aynı zamanda güvenli dosya aktarım aracını ve uzaktan dosya kopyalama yardımcı programını da kuracaktır:


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

Bir noktada hem istemci hem de sunucu olarak aynı makineyi kullanmak isteyebileceğinizden, sunucu benzerlerini kurmanın iyi bir fikir olduğunu unutmayın.

Kurulumdan sonra SSH sunucunuza uzaktan erişimi güvenli hale getirmek istiyorsanız dikkate almanız gereken birkaç temel nokta vardır. /etc/ssh/sshd_config dosyasında aşağıdaki ayarlar bulunmalıdır.

1. Sshd arka plan programının dinleyeceği bağlantı noktasını 22'den (varsayılan değer) yüksek bir bağlantı noktasına (2000 veya üzeri) değiştirin, ancak öncelikle seçilen bağlantı noktasının kullanılmadığından emin olun.

Örneğin 2500 bağlantı noktasını seçtiğinizi varsayalım. Seçilen bağlantı noktasının kullanılıp kullanılmadığını kontrol etmek için netstat'ı kullanın:


netstat -npltu | grep 2500

netstat hiçbir şey döndürmezse, sshd için 2500 bağlantı noktasını güvenle kullanabilirsiniz ve yapılandırma dosyasındaki Bağlantı Noktası ayarını aşağıdaki gibi değiştirmelisiniz:


Port 2500

2. Yalnızca protokol 2'ye izin verin:


Protocol 2

3. Kimlik doğrulama zaman aşımını 2 dakika olarak yapılandırın, kök oturum açmalara izin vermeyin ve ssh aracılığıyla oturum açmasına izin verilen kullanıcıların listesini minimumla sınırlayın:


LoginGraceTime 2m
PermitRootLogin no
AllowUsers gacanepa

4. Mümkünse şifre kimlik doğrulaması yerine anahtar tabanlı kimlik doğrulamayı kullanın:


PasswordAuthentication no
RSAAuthentication yes
PubkeyAuthentication yes

Bu, istemci makinenizde zaten kullanıcı adınızla bir anahtar çifti oluşturduğunuzu ve burada açıklandığı gibi bunu sunucunuza kopyaladığınızı varsayar.

  1. SSH Parolasız Girişi Etkinleştir

Ağ İletişimini ve Ad Çözümlemesini Yapılandırma

1. Her sistem yöneticisi aşağıdaki sistem çapındaki yapılandırma dosyalarını iyi bilmelidir:

  1. /etc/hosts, küçük ağlardaki <---> IP'lerinin adlarını çözümlemek için kullanılır.

/etc/hosts dosyasındaki her satır aşağıdaki yapıya sahiptir:


IP address - Hostname - FQDN

Örneğin,


192.168.0.10	laptop	laptop.gabrielcanepa.com.ar

2. /etc/resolv.conf, DNS sunucularının IP adreslerini ve belirli bir sorgu adını tam nitelikli bir alan adına tamamlamak için kullanılan arama alanını belirtir. alan adı son eki sağlanmadı.

Normal şartlarda bu dosya sistem tarafından yönetildiği için düzenlemenize gerek yoktur. Ancak DNS sunucularını değiştirmek isterseniz her satırda aşağıdaki yapıya uymanız gerektiğini unutmayın:


nameserver - IP address

Örneğin,


nameserver 8.8.8.8

3. 3. /etc/host.conf, bir ağ içinde ana bilgisayar adlarının çözümlenme yöntemlerini ve sırasını belirtir. Başka bir deyişle, ad çözümleyiciye hangi hizmetlerin hangi sırayla kullanılacağını söyler.

Bu dosyanın çeşitli seçenekleri olmasına rağmen en yaygın ve temel kurulum aşağıdaki gibi bir satır içerir:


order bind,hosts

Bu, çözümleyicinin ad çözümlemesi için önce resolv.conf dosyasında belirtilen ad sunucularına, ardından /etc/hosts dosyasına bakması gerektiğini gösterir.

4. /etc/sysconfig/network, tüm ağ arayüzleri için yönlendirme ve genel ana bilgisayar bilgilerini içerir. Aşağıdaki değerler kullanılabilir:


NETWORKING=yes|no
HOSTNAME=value

Burada değer Tam Nitelikli Etki Alanı Adı (FQDN) olmalıdır.


GATEWAY=XXX.XXX.XXX.XXX

Burada XXX.XXX.XXX.XXX, ağ geçidinin IP adresidir.


GATEWAYDEV=value

Birden fazla NIC'ye sahip bir makinede değer, enp0s3 gibi ağ geçidi cihazıdır.

5. /etc/sysconfig/network-scripts içindeki dosyalar (ağ bağdaştırıcıları yapılandırma dosyaları).

Daha önce bahsedilen dizinin içinde, adında birkaç düz metin dosyası bulacaksınız.


ifcfg-name

Burada ad, ip link show tarafından döndürülen NIC'nin adıdır:

Örneğin:

Geridöngü arayüzü dışında, NIC'leriniz için de benzer bir yapılandırma bekleyebilirsiniz. Bazı değişkenlerin, eğer ayarlanırsa, bu özel arayüz için /etc/sysconfig/network dosyasında mevcut olanları geçersiz kılacağını unutmayın. Bu makalede her satıra açıklama amacıyla yorum yapılmıştır ancak asıl dosyada yorumlardan kaçınmalısınız:


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

Ana Bilgisayar Adlarını Ayarlama

Red Hat Enterprise Linux 7'de hostnamectl komutu sistemin ana bilgisayar adını hem sorgulamak hem de ayarlamak için kullanılır.

Geçerli ana bilgisayar adını görüntülemek için şunu yazın:


hostnamectl status

Ana bilgisayar adını değiştirmek için şunu kullanın:


hostnamectl set-hostname [new hostname]

Örneğin,


hostnamectl set-hostname cinderella

Değişikliklerin etkili olması için ana bilgisayar adı verilen arka plan programını yeniden başlatmanız gerekecektir (böylece değişikliği uygulamak için oturumu kapatıp tekrar açmanız gerekmez):


systemctl restart systemd-hostnamed

Ayrıca RHEL 7 aynı amaç için kullanılabilecek nmcli yardımcı programını da içerir. Ana bilgisayar adını görüntülemek için şunu çalıştırın:


nmcli general hostname

ve bunu değiştirmek için:


nmcli general hostname [new hostname]

Örneğin,


nmcli general hostname rhel7

Ağ Hizmetlerini Önyüklemede Başlatma

Bitirmek için, ağ hizmetlerinin açılışta otomatik olarak başlatılmasını nasıl sağlayabileceğimizi görelim. Basit bir ifadeyle bu, hizmet yapılandırma dosyalarının [Yükle] bölümünde belirtilen belirli dosyalara sembolik bağlantılar oluşturularak yapılır.

Firewalld durumunda (/usr/lib/systemd/system/firewalld.service):


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

Hizmeti etkinleştirmek için:


systemctl enable firewalld

Öte yandan, güvenlik duvarını devre dışı bırakmak sembolik bağlantıların kaldırılmasını sağlar:


systemctl disable firewalld

Çözüm

Bu makalede, SSH aracılığıyla bir RHEL sunucusuna bağlantıların nasıl kurulacağını ve güvenli hale getirileceğini, adının nasıl değiştirileceğini ve son olarak ağ hizmetlerinin bu sunucuda başlatılmasının nasıl sağlanacağını özetledik. bot. Belirli bir hizmetin düzgün şekilde başlatılamadığını fark ederseniz sorunu gidermek için systemctl status -l [service] ve journalctl -xn'yi kullanabilirsiniz.

Aşağıdaki yorum formunu kullanarak bu makale hakkında ne düşündüğünüzü bize bildirmekten çekinmeyin. Sorular da memnuniyetle karşılanmaktadır. Sizden haber almak için sabırsızlanıyoruz!