Kategori arşivi: Linux

linux sistemler hakkında sistem yönetimi, sorunlar, görüşler, kurulum örnekleri, konfigürasyonlar, performans ayarları, güvenlik ipuçları ve yapılandırma örnekleri

Wordpress 4.2 İle Gelecek Olan Özellikler

Wordpress 4.1 sürümü geliştirilirken Nisan ayında kararlı bir Wordpress 4.2 sürümü çıkarılacağını duyuran wordpress beni şaşırtmadı değil ancak beta test aşamasına katıldığımda fark ettiğim bir kaç özellikden Wordpress 4.2 sürümü yayınlanmadan bahsetmek istiyorum.

Ayrıca sizlerde beta sürüme katılmak istiyorsanız WP Beta Tester Uygulamasını kullanabilirsiniz.Eklenti eski olmasına rağmen 4.1.1 sürümünde çalışmaktadır.

1.Durum ikonları(Emoji)

Dikkatimi çeken bu özellikde şuanda Wordpressde var olan durum ikonlarına ek facebook tarzı ikonlar getirilmiş ve telefonlarda kullandığımız bir kaç emojidende faydalanılmış.Mobil destekli sitelerdede gerek içerik girerken gerek yorum yaparken bu ikonları kullanabilirsiniz.

wordpress4.2emojigorsel

2.Eklentilerin hızlı ve kolay Kurulumu

Benim en hoşuma giden özelliklerden bir tanesi bu diyebilirim çünkü eklentiye baktınız özelliklerine resimlerine vs sonra kurmak istiyorsunuz ama kur butonuna bastığınız anda sizi yeni bir sayfaya yönlendiriyordu Wordpress ekibi bunu düşünmüş ve değiştirmeye karar vermiş artık yükleme esnasında herhangi bir yönlendirme yapmıyor ve kurulumu gerçekleştiriyor…

plugin-install-wp42

Bu işlem admin panelinin gereksiz yere kasmasını önlüyor aslında yönlendirme yapmıyor ve load değerleri fırlamamış oluyor.Tabi bu yüklemenin getirdiği bir dezavantaj ise eklenti direk olarak aktif oluyor size seçme imkanı sağlamıyor ancak eklentiler kısmına giderek deaktif edebilirsiniz.

3.Temalar Arası Kolay Geçiş

Wordpress ekibi temalar konusunda çıkan sorunlarıda göz önüne almış ve temalar kısmını biraz daha geliştirmiş.Böylelikle temaların yüklenmesini kolaylaştırmayı amaçlamışlar ne derece kolay olduğu tartışılır ancak yaptıkları yenilik oldukça güzel ön izleme,tema yükleme ve temalar arasında geçişi oldukça pratik hale getirmişler ve tek bir alandan kolaylıkla yönetebiliyorsunuz.

Bununla birlikte yapılan bazı ufak değişiklikler

  1. Admin sayfasındaki tanımlı olan renklerdeki sorunlar giderildi
  2. HTTPS kullanan sitelerle ilgili bir kaç önemli güvenlik güncelleştirmesi

Wordpress Ön Tanımlı Avatarı değiştirme

Wordpress de genel olarak kullanılabilir durumda bir kaç adet avatar mevcut isterseniz bunlardan bir tanesini seçebilirsiniz ama hiçbiri hoşunuza gitmediyse function dosyanıza tanımlayacağınız bir kaç kural ile yorumlarda gözükecek olan avatarınızı kalıcı olarak değiştirmeniz mümkün bu yöntem ile dışarıdan çıkışlarıda engellemiş olacaksınız bir bakıma sayfanızın load zamanıda düşecek diyebilirim.

Kullanacağımız kodu internetden aramalarım sonucu buldum ve çalıştığını gördüm kod parçacığı aşağıdaki gibidir yapmanız gereken temanızın function.php içerisine eklemektir.

