Linux Unix

Asset Yönetimi için Snipe-IT Kurulumu

Günümüzde, bir çok firma, çok çeşitli BT varlıklarına sahiptir. Firmalar ihtiyaçlarına uygun olarak çok sık bir şekilde herhangi bir BT varlığını envanterine eklemekte ve belirli bir süre sonra da bu varlıkların takibini yapmakta zorlanmaktadır. Hangi kullanıcıya hangi bilgisayar verildi ? Kim, hangi yazılımı kullanıyor? Donanımın garanti süresi bitti mi? Hangi varlıklara sahibiz ? gibi sorulara cevap vermek zaman içinde imkansız hale geliyor. Bu problemin önüne geçebilmek için çeşitli firmalar tarafından asset management yani varlık yönetimi uygulamaları geliştirilmiştir.

Bu makalemizde Snipe-IT Asset Management ürününün kurulumunu gerçekleştireceğiz. Snipe-IT, kimin hangi dizüstü bilgisayara sahip olduğunu, ne zaman satın alındığını, hangi yazılım lisanslarının ve aksesuarlarının mevcut olduğunu vb. konuları takip etmek ve BT varlıklarının yönetimini sağlamak için geliştirilmiştir.

Uygulama açık kaynak bir yazılım olmakla birlikte, ücretsiz veriyonu sınırsız kullanıcı ve asset ekleme imkanı veriyor. Ücretli versiyonları Email desteği, API entegrasyonu, SSL ve Yedekleme gibi imkanlar sağlıyor. Ücretsiz versiyonu,  küçük ve orta ölçek bir firmanın asset yönetimi için yeterli olacaktır.

Ürünle ilgili detaylı bilgilere https://snipeitapp.com/ adresinden ulaşabilirsiniz. Ürün kurulumu, API entegrasyonu gibi konular için https://snipe-it.readme.io/docs  adresinde ayrıntılı bir doküman sistemi de bulunmaktadır.

Kuruluma Başlıyoruz!

Snipe-IT, Linux, Windows, Docker ortamlarına kurulabiliyor. Bu çalışmamızda Ubuntu 20.04 üzerine kurulum gerçekleştireceğiz. Sunucumuza sabit bir IP vererek işe başlıyoruz. Bunun için /etc/netplan/00-installer-config.yaml dosyasını nano ile düzenliyoruz.

nano /etc/netplan/00-installer-config.yaml

Dosyayı düzenledikten sonra kaydedip çıkıyoruz ve değişiklikleri uygulamak için netplan apply komutunu çalıştırıyoruz. ifconfig komutuyla verdiğimiz IP’yi kontrol ediyoruz. Eğer ifconfig komutu çalışmaz ise net-tools aracı sunucunuzda yüklü değildir. apt install net-tools komutuyla yükleyebilirsiniz.

Sunucudaki SSH ayarlarını varsayılan olarak bırakıyoruz. Ancak SSH ile ilgili yapılandırma yapmak ve SSH güvenliğini sağlamak isterseniz önceden hazırladığım Linux Sunuculara Güvenli SSH Bağlantısı dokümanından faydalanabilirsiniz.

apt update && apt upgrade komutuyla sunucumuzu güncelliyoruz.

Install LAMP

Snipe-IT çalışmak için LAMP kurulumuna ihtiyaç duyuyor. LAMP, Linux- Apache – MySQL ve PHP  uygulamalarını kullanarak web uygulamalarını geliştirmek için oluşturulan bir platformdur. LAMP detaylarına burada girmeyeceğim ancak Snipe-IT, verileri, MySQL veritabanında tutuyor ve web içeriğini ise PHP ile yazılmış olarak Apache veya Nginx gibi açık kaynak bir web sunucusuyla kullanıcılara sunuyor. LAMP yüklememize yardımcı olacak tasksel aracını yükleyerek kuruluma başlıyoruz.

apt install tasksel

tasksel install lamp-server komutuyla tasksel’i kullanarak LAMP yüklememizi başlatıyoruz.

İşlem tamamlandığında tekrar shell ekranına otomatik olarak geri dönüyoruz.

