Kurulum öncesi hazırlık
Itop v3.2 yazılımının Linux işletim sistemine kurulmasından önce, aşağıdaki başlıkların kontrol edilmesi, eksikliklerin tamamlanması gerekir.
- Kurulum yapılacak işletim sisteminin yazılımlarının güncel olması (Rocky Linux işletim sisteminde “dnf -y upgrade” komutu ile tüm yazılımlar güncellenebilir).
- Kurulum yapılacak sunucuların donanım ve ağ bağlantılarının kontrol edilmesi (RAM, disk kapasitesi, internet bağlantısı, …).
- Sunuculara ait IP adreslerinin belirlenmesi (örneğin 192.168.1.100)
- Sunucuların IP adreslerinin FQDN (tam nitelikli alan adı) tanımları (örneğin “itsm.belesware.com”).
- MariaDB veya MySQL veritabanının tam yetkili “root” kullanıcısı için bir şifrenin belirlenmesi (örneğin “my@itoP100”).
- MariaDB veya MySQL veritabanında sadece Itop yazılımında kullanılacak “itopuser” kullanıcısı için şifre belirlenmesi (örneğin “my@itoP88”).
- Itop yazılımını internet arayüzünden kullanırken tam yetkili bir kullanıcı adı (genelde “admin” olarak tanımlanır) ve bu kullanıcıya ait şifrenin belirlenmesi (örneğin “my@itoP55”).
Rocky Linux işletim sistemi minimal olarak kurulduktan sonra, Itop v3.2.1 yazılımının ihtiyaç duyduğu ek yazılım paketlerinin yüklenmesiyle Itop v3.2.1 kurulumu başlatılır.
Itop v3.2 için gereken ek yazılım paketlerinin kurulması
Aşağıdaki komutlar sırayla işletim sisteminde çalıştırılır.
# dnf -y install httpd
# dnf -y module list php
# dnf -y module enable php:8.2
# dnf -y install mariadb mariadb-server
# dnf -y install php php-cli php-ctype php-curl php-dom php-fpm php-gd php-iconv php-json php-ldap php-mbstring php-mysqli php-pear php-pecl-apcu php-soap php-xml php-zip
# dnf -y install chrony graphviz mod_ssl net-tools
# dnf -y install policycoreutils-gui setroubleshoot-server tcpdump unzip wget tar
Not : Yukarıdaki komutlar kopyalanırken başındaki “#” işareti seçilmez, ilk satırdaki komut “dnf -y install httpd” olarak sunucuda çalıştırılır.
Linux sunucuya kurulumda dikkat edilmesi gerekenler |
---|
Paketlerin yüklenebilmesi için sunucunun internet bağlantısının çalışması, Putty veya mRemoteNG gibi yazılımlar aracılığıyla sunucuya komut girilebiliyor olması gerekir. Kurulum sırasında girilecek tüm Linux komutları, en yetkili kullanıcı adı olan “root” ile sisteme erişilerek yazılmalıdır. Tam yetkili olmayan kullanıcılar ile kurulum yapıldığında, bazı komutlar işlenmeyecektir, bu da kurulumun eksik olmasına neden olabilir. |
DNS çözümlemesi için IP adresinin girilmesi
Linux işletim sistemlerinde DNS çözümlemesi için /etc/hosts dosyasına sunucunun IP adresi ve FQDN (tam nitelikli alan adı) girilir. Benzer özellik Windows işletim sistemlerinde C:\Windows\System32\drivers\etc\hosts dosyasında da bulunur.
Linux işletim sistemlerinde text dosyaları düzenlemek için kullanılan “nano” veya “vi” komutu ile “/etc/hosts” dosyasını açıp içine IP adresini ve FQDN adını girebiliriz.
# nano /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.1.100 itsm.belesware.com
PHP diline ait APCU ayarlarının değiştirilmesi için, “/etc/php.d/40-apcu.ini” dosyası düzenlenir ve aşağıdaki tanımlar dosya içinde bulunarak değiştirilir. Satırın başında “;” karakteri varsa kaldırılması gerekir. Bu dosyada noktalı virgül karakteri açıklama satırı olarak kabul edilir, noktalı virgül ile başlayan satır işleme alınmaz.
# nano /etc/php.d/40-apcu.ini
apc.shm_size = 128M
apc.ttl = 600
Itop yazılımının gereksinim duyduğu PHP ayarlarını düzenlemek için “/etc/php.ini” dosyası düzenlenir. Aşağıdaki tanımlar dosyada bulunur ve değiştirilir, satır başında noktalı virgül varsa kaldırılır.
# nano /etc/php.ini
session.cookie_httponly = 1
max_input_vars = 5000
max_multipart_body_parts = 5020
upload_max_filesize = 20M
post_max_size = 25M ; upload_max_filesize dan biraz fazla olmalı
display_errors = On
MariaDB veritabanı ayarlarının düzenlenmesi için “/etc/my.cnf.d/mariadb-server.cnf” dosyasında “[mariadb]” grubunun altına aşağıdaki parametreler girilir.
# nano /etc/my.cnf.d/mariadb-server.cnf
[mariadb]
key_buffer_size=16M
query_cache_size = 32M
query_cache_limit = 1M
max_allowed_packet = 30M
innodb_large_prefix = true
innodb_buffer_pool_size = 512M
innodb_default_row_format = DYNAMIC
innodb_log_file_size = 300M ; must be at least 10 times bigger than max_allowed_packet
Web servisi olarak çalışan Apache Web Server ayarları da yapıldıktan sonra servisler devreye alınabilir. Apache web servisi ayarları için “/etc/httpd/conf.d/itsm.conf” dosyası oluşturulur ve aşağıdaki ayarlar dosyaya kayıt edilir. Buradaki Servername tanımı, kurulan sunucunun FQDN adıyla aynı olmalıdır.
# nano /etc/httpd/conf.d/itsm.conf
ServerName itsm.belesware.com:80
ServerAdmin itsm@belesware.com
Options Indexes FollowSymLinks AllowOverride All Require all granted
Header always set Strict-Transport-Security “max-age=63072000; includeSubdomains;”
PHP, MariaDB ve Apache Web Server ayarları düzeltildikten sonra, sunucunun her açılışında servis yazılımlarının devreye girmesi ve güvenlik duvarında web bağlantılarına izin vermek için aşağıdaki komutlar çalıştırılır.
# systemctl enable –now httpd
# systemctl enable –now mariadb
# systemctl enable –now chronyd
# firewall-cmd –set-default-zone=work
# firewall-cmd –permanent –add-service=http
# firewall-cmd –permanent –add-service=https
# firewall-cmd –reload
Bu komutlarla birlikte, MariaDB veritabanı, Apache Web servisi ve PHP script dili devreye alındı. Şimdi MariaDB servisinin kullanıcı ayarları ile güvenlik ayarları yapılabilir. Önce güvenlik ayarlarının yapılacağı “/usr/bin/mysql_secure_installation” komutu çalıştırılır.
# /usr/bin/mysql_secure_installation
Enter current password for root (enter for none): ( yeni kurulumda şifre olmadığından enter tuşu ile geçilir )
Change the root password? [Y/n] y ( MariaDB root kullanıcısı için belirlenen “my@itoP100” şifresi yazılacak )
Remove anonymous users? [Y/n] y ( Güvenliği artırmak için “anonymous” kullanıcısı kaldırılacak )
Disallow root login remotely? [Y/n] y ( Başka bir cihazdan root kullanıcısıyla bağlantı yapılmayacak )
Remove test database and access to it? [Y/n] y ( “test” veritabanı ve erişim yetkileri silinecek )
Reload privilege tables now? [Y/n] y ( Erişim yetkileri yeniden yüklenerek değişiklikler devreye alınacak )
MariaDB veritabanında, sadece Itop yazılımının kullanacağı “itopuser” adında bir kullanıcı tanımlanacak ve gereken yetkiler verilecek. Aşağıdaki komut verildiğinde, MariaDB veritabanındaki “root” kullanıcısı için önceden belirlenmiş “my@itoP100” şifresi girilmelidir.
# mysql -u root -p
GRANT ALL PRIVILEGES ON . TO ‘itopuser’@’%’ IDENTIFIED BY ‘my@itoP88’;
FLUSH PRIVILEGES;
MariaDB veritabanı ayarları ile birlikte hazırlık aşaması tamamlanır, Itop yazılımının kurulumuna başlanabilir.
Aşağıdaki komutlar Itop yazılımının v3.2.1 versiyonuna ait kurulum dosyalarını internetten indirir ve işletim sistemindeki gerekli ayarlamaları yapar. Dosyaların indirilmesi için daha önce yüklediğimiz “wget” komutu kullanılır.
Farklı bir Itop versiyonu da bu komutlarla kurulabilir, ama önce indirilecek Itop versiyonunun dosya yolu “sourceforge” sitesinden alınmalı ve “wget” komutunun yanına yazılmalıdır. Sunucu kurulumunda Selinux devreye alınmadıysa (güvenlik için devreye alınması önerilir) Selinux komutları hata verebilir, bu durum sistemin çalışması için sorun oluşturmaz.
cd /root
wget https://sourceforge.net/projects/itop/files/itop/3.2.1-1/iTop-3.2.1-1-16749.zip
wget https://github.com/Combodo/itop-toolkit-community/archive/refs/tags/3.2.zip
unzip iTop-3.2.1-1-16749.zip
unzip 3.2.zip
mkdir -p /var/www/html/itsm
mv web/* /var/www/html/itsm
rm -rf web INSTALL LICENSE README
mv itop-toolkit-community-3.2 /var/www/html/itsm/toolkit
chown -R apache.apache /var/www/html/itsm
semanage fcontext -a -t httpd_sys_rw_content_t “/var/www/html/itsm(/.*)?”
restorecon -Rv /var/www/html/itsm/
getsebool -a | grep ‘httpd’
setsebool -P httpd_can_network_connect_db on
setsebool -P httpd_can_network_connect 1
Kurulumun bundan sonraki kısmı web arayüzünden yapıldığı için, bir internet tarayıcı (Firefox, Google Chrome, …) ile sunucunun web adresine bağlanarak devam edilir.
Web arayüzüne bağlanmak için; başta belirlenen IP adresi (192.168.1.100), MariaDB veritabanına bağlanmak için oluşturulan kullanıcı (“itopuser”), bu kullanıcı için belirlenen şifre (“my@itoP88”), Itop portalında tam yetkili kullanıcı (“admin”) ve bu kullanıcı için belirlenen şifre (“my@itoP55”) gerekli olacaktır.
Önce internet tarayıcıya “ http://192.168.100.56/itsm” adresini girerek Itop yazılımının arayüzüne bağlanalım.