add_filter( 'avatar_defaults', 'newgravatar' );

function newgravatar ($avatar_defaults)
{
    $myavatar = "https://cdn.mertcangokgoz.com/wp-content/uploads/2013/07/ufakm.jpg";
    $avatar_defaults[$myavatar] = "Mertcan";
    return $avatar_defaults;
}

Burada yapmış olduğumuz işlem panele yeni bir avatar tanımalası oldu bu sayede yeni avatarımızı seçip kullanabiliriz.

Sitemi Nasıl Yönlendirebilirim ?

Bir web sitesi kurdunuz ve sonrasında domain adresinizi değiştirmeniz gerekti eski yedeklerinizi taşıdınız ayarlamalarınızı yaptınız ve sıra yönlendirme işlemine geldi ve yönlendirmeyi .htaccess kullanarak yapmak istemiyorsanız.Aşağıdaki PHP kodu işinize çok yarayacak yapmanız gereken domaininizin bulunduğu eski sunucu içerisindeki index.php içerisine satırları eklemek

header('Location: https://www.mertcangokgoz.com/');

yukarıdaki kodları index.php içerisinde olan <?php tagından hemen sonra yazıp kayıt ettiğiniz taktirde yönlendirme hemen gerçekleşecek ve siteniz yeni adrese yönlenmeye başlayacak

SSH İle Yedek Alma İşlemi

Her hangi bir kontrol paneli kullanmayan yada cpanel den farklı bir panel kullanan arkadaşların en büyük sıkıntılarından bir tanesi sunucudan yedek almakdır hem veritabanı hemde ana dizini yedek almak gerekiyor herhangi bir arayüzümüz olmayacak tamamen SSH üzerinden yedek alacağız.

İlk işlem olarak root kullanıcı adıyla sisteme giriş yapıyoruz.Sisteme root olarak giriş yaptıktan sonra aşağıdaki komutlar ile dizine ulaşın

ls -la
cd Klasöradı

İşlemlerimizden biri tamam aslında dosyalarımızın klasör adını öğrendik ve kontrolümüzü yaptık daha sonra veritabanı işlemi geliyor burada direk olarak yedeğini alacağız bunun için bilmemiz gereken 3 şey var bunlar;

  • Veritabanı Kullanıcı Adı
  • Veritabanı Şifresi
  • Veritabanı Adı

yedeğimizide mysqldump aracılığı ile direk .sql oluşturarak alacağız.bu komut girildiğinde sizden sql şifrenizi isteyecek.

mysqldump --add-drop-table -u Kullaniciadi -p database > yedekadi.sql

Veritabanımızın yedeğini aldıktan sonra sıra dosyalarımızın bulunduğu klasörü tek dosya halinde sıkıştırmaya bunun içinde aşağıdaki kodu kullanabilirsiniz.

tar -vcf yedekadi.tar .

sıkıştırdığımız .tar dosyası içerisinde .htaccessler varmı yokmu yedeği aldıktan sonra bir kontrol etmenizde fayda var.Bu işlemlerden sonra eğer yedeğinizi kuracaksanız.İşlemin tersini uygulamanız gerekecek bunun için ise dizin içerisine

tar -vxf yedekadi.tar

Peki veritabanını nasıl geri yükleriz bunun için ise komutun tersini yapacağız komutumuz şu şekilde

mysql -u kullanıcı adi -p veritabanı < yedekadi.sql

C ile Faktöriyel Hesaplama

C ile girilen bir sayının faktöriyeli’nin kaç olduğunu aşağıda ki yazmış olduğumuz kod aracılığı ile kolaylıkla bulabilirsiniz.Girilen yüksek sayıların değerleri bulunabilsin diye long kullanılmıştır. İnt kullanıldığında belli bir sayıdan sonra 0 değeri göreceksiniz.