LAMP Server’ı test etmek için kurulum yaptığınız sunucuya erişebileceğiniz bir bilgisayarın browser’ını kullanarak IP adresini gidiyoruz. Apache problemsiz çalışıyor.

PHP kontrolünü yapmak için phpinfo sayfasından yararlanacağız. Bu sayfa varsayılan olarak bulunmamaktadır. Bu nedenle /var/www/html dizini altına oluşturacağız.

echo -e “<?php\nphpinfo();\n?>” > /var/www/html/phpinfo.php

Ardından browserdan http://ipadresi/phpinfo.php adresine giderek PHP’nin de çalıştığını doğruluyoruz.

Download Snipe-IT

Snipe-IT’yi indirmek için /var/www dizini altına gidiyoruz.

git clone https://github.com/snipe/snipe-it snipeit komutuyla git üzerinden snipe-it’yi bulunduğumuz dizine indiriyoruz. Diğer indirme seçenekleri için https://snipe-it.readme.io/docs/downloading adresini göz atabilirsiniz.

Snipe-IT Database ve Kullanıcı Oluşturma

mysql_secure_installation komutu ile MySQL yapılandırmasına başlıyoruz. İlk olarak MySQL root için bir şifre belirliyoruz. Anonim kullanıcıların kaldırılmasın diyoruz . Uzaktan root erişimi için izinleri ayarlıyoruz. Devamında test veritabanının kaldırıyoruz. Privilage tablolarının yüklenmesine izin veriyoruz.

mysql -u root –p komutu ile veritabanına erişim sağlıyoruz ve create database snipeit; komutuyla Snipe-IT için veritabanı oluşturuyoruz.

create user ‘snipeit_user’@’localhost’ identified by ‘parolanız’; komutuyla bir kullanıcı oluşturuyoruz.

grant all privileges on snipeit.* to ‘snipeit_user’@’localhost’; komutuyla oluşturduğumuz kullanıcıya snipeit veritabanında yetki tanımlıyoruz.

flush privileges; komutuyla ayrıcalıkları yeniliyoruz.

.env Dosyasını Düzenleme

Snipe-IT, sunucu üzerindeki kaynaklara erişim için bir environment dosyası kullanır. Git üzerinden indirdiğimiz dosyalar, /var/www/snipe dizini altına yerleşti. /var/www/snipe dizini içine giderek cp .env.example .env komutuyla .env.example dosyasını .env olarak kopyalıyoruz.

nano .env komutu ile dosyayı içine giriyoruz.

APP_URL satırı, Snipe için kullanılacak URL’yi tanımladığımız değişkendir. Bir alan adımız olmadığı için sunucunun IP adresini tanımlıyoruz.

Aynı dosyanın içinde, veritabanı bilgilerini gireceğimiz DB_DATABASE, DB_USERNAME ve DB_PASSWORD satırlarını doldurup dosyayı kapatıyoruz.

chown -R www-data:www-data storage public/uploads komutuyla Snipe-IT dosyalarının bulunduğu dizindeki (/var/www/snipe) storage ve public/uploads dizinlerinin sahipliğini www-data olarak değiştiriyoruz.

chmod -R 755 storage public/uploads ile dosya izinleri değiştiriyoruz.

Gerekli Uygulamaları Yüklemek

PHP paketlerini yönetmek için bir composer yükleyeceğiz. Root dizinine cd komutu ile geri dönüyoruz.

curl-sS https://getcomposer.org/installer | php komutuyla compeser’ı yüklüyoruz.

Yüklediğimiz dosyayı mv composer.phar /usr/local/bin/composer komutuyla /usr/local/bin/composer dizini altına taşıyoruz.

cd /var/www/snipe komutuyla snipe dizinine tekrar gidiyoruz.

PHP için gerekli eklentileri kuruyoruz.

apt install -y git unzip php php-curl php-mysql php-gd php-ldap php-zip php-mbstring php-xml php-bcmath php-tokenizer 

Composer’ı yüklemesini gerçekleştiriyoruz. Bu işlem yaklaşık 10 dakika kadar sürüyor.

composer install --no-dev --prefer-source

App Key Oluşturmak

Snipe-IT indirip, .env dosyasını yapılandırdıktan sonra php artisan key:generate komutuyla bir app key oluşturuyoruz.

