CentOS/RHEL 8 ile İlk Sunucu Kurulumu


Bu yazıda, grafik ortamı olmayan minimal bir CentOS/RHEL 8 sunucusu kurduktan sonra, kurulu sistemle ilgili bilgileri almak için uygulamanız gereken ilk temel adımları anlatacağız. sunucunun üzerinde çalıştığı donanımları yapılandırın ve sistem güncellemesi, ağ oluşturma, kök ayrıcalıkları, ssh'yi yapılandırma, hizmetleri yönetme ve diğerleri gibi diğer belirli sistem görevlerini yapılandırın.

Gereksinimler

  1. CentOS 8 Kurulum Kılavuzu
  2. RHEL 8 Minimal Kurulum
  3. RHEL 8'de RHEL Aboneliğini Etkinleştirin

Önemli: Sistem güncellemesi gerçekleştirmek için RHEL 8 sunucunuzda Red Hat Abonelik Hizmeti'nin etkinleştirilmiş olması gerekir ve Yazılım yükleme.

Adım 1: Sistem Yazılımını Güncelleyin

Öncelikle sunucunuza kök kullanıcı olarak giriş yapın ve sistemi en son çekirdek, sistem güvenlik yamaları, yazılım depoları ve paketlerle tamamen güncellemek için aşağıdaki komutları çalıştırın.

dnf check-update
dnf update

Yazılım yükseltme işlemi bittiğinde, disk alanını boşaltmak için aşağıdaki komutu çalıştırarak indirilen tüm yazılım paketlerini tüm önbelleğe alınmış depo bilgileriyle birlikte silebilirsiniz.

dnf clean all

Adım 2: Sistem Yardımcı Programlarını Kurun

Aşağıdaki sistem yardımcı programları, günlük sistem yönetimi görevleri için çok yararlı olabilir: nano, vim editörü, wget & curl (çoğunlukla ağ üzerinden paketleri indirmek için kullanılan yardımcı programlar) net-tools (yerel ağ yönetimi için yardımcı programlar) lsof (için faydalıdır) açık dosyaların listesini işleme göre bulma) ve bash tamamlama (komut satırı otomatik tamamlama).

dnf install nano vim wget curl net-tools lsof bash-completion

3. Adım: Ana Bilgisayar Adını ve Ağ İletişimini Kurun

CentOS/RHEL 8'de, ağ yapılandırma dosyasını manuel olarak değiştirmekten ifconfig, ip, nmcli ve gibi komutları kullanmaya kadar, ağı yapılandırmak ve yönetmek için kullanılan depolarda çok çeşitli araçlar bulunur. nmtui.

Yeni başlayanların, ağ ana bilgisayar adını ayarlamak ve statik IP adresini yapılandırmak gibi ağ yapılandırmalarını yapılandırmak ve yönetmek için kullanabileceği en kolay yardımcı program, nmtui grafik komut satırı yardımcı programını kullanmaktır.

CentOS 8'de Ana Bilgisayar Adını Ayarlayın

Sistem ana bilgisayar adını ayarlamak veya değiştirmek için aşağıdaki nmtui-ana bilgisayar adı komutunu çalıştırın; bu komut, aşağıdaki ekran görüntüsünde gösterildiği gibi, makinenizin ana bilgisayar adını girmenizi ve tamamlamak için Tamam'a basmanızı isteyecektir.

nmtui-hostname

CentOS 8'de Statik IP Adresini Ayarlayın

Bir ağ arayüzünü yapılandırmak için, aşağıdaki ekran görüntüsünde gösterildiği gibi menüden yapılandırmak istediğiniz arayüzü seçmenizi isteyecek olan aşağıdaki nmtui-edit komutunu çalıştırın.

nmtui-edit

Düzenle düğmesini tıkladığınızda, aşağıdaki ekran görüntüsünde gösterildiği gibi ağ arayüzü IP ayarlarını yapmanız istenecektir. İşiniz bittiğinde, yapılandırmayı kaydetmek ve çıkmak için [tab] tuşunu kullanarak Tamam'a gidin.