#include < stdio.h >
    int main() {
        long a, sayi, faktor;
        printf("Faktoriyeli hesaplanacak sayi girinn");
        scanf("%ld", & sayi);
        faktor = 1;
        for (a = 1; a <= sayi; a++) {
            faktor *= a;
        }
        printf("%ld! = %ldn", sayi, faktor);
        return 0;
    }

C ile Ebob Bulma İşlemi

C ile 2 sayının en büyük ortak bölenini yani Ebob’unu Bulma İşlemini kolay bir şekilde aşağıdaki kod parçacığı ile yapabilirsiniz.Kolay olduğunu düşündüğüm için uygulamayı for döngüsü aracılığı ile yaptım.

#include < stdio.h >
    int main(void) {
        int sayi1;
        int sayi2;
        int ebob;
        int kucuk;
        int h;
        printf("1.sayin");
        scanf("%d", & sayi1);
        printf("2.sayin");
        scanf("%d", & sayi2);
        if (sayi1 > sayi2) {
            kucuk = sayi1;
        } else {
            kucuk = sayi2;
        }
        for (h = kucuk; h >= 1; h--) {
            if ((sayi1 % h == 0) && (sayi2 % h == 0)) {
                ebob = h;
                break;
            } else {
                continue;
            }
        }
        printf("EBOB %dn", ebob);
        return 0;
    }

C ile Sayının Basamaklarını Toplama

C programlama dili ile girilen bir sayının basamaklarını toplayacağız ve bu sayının bölünüp bölünmediğini kontrol edeceğiz.Bu örneği rastgele bir şekilde aklımıza geldiği için yapmıştık aslına bakarsak biraz saçma

#include < stdio.h >
    int main(void) {
        int sayi, tmp1, tmp2, basamakToplami = 0;
        printf("Bir Sayi Girinizn");
        scanf("%d", & sayi);
        tmp2 = sayi;
        while (1) {
            tmp1 = tmp2 % 10;
            basamakToplami += tmp1;
            tmp2 = tmp2 / 10;
            if (tmp2 < 10) {
                basamakToplami += tmp2;
                break;
            }
        }
        printf("Basamak Toplami : %dn", basamakToplami);
        if (sayi % basamakToplami == 0) {
            printf("Tam Bolunuyor n");
        } else {
            printf("Tam Bolunmuyor n");
        }
        return 0;
    }

ubuntu /var/cache/apt/archives/ hatası

Ubuntu işletim sistemi kullanan arkadaşlar en az bir kez bu hatayı almıştır diye düşünüyorum tabi fazla paket vs kurmadıysanız hatayı görmemişde olabilirsiniz nedenini bilmediğim bir şekilde arada çıkmakta idi bende uzun bir uğraş ve aramalardan sonra kalıcı çözümünü bulabildim.hatamız ilk olarak aşağıdaki gibi (hatanın çıkış noktası sanal olarak kurmuş olduğunuz ubuntudan kaynaklanmaktadır.

Gerçek siteme kurulu olan ve bu hatayı alan arkadaşlarda bu çözümü kullanabilirler)

D: /var/cache/apt/archives/ subprocess new pre-removal script returned error exit status 1

apthatagorsel1

Bu hatayı görmüşsen öncelikle bi temizleme aşamasına geçmen gerekiyor.Ubuntu Tweak kurduysanız önceden sistemde birkaç temizlik yaptırabilirsiniz.Bu biraz sistemi rahatlatacaktır tabi virtualbox yada vmware gibi bir uygulama ile sanallaştırdıysanız yüksek ihtimal Ubuntu Tweak kurmamışsınız demektir.

    sudo apt-get clean
    sudo apt-get update && sudo apt-get upgrade

yukarıdaki komut yüzde 80 bu sorunu giderecek eğer çözülmez ise aşağıdaki komutu verebilirsiniz bu komut yüzde 100 olasılıkla çözecektir.tekrar düzenleyecek ve zorlayarak kurulum yapacak

    sudo dpkg --configure -a
    sudo apt-get -f install

WordPress Revisions özelliğini kapatma

Wordpressde eklenen içeriğin kaç kere düzenlendiği yada revize edildiği konusunda ufak bir bilgi tutulur belki fark etmişsinizdir yazıyı yayımlamadan öncede çıkar karşımıza veritabanına ek yük bindirmek dışında bir zararı yok ama kapatalım gitsin her mysql sorgusu bizim için değerli

wp-config.php herhangi bir editör ile açıp

define('WP_POST_REVISIONS', false);

ekliyorsunuz ve özelliği kapatmış oluyorsunuz.kapatmak istemeyen arkadaşlar olacaktır ama limitlemek isteyeceklerdir belki bunun içinde yapılması gereken

define('WP_POST_REVISIONS', true);
define('WP_POST_REVISIONS', 3);

ilk 3 düzenlemeyi yada revizyonu göstermek için ayarlı 3 den sonraki düzenlemeler kesinlikle gösterilmez yansıtılmaz bile

Centos 7 Üzerine Node.js Kurulumu

Bir önceki makalemizde centos 6 için node.js kurulumu yapmıştık tabi ki bilgi sahibi olmadığımız içinde ufak bir anlatım yapamamıştık. Node.js sunucu tarafında javascript ile uygulama geliştirmeye yarar ulan niye javascript bir ton yazılım dili var suyumu çıktı diğerlerinin diyorsanız öyle demeyin javascript hem basit hemde kolaylıkla  ölçeklenebiliyor yani projeniz var ama iş yapmak istiyorsanız ve sorunu direk çözmek istiyorsanız. Server tarafında javascript ile ortaya çıkan node.js sizin için ideal

Gelelim kurulumuna 2 şekilde kurulumu yapabilirsiniz.İlk olarak kaynakdan sistem için derleme yaparak ikincisi ise direk olarak sisteme EPEL paketlerini ekleyerek bana soracak olursanız kaynakdan derlemeniz daha iyi olacaktır çoğu uygulamada olduğu gibi %15 oranında ek performans alma imkanınız doğacak

wget http://nodejs.org/dist/v0.12.0/node-v0.12.0.tar.gz

Sunucumuza dosyamızı indirerek başlayabiliriz kurulumumuza sonrasında tar.gz içerisinden dosyalarımızı çıkartalım

tar xvf node-v0.12.0.tar.gz

Çıkartmış olduğumuz dosyalarımızı derleyeceğimiz için klasör içerisine girişimizi yapalım ve derleme işlemine geçelim

cd node-v0.12.0

Sonrasında aşağıdaki adımları sırasıyla uygulayalım

./configure
make
sudo make install

derleme işlemi sisteminizin hızına göre değişiklik gösterecektir istediğiniz bir sürümü kurmadıysanız ve sisteminizde hali hazırda var olan bir sürüm hakkında bilgi almak istiyorsanız.

node --version

çıktı olarak size o an kurduğunuz node sürümünü yada daha önceden sistemde kurulu olan node sürüm numarasını verecektir.

Ben bunlarla uğraşamam kardeşim benim bilgim kısıtlı daha kolay bir yolu yokmu bunu kurmanın diyen arkadaşlar için ise EPEL Paketi içerisinden kurulumunu kolaylıkla yapabiliriz.

İlk olarak sisteme EPEL paketini bi ekleyelim

sudo yum install epel-release

Paket ekleme işleminin ardından node.js kuruyoruz.

sudo yum install nodejs

Böylelikle kurulum tamamlanmış oluyor ancak uygulama geliştirirken node paket yöneticisi kullanacak olabilirsiniz. Derleme sırasında kurulu olarak geldiği için pek bir sıkıntı yok ancak EPEL üzerinden kurduğumuzda NPM kurulu gelmemekte

sudo yum install npm

Komutu ile kolaylıkla kurabilirsiniz sonrasında komut satırı ile istenilen paketleri ekleyip çıkartabilirsiniz.

Ubuntu’da unutulan şifreyi sıfırlama işlemi

Ubuntu işletim sistemi kullanıyorsunuz ve şifrenizi unuttunuz diyelim ne yapmanız gerekiyor bu gün sizlere bundan bahsetmek istiyorum.Unutulan şifreyi ubuntu ve diğer linux dağıtımlarında sıfırlamak aşırı şekilde kolaydır sadece yapmanız gereken ufak bir kaç işlem var hepsi bu uzatmadan işlemimize başlayalım.

ubuntusifresifirlamagorsel1

öncelikle sistemi yeniden başlatıyoruz. yeniden başlama esnasında "e" tuşuna basıyoruz ve grub ekranına geçip seçimimizi yapıyoruz.

ubuntusifresifirlamagorsel2

arama yapıyoruz gözümüze linux ile başlayan ve devamında /boot/ ile devam eden bir satır görmemiz lazım bu satıra geldikten sonra en sonuna init=/bin/bash  ekliyorsunuz böylelikle yetkilendirmeyi elimize almış oluyoruz.

ubuntusifresifirlamagorsel3

ekledikten sonra CTRL + X yada F10 ile kayıt edip boot edebilirsiniz.Bu işlemlerden sonra komut ekranı karşınıza gelecek burada yapacağınız işlem

mount -o remount,rw /

diski yazılabilir şekilde tekrar mount etme işlemi yapmak ve ardından

passwd

komutu ile şifreyi sıfırlamaktır bundan sonra yapacağınız şifre sisteminize giriş yapabilmenizi doğrudan sağlayacaktır.Yeni şifrenizi tanımladıktan sonra sistemi yeniden başlatmayı unutmayın

reboot -f

yeni şifreniz artık kullanıma hazır…

Apache için Sürüm bilgisini kapatma

Apachede Her ne kadar web server taraflı açıkların yarısından çoğu kapatılmış olsada hala piyasada eski açıklardan etkilenen sunucu ve sistemler olduğu bilinmektedir.Özelikle Apache kullananların yapması gerekenlerden biri sürüm bilgisini hatalara karşı kapatmaktır.Peki bu ne demek oluyor. Hatalı sayfalar olduğu zaman Apachede eğer tanımlanmış birşey yoksa kendi hata sayfalarını gösterir bu gösterilen sayfalarda ise aşağıdaki gibi sürüm bilgisi barınır

serversignatureoffgorsel1

Bunu kapatmak için yapmamız gerekenler oldukça basittir.Genelde server kuran profesyonel kişilerde zaten bu signature dediğimiz bilgiyi kapatırlar.Adımları takip edelim ve bizde sunucumuzda güvenliğimizi arttıralım

CentOS 6

sudo nano /etc/httpd/conf/httpd.conf

Ubuntu

sudo nano /etc/apache2/apache2.conf

ayar dosyamıza ekleyeceğimiz satırlar ise şu şekildedir.

ServerSignature Off
ServerTokens Prod

Sonrasında kayıt edip çıkıyoruz.Bundan sonra yapmamız gereken apache web sunucusunu yeniden başlatmak

CentOS 6

sudo service httpd restart

CentOS 7

sudo systemctl restart httpd.service

Ubuntu

sudo service apache2 restart

En sonunda çıkan sonuç ise şu şekilde olacak ve hatalarınızda artık sürüm bilgisi bulunmayacak

serversignatureoffgorsel2

Peki eklediğimiz kod satırları içerisinde "ServerTokens Prod" vardı diyeceksiniz ki bu ne işe yarıyor.Bu server tarafında Eğer bi cURL yada herhangi bi sorgulama işlemi uygulanırsa serverin sürüm bilgisini vermemesini sağlıyoruz.Böylelikle saldırganın işini bi nebze zorlaştırmış oluyoruz.