Oluşturduğumuz KEY’i .env dosyası içinde APP_KEY karşısında görebilirsiniz.

Web Server Yapılandırma

/etc/apache2/sites-available dizini altında ams.deneme.com.conf isimli bir yapılandırma dosyası oluşturuyoruz. Aşağıdaki gibi içeriği düzenliyoruz.

<VirtualHost *:80>
        ServerAdmin webmaster@localhost
        <Directory /var/www/snipe/public>var/www
                Require all granted
                AllowOverride All
        </Directory>
        DocumentRoot /var/www/snipe/public
        ServerName 192.168.1.40

        ErrorLog ${APACHE_LOG_DIR}/snipe.log
        CustomLog ${APACHE_LOG_DIR}/snipe.log combined
</VirtualHost>

Düzenlemeyi tamamladıktan sonra dosyayı kaydedip çıkıyoruz ve aşağıdaki sırayla oluşturduğumuz siteyi enable, varsayılanı ise disable yapıyoruz.

a2ensite ams.deneme.com.conf komutuyla yapılandırma dosyasını enable yapıyoruz.

systemctl reload apache2 komutuyla siteyi aktif hale geliyor.

a2enmod rewrite komutuyla modulü yeniden yazıyoruz.

a2dissite 000-default.conf komutuyla Apache’nin vasayılan olarak ayarlı yapılandırma dosyasını disable ediyoruz.

systemctl reload apache2  servisi yeniden çağırıyoruz.

phpenmod mbstring komutuyla mbstring eklentisini aktif hale getiriyoruz.

a2enmod rewrite komutuyla modülü yeniden yazıyoruz.

systemctl restart apache2 servisi restart ediyoruz.

Bir browser’ın adres satırına http//:ipadresi ile Snipe-IT’ye erişim sağlıyoruz.

Create Database Tables ‘ı seçerek devam ediyoruz. Sayfanın yüklenmesini sabırla bekledikten sonra oluşturduğumuz  veritabanınında tabloların oluşturulması tamamlanıyor.

Veritabanından da kontrol ettiğimizde tabloların oluştuğunu görüyoruz.

Next: Create User ile devam ediyoruz. Burada portala erişim sağlamak için bir kullanıcı oluşturuyoruz.

Kullanıcı bilgilerini girdikten sonra Next: Save User ile kullanıcıyı oluşturup Dashboard ekranına yönlendiriliyoruz.

Dashboard ekranında yeni donanım, lisans, çevre birimi veya sarf malzemelerinin kaydını yapabilirsiniz. Dilerseniz NMAP gibi bir araçla ağınızdaki cihazları tarayıp bilgi toplayarak veri girişi de yapabilirsiniz. NMAP ile ilgili makaleme BURADAN ulaşabilirsiniz.

Faydalı olması dileğiyle,

İlgili Makaleler

7 Yorum

  1. Merhaba;
    Öncelikle makaleniz için teşekkürler .
    Tüm adımları gerçekleştirdim sorunsuz ilerledi ancak son adımlara geldiğimde ayarlar bölümünden ağ bağlantıları komple gitti , kablolu bağlantı bölümü hiç yok.
    Sadeve vpn alanı var. Bir türlü çözemedim. NetworkManager restart ettim . enp0s3 böyle bir aygıt yok diyor …
    sorunun kaynağı hakkında yada çözümü ile ilgili bir fikriniz var mı ?

  2. merhaba özgür bey

    systemctl reload apache2 servisi yeniden çağırıyoruz.

    phpenmod mbstring komutuyla mbstring eklentisini aktif hale getiriyoruz.

    a2enmod rewrite komutuyla modülü yeniden yazıyoruz.

    systemctl restart apache2 servisi restart ediyoruz.

    Bir browser’ın adres satırına http//:ipadresi ile Snipe-IT’ye erişim sağlıyoruz.
    son kez apache2 restart yapınca
    Job for apache2.service failed because the control process exited with error code.
    See “systemctl status apache2.service” and “journalctl -xe” for details.
    hatası verdi ve çözemedim yardımcı olabilir misiniz?

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Başa dön tuşu