Ağ yapılandırmasını tamamladıktan sonra, yönetmek istediğiniz arayüzü seçerek yeni ağ ayarlarını uygulamak için aşağıdaki komutu çalıştırmanız ve arayüzü kullanımdan kaldırmak ve açmak için Devre Dışı Bırak/Etkinleştir seçeneğine basmanız gerekir. Aşağıdaki ekran görüntüsünde gösterildiği gibi IP ayarlarıyla.

nmtui-connect

Ağ yapılandırma ayarlarını doğrulamak için arayüz dosyasının içeriğini kontrol edebilir veya aşağıdaki komutları verebilirsiniz.

ifconfig enp0s3
ip a
ping -c2 google.com

Ağ arayüzünün hızını, ağ bağlantısı durumunu kontrol etmek ve makine ağ arayüzleri hakkında bilgi edinmek için ethtool ve mii-tool gibi diğer faydalı ağ yardımcı programlarını da kullanabilirsiniz.

ethtool enp0s3
mii-tool enp0s3

Makine ağınızın önemli bir yönü, hangi hizmetlerin hangi bağlantı noktalarını dinlediğini ve kurulan ağ bağlantılarının durumunun ne olduğunu kontrol etmek ve işlemler tarafından açılan tüm dosyaları listelemek için tüm açık ağ soketlerini listelemek önemlidir.

netstat -tulpn
ss -tulpn
lsof -i4 -6

Adım 4: Yeni Bir Kullanıcı Hesabı Oluşturun

Gerektiğinde yönetim görevlerini gerçekleştirmek için root izinlerine sahip normal bir kullanıcının olması her zaman tavsiye edilir. Normal bir kullanıcıya root ayrıcalıkları atamak için öncelikle useradd komutu ile bir kullanıcı oluşturup, şifresini belirleyip yönetici çarkı grubuna bir kullanıcı ekleyin.

useradd ravisaive
passwd ravisaive
usermod -aG wheel ravisaive

Yeni kullanıcının root ayrıcalıklarına sahip olduğunu doğrulamak için kullanıcının kimlik bilgileriyle sisteme giriş yapın ve gösterildiği gibi Sudo izinleriyle dnf komutunu çalıştırın.

su - ravisaive
sudo dnf update

Adım 5: CentOS 8'de SSH Parolasız Oturum Açma Kurulumunu Yapın

Sunucu güvenliğinizi artırmak amacıyla, genel ve özel anahtar içeren bir çift SSH Anahtarı oluşturarak yeni kullanıcınız için şifresiz bir SSH kimlik doğrulaması ayarlayın. ancak bir tane oluşturmanız gerekiyor. Bu, sisteme bağlanmak için özel bir SSH anahtarı gerektirerek sunucunuzun güvenliğini artıracaktır.

su - ravisaive
ssh-keygen -t RSA

Anahtar oluşturulduktan sonra, özel anahtarı güvence altına almak için sizden parolayı girmenizi isteyecektir. SSH sunucusu aracılığıyla yönetim görevlerini otomatikleştirmek istiyorsanız güçlü bir parola girebilir veya parolayı boş bırakmayı seçebilirsiniz.

SSH anahtarı oluşturulduktan sonra, gösterildiği gibi uzak sunucunun kullanıcı adı ve IP adresiyle ssh-copy-id komutunu çalıştırarak oluşturulan genel anahtar çiftini uzak bir sunucuya kopyalamanız gerekir.

ssh-copy-id [email 

SSH anahtarı kopyalandıktan sonra, kimlik doğrulama yöntemi olarak özel anahtarı kullanarak uzak Linux sunucunuzda oturum açmayı deneyebilirsiniz. SSH sunucusu şifre sormadan otomatik olarak giriş yapabilmeniz gerekir.

[email 

Adım 6: SSH Uzaktan Girişlerin Güvenliğini Sağlama

Burada SSH yapılandırma dosyasındaki root hesaba uzaktan SSH erişimini devre dışı bırakarak sunucumuzun güvenliğini biraz daha artıracağız.

vi /etc/ssh/sshd_config

#PermitRootLogin yes yazan satırı bulun, satırın başındaki # işaretini silerek satırın açıklamasını kaldırın ve satırı şu şekilde değiştirin.

PermitRootLogin no

Daha sonra son yeni değişiklikleri uygulamak için SSH sunucusunu yeniden başlatın.

systemctl restart sshd

Şimdi kök hesap olarak oturum açmayı deneyerek yapılandırmayı doğrulayın, gösterildiği gibi erişim SSH İzni Reddedildi hatasıyla karşılaşacaksınız.

ssh [email 

Belirli bir süre işlem yapılmadığında, sunucunuzla olan tüm uzak SSH bağlantılarının bağlantısını otomatik olarak kesmek isteyebileceğiniz senaryolar vardır.

Adım 7: CentOS 8'de Güvenlik Duvarını Yapılandırın

CentOS/RHEL 8'de varsayılan güvenlik duvarı, sunucudaki iptables kurallarını yönetmek için kullanılan Firewalld'dur. Sunucuda güvenlik duvarı hizmetini etkinleştirmek ve başlatmak için aşağıdaki komutları çalıştırın.

systemctl enable firewalld
systemctl start firewalld
systemctl status firewalld

Belirli bir hizmete (SSH) gelen bağlantıyı açmak için öncelikle hizmetin güvenlik duvarı kurallarında mevcut olduğunu doğrulamanız ve ardından kuralı eklemeniz gerekir: gösterildiği gibi komutlara --permanent anahtarını ekleyerek hizmeti kullanın.

firewall-cmd --add-service=[tab]  #List services
firewall-cmd --add-service=ssh
firewall-cmd --add-service=ssh --permanent

HTTP veya SMTP gibi diğer ağ hizmetlerine gelen bağlantıları açmak istiyorsanız, hizmet adını belirterek kuralları gösterildiği gibi eklemeniz yeterlidir.

firewall-cmd --permanent --add-service=http
firewall-cmd --permanent --add-service=https
firewall-cmd --permanent --add-service=smtp

Sunucudaki tüm güvenlik duvarı kurallarını görüntülemek için aşağıdaki komutu çalıştırın.

firewall-cmd --permanent --list-all

Adım 8: CentOS 8'de İstenmeyen Hizmetleri Kaldırma

Yeni bir CentOS/RHEL 8 sunucusu kurduktan sonra, sunucuya yapılan saldırıları azaltmak için sunucuda varsayılan olarak çalışan istenmeyen hizmetleri kaldırmanız ve devre dışı bırakmanız önemle tavsiye edilir.

Sunucuda TCP ve UDP dahil olmak üzere çalışan tüm ağ hizmetlerini listelemek için aşağıdaki örnekte gösterildiği gibi ss komutunu veya netstat komutunu çalıştırın.

ss -tulpn
OR
netstat -tulpn

Yukarıdaki komutlar, Postfix posta sunucusu gibi sunucuda varsayılan olarak çalışan bazı ilginç hizmetleri listeleyecektir. Eğer mail sistemini sunucu üzerinde barındırmayı planlamıyorsanız, gösterildiği gibi durdurup sistemden kaldırmalısınız.

systemctl stop postfix
systemctl disable postfix
dnf remove postfix

İstenmeyen tüm hizmetleri keşfedip tanımlamak ve bunları sistemden kaldırmak için ss komutu ve netstat komutunun yanı sıra ps, top veya pstree komutlarını da çalıştırabilirsiniz.

dnf install psmisc
pstree -p

Adım 9: CentOS 8'de Hizmetleri Yönetin

CentOS/RHEL 8'de tüm hizmetler ve arka plan programları bir systemctl komutu aracılığıyla yönetilir ve tüm etkin, çalışan, çıkılan veya başarısız hizmetleri listelemek için bu komutu kullanabilirsiniz.

systemctl list-units

Sistem başlatılırken bir arka plan programının veya hizmetin otomatik olarak etkinleştirilip etkinleştirilmediğini kontrol etmek için aşağıdaki komutu verin.

systemctl list-unit-files -t service

systemctl komutu hakkında daha fazla bilgi edinmek için Linux'ta 'Systemctl' Kullanarak Hizmetlerin Nasıl Yönetileceğini açıklayan makalemizi okuyun.

Bu kadar! Bu makalede, her Linux sistem yöneticisinin bilmesi ve yeni kurulmuş bir CentOS/RHEL 8 sisteminde veya sistemdeki günlük görevleri gerçekleştirmek için uygulaması gereken birkaç temel ayar ve komutu açıkladık. .