osTicket kurulumu (Ubuntu Server 16.04 LTS)

Helpdesk uygulamaları problem yönetimi yanında teknik bir arşiv oluşturmamızı ve IT problemlerini analiz edebilmemizi mümkün kılan uygulamalardır. Helpdesk denince ise ilk aklıma gelen çözümlerden biri ise kesinlikle osTicket uygulamasıdır. osTicket kurulumu öncesinde uygulamanın özelliklerine kısaca değinecek olursak; osTicket aşağıdaki şeylere kadirdir;

  • Talep ve destek ekibi için görev planlama ve yönetimi.
  • Talep ve görevler için belirlenen ekip veya kişilere eposta ile bilgilendirme desteği.
  • Taleplerin işleyiş ve durumlarının listeleme dışında grafiksel olarak izlenebilmesi (Açık, Kapatılmış, Atanmış).
  • Active Directory ve LDAP kimlik doğrulama desteği.
  • Eklenti ile lokal storage ve Cloud hizmetleri sunan AVS için entegrasyon desteği.
  • Tanımlanabilecek farklı SLA planları ile destek süreçlerini daha verimli hale getirme.
  • Açık kaynak kodlu olduğu için tamamen ücretsiz.

Açık kaynak kodlu ve yine açık kaynak sistemler üzerinde koşabilen osTicket’ın kurulumunu Ubuntu Server 16.04 üzerinde gerçekleştiriyor olacağız. Ubuntu Server üzerinde ise Nginx web server ile PHP 7 ve MySQL osTicket’ı çalıştıran uygulamalar olacak.

Eğer Windows kullanıcısıysanız işe Ubuntu server’a terminal erişimi için Putty uygulamasını indirmekle başlayabilirsiniz. Eğer Linux aşinalığınız yoksa copy-paste özelliği kurulumu daha pratik hale getirebilir.

SSH’la sunucumuza bağlandıktan sonra varsa güncellemelerle işe başlayalım.

[pastacode lang=”bash” manual=”sudo%20apt-get%20update” message=”” highlight=”” provider=”manual”/]

Nginx ve MySQL kurulumunu yapalım.

[pastacode lang=”bash” manual=”sudo%20apt-get%20install%20-y%20nginx%20mysql-server” message=”” highlight=”” provider=”manual”/]

MySQL kurulurken bizden root yani yönetici parolamızı tanımlayarak doğrulamamızı isteyecek.

Kurulum tamamlandığında Nginx ve MySQL servislerini başlatalım.

[pastacode lang=”bash” manual=”systemctl%20start%20nginx” message=”” highlight=”” provider=”manual”/]

[pastacode lang=”bash” manual=”systemctl%20start%20mysql” message=”” highlight=”” provider=”manual”/]

Ardından her iki servisi de otomatik başlayacak şekilde tanımlayalım.

[pastacode lang=”bash” manual=”systemctl%20enable%20nginx” message=”” highlight=”” provider=”manual”/]

[pastacode lang=”bash” manual=”systemctl%20enable%20mysql” message=”” highlight=”” provider=”manual”/]

PHP 7 kurulumuna geçebiliriz.

[pastacode lang=”bash” manual=”sudo%20apt-get%20install%20-y%20php7.0-cli%20php7.0-mysql%20php7.0-cgi%20php7.0-fpm%20php7.0-gd%20php7.0-imap%20php7.0-xml%20php7.0-mbstring%20php7.0-intl%20php-apcu” message=”” highlight=”” provider=”manual”/]

Ve php.ini config dosyasını editleyelim.

[pastacode lang=”bash” manual=”cd%20%2Fetc%2Fphp%2F7.0%2F” message=”” highlight=”” provider=”manual”/]

[pastacode lang=”bash” manual=”nano%20%2Ffpm%2Fphp.ini” message=”” highlight=”” provider=”manual”/]

Burada “;cgi.fix_pathinfo=1” satırında yer alan ; yorumu silerek kaldıralım ve “1” olan değeri “0” olarak değiştirerek kaydedelim. Nano editöründe CTRL+W ile ilgili satırı aratabilir ve CTRL+O ile confing dosyasında yaptığınız değişikliği kaydedebilirsiniz. İlgili satır artık aşağıdaki gibi görünüyor olmalı.

Değişikliklerin uygulanabiliyor olması için aşağıdaki komutları gönderelim ve php-fpm yi otomatik olarak başlayacak şekilde set edelim.

[pastacode lang=”bash” manual=”systemctl%20restart%20php7.0-fpm” message=”” highlight=”” provider=”manual”/]

[pastacode lang=”bash” manual=”systemctl%20enable%20php7.0-fpm” message=”” highlight=”” provider=”manual”/]

Şimdi PHP7’yi Nginx web server ile çalışacak şekilde ayarlayalım.

[pastacode lang=”bash” manual=”cd%20%2Fetc%2Fnginx%2Fsites-available%2F” message=”” highlight=”” provider=”manual”/]

[pastacode lang=”bash” manual=”nano%20default” message=”” highlight=”” provider=”manual”/]

Bunun için dosyayı görüntüdeki satırlarların başlarında yer alan yorum “#” işaretlerini kaldırmalıyız.

Düzenledikten sonra aşağıdaki gibi görünecek olan default sanal host dosyasını kaydederek nano’dan CRTL+X ile çıkalım.

Güncel ayarlarla çalışabilmesi için Nginx’i restart edelim.

[pastacode lang=”bash” manual=”systemctl%20restart%20nginx” message=”” highlight=”” provider=”manual”/]

Ve info ile PHP’nin doğru şekilde çalışıp çalışmadığını kontrol edelim. Bunun için aşağıdaki gibi /var/www/html dizini altında bir php dosyası oluşturarak phpinfo(); fonksiyonunu kullanacağız.

[pastacode lang=”bash” manual=”cd%20%2Fvar%2Fwww%2Fhtml%2F” message=”” highlight=”” provider=”manual”/]

[pastacode lang=”php” manual=”echo%20’%3C%3Fphp%20phpinfo()%3B%20%3F%3E’%20%3E%20info.php” message=”” highlight=”” provider=”manual”/]

Sonucu aşağıdaki linkten görebilirsiniz.

[pastacode lang=”markup” manual=”sunucuipadresi%2Finfo.php” message=”” highlight=”” provider=”manual”/]

Eğer boş bir sayfayla karşılaşmamış ya da bir hata almadıysanız herşey yolunda demektir.

Şimdi osTicket için bir veritabanı ve veritabanı kullanıcısı tanımlayacağız. MySQL’e eriştikten sonra sırasıyla komutlarımızı çalıştıralım.

[pastacode lang=”bash” manual=”mysql%20-u%20root%20-p” message=”” highlight=”” provider=”manual”/]

“PAROLANIZ”

[pastacode lang=”sql” manual=”create%20database%20osticket” message=”” highlight=”” provider=”manual”/]

[pastacode lang=”sql” manual=”create%20user%20osticket%40localhost%20identified%20by%20’parola’%3B” message=”” highlight=”” provider=”manual”/]

[pastacode lang=”sql” manual=”grant%20all%20privileges%20on%20osticket.*%20to%20osticket%40localhost%20identified%20by%20’parola’%3B” message=”” highlight=”” provider=”manual”/]

[pastacode lang=”sql” manual=”flush%20privileges%3B” message=”” highlight=”” provider=”manual”/]

Şimdi osTicket için sanal bir host dosyası oluşturuyoruz.

[pastacode lang=”bash” manual=”cd%20%2Fetc%2Fnginx%2Fsites-available%2F” message=”” highlight=”” provider=”manual”/]

[pastacode lang=”bash” manual=”nano%20osticket” message=”” highlight=”” provider=”manual”/]

Aşağıdaki içeriği olduğu gibi yapıştırarak kaydediyoruz. “server_name osticket.helpdesk.com;” satırı sizin sunucunuza ait domain olacağı için değiştirmeyi unutmayın. Eğer sayfaya erişemezseniz sunucu ip adresini bu alana girmek sorununuzu çözecektir.

[pastacode lang=”python” manual=”server%20%7B%0A%20%20listen%2080%3B%0A%20%20%20%20%20%20%20%20server_name%20osticket.helpdesk.com%3B%0A%20%0A%20%20%20%20%20%20%20%20root%20%20%20%2Fvar%2Fwww%2Fosticket%2Fupload%3B%0A%20%0A%20%20%20%20%20%20%20%20access_log%20%20%2Fvar%2Flog%2Fnginx%2Faccess.log%3B%0A%20%20%20%20%20%20%20%20error_log%20%20%2Fvar%2Flog%2Fnginx%2Ferror.log%3B%0A%20%0A%20%20%20%20%20%20%20%20index%20index.php%3B%0A%20%20%20%20%20%20%20%20client_max_body_size%202000M%3B%0A%20%20%20%20%20%20%20%20client_body_buffer_size%20100M%3B%0A%20%20%20%20%20%20%20%20client_header_buffer_size%2010M%3B%0A%20%20%20%20%20%20%20%20large_client_header_buffers%202%2010M%3B%0A%20%0A%20%20%20%20%20%20%20%20client_body_timeout%2012%3B%0A%20%20%20%20%20%20%20%20client_header_timeout%2012%3B%0A%20%20%20%20%20%20%20%20keepalive_timeout%2015%3B%0A%20%20%20%20%20%20%20%20send_timeout%2010%3B%0A%20%0A%20%20%20%20%20%20%20%20gzip%20%20%20%20%20%20%20%20%20%20%20%20%20on%3B%0A%20%20%20%20%20%20%20%20gzip_comp_level%20%202%3B%0A%20%20%20%20%20%20%20%20gzip_min_length%20%201000%3B%0A%20%20%20%20%20%20%20%20gzip_proxied%20%20%20%20%20expired%20no-cache%20no-store%20private%20auth%3B%0A%20%20%20%20%20%20%20%20gzip_types%20%20%20%20%20%20%20text%2Fplain%20application%2Fx-javascript%20text%2Fxml%20text%2Fcss%20application%2Fxml%3B%0A%20%0A%20%20%20%20%20%20%20%20set%20%24path_info%20%22%22%3B%0A%20%0A%20%20%20%20%20%20%20%20location%20~%20%2Finclude%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20deny%20all%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20return%20403%3B%0A%20%20%20%20%20%20%20%20%7D%0A%20%0A%20%20%20%20%20%20%20%20if%20(%24request_uri%20~%20%22%5E%2Fapi(%2F%5B%5E%5C%3F%5D%2B)%22)%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20set%20%24path_info%20%241%3B%0A%20%20%20%20%20%20%20%20%7D%0A%20%0A%20%20%20%20%20%20%20%20location%20~%20%5E%2Fapi%2F(%3F%3Atickets%7Ctasks).*%24%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20try_files%20%24uri%20%24uri%2F%20%2Fapi%2Fhttp.php%3F%24query_string%3B%0A%20%20%20%20%20%20%20%20%7D%0A%20%0A%20%20%20%20%20%20%20%20if%20(%24request_uri%20~%20%22%5E%2Fscp%2F.*%5C.php(%2F%5B%5E%5C%3F%5D%2B)%22)%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20set%20%24path_info%20%241%3B%0A%20%20%20%20%20%20%20%20%7D%0A%20%0A%20%20%20%20%20%20%20%20location%20~%20%5E%2Fscp%2Fajax.php%2F.*%24%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20try_files%20%24uri%20%24uri%2F%20%2Fscp%2Fajax.php%3F%24query_string%3B%0A%20%20%20%20%20%20%20%20%7D%0A%20%0A%20%20%20%20%20%20%20%20location%20%2F%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20try_files%20%24uri%20%24uri%2F%20index.php%3B%0A%20%20%20%20%20%20%20%20%7D%0A%20%0A%20%20%20%20%20%20%20%20location%20~%20%5C.php%24%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20fastcgi_param%20%20SCRIPT_FILENAME%20%20%24document_root%24fastcgi_script_name%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20include%20%20%20%20%20%20%20%20fastcgi_params%3B%0A%20%20%20%20%20%20%20%20include%20snippets%2Ffastcgi-php.conf%3B%0A%20%20%20%20%20%20%20%20fastcgi_pass%20unix%3A%2Frun%2Fphp%2Fphp7.0-fpm.sock%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20fastcgi_param%20%20PATH_INFO%20%20%20%20%24path_info%3B%0A%20%20%20%20%20%20%20%20%7D%0A%7D” message=”” highlight=”” provider=”manual”/]

Şimdi sanal hostumuzu aktif ederek test edebiliriz.

[pastacode lang=”bash” manual=”ln%20-s%20%2Fetc%2Fnginx%2Fsites-available%2Fosticket%20%2Fetc%2Fnginx%2Fsites-enabled%2F” message=”” highlight=”” provider=”manual”/]

Ardından da

[pastacode lang=”bash” manual=”nginx%20-t” message=”” highlight=”” provider=”manual”/]

Ve Nginx’i restart edelim.

[pastacode lang=”bash” manual=”systemctl%20restart%20nginx” message=”” highlight=”” provider=”manual”/]

Sonuç aşağıdaki gibi olmalı.

osTicket kurulumu için var/www/ altında osticket isimli bir dizin oluşturarak dizine gidelim.

[pastacode lang=”bash” manual=”mkdir%20-p%20%2Fvar%2Fwww%2Fosticket%2F” message=”” highlight=”” provider=”manual”/]

[pastacode lang=”bash” manual=”cd%20%2Fvar%2Fwww%2Fosticket%2F” message=”” highlight=”” provider=”manual”/]

Ve wget komutuyla bugün için en güncel osTicket’i dizine indirelim.

wget http://osticket.com/sites/default/files/download/osTicket-v1.10.zip

“unzip” komutu ile arşivimizi açalım.

[pastacode lang=”bash” manual=”unzip%20osTicket-v1.10.zip” message=”” highlight=”” provider=”manual”/]

Eğer sisteminizde kurulu değilse aşağıdaki komutla kurulumunu kolayca yapabilirsiniz.

[pastacode lang=”bash” manual=”sudo%20apt-get%20install%20unzip” message=”” highlight=”” provider=”manual”/]

Ardından aşağıdaki komutlarla devam edelim.

[pastacode lang=”bash” manual=”cd%20upload%2F” message=”” highlight=”” provider=”manual”/]

[pastacode lang=”bash” manual=”cp%20include%2Fost-sampleconfig.php%20include%2Fost-config.php%20″ message=”” highlight=”” provider=”manual”/]

[pastacode lang=”bash” manual=”cd%20%2Fvar%2Fwww%2Fosticket%2F” message=”” highlight=”” provider=”manual”/]

[pastacode lang=”bash” manual=”chown%20-R%20www-data%3Awww-data%20upload%2F%20″ message=”” highlight=”” provider=”manual”/]

Şu ana kadar yaptıklarımız osTicket’ın çalışabilmesi için gerekli olan adımları tamamlamaktı. Şimdi ise osTicket’ın kurulumuna geçiyoruz. Bazılarımız için biraz sıkıcı görünebilir ama kurulum tamamlandığında buna değeceğini düşünüyorum.

http://HosnameYadaIpAdresiniz/setup/install.php

Sizde de yukarıdaki link aşağıdaki gibiyse yüzmekten yorulsak ta kuyruğuna geldik diyebiliriz. Ha gayret 🙂

Sayfanın alt kısmındaki “Continue” ile devam ediyor ve gerekli yerleri uygun şekilde dolduruyoruz.

Tebrikler! Kurulum tamamlandı.

Artık oturum açıp osTicket’ı özelleştirmeye başlayabiliriz.

Kurulum hala çalıştırılabilir olduğundan setup dizinini silmeyi unutmayın.

[pastacode lang=”bash” manual=”cd%20var%2Fwww%2Fosticket%2Fupload%2F” message=”” highlight=”” provider=”manual”/]

[pastacode lang=”bash” manual=”rm%20-rf%20setup” message=”” highlight=”” provider=”manual”/]

osTicket diğer birçok uygulama gibi default olarak İngilizce olarak kuruluyor. Türkçe dil desteği bulunan osTicket’ın Türkçeleşmesi içinse mevcut sürüm için geçerli dil paketini bu linkten indirmeli ve include/i18n dizini altına almalısınız.

Bunun için de yine Putty ya da WinSCP uygulamasını kullanabilirsiniz.

Daha sonra tek yapmamız gereken ise görüntüdeki gibi artık dil seçeneklerinde yer almış olan Türkçe’yi admin panelden seçmek olacak.

Kurulumdan sonra oturum açtığınızda /include/ost-config.php dosyanının ise izinlerini 644 olarak düzenlememiz gerekiyor. Bunun için de dosyanın bulunduğu dizine gelerek aşağıdaki komutu göndermeniz yeterlidir.

[pastacode lang=”bash” manual=”chmod%20644%20ost-config.php” message=”” highlight=”” provider=”manual”/]

Bu arada yine yönetim panelinden logo ve giriş arkaplan görselini değiştirebilirsiniz. Bundan sonraki adımlar ise osTicket’ı ihtiyaçlarınıza cevap verecek şekilde özelleştirmekten ibarettir. Bu kapsamda talep ve görevler için hazır yanıt şablonlarını düzenleyebilirsiniz. Email sunucunuzdan çekeceğiniz kullanıcı listenizi osTicket’a aktarabilir ve yetkilendirmeleri tanımlayabilirsiniz. Yardım konularına ait kategori ve alt kategorileri planlayarak tanımlayabilirsiniz. Aynı zamanda osTicket üzerinde tanımlayacağınız farklı SLA planları ile uygulamayı daha da kullanışlı hale getirebilirsiniz. Yapabileceğiniz bir diğer şey ise osTicket’ın bu linkteki kullanılabilir eklentilerine bir bakmak isteyebilirsiniz.

Keyifli günler.

Kaynaklar:

  1. Howtoforge.com
  2. Technologyrss.com

  3. osTicket Manual

 

Yorum Ekle

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir