Debian Linux’da SSH üzerinden root olarak Bağlanma

Standard

Merhaba;

Kullanılan sunularda güvenlik nedeniyle varsayılan olarak root olarak direk ssh bağlantısı kapalı durumda oluyor. Ben de her seferinde önce kullanıcı olarak girip ardından root’a yükseliyorum ancak lokal de çalışırken bu koruma gereksiz olacağından bunu deaktif hale getirebiliriz.

Bunun için ssh’ın konfürasyon dosyasını(

1
/etc/ssh/sshd_config

) açıp “PermitRootLogin” kısmını bulunuz, o kısımdan sonrasını silin yes olarak değiştiriniz;

Önceki hali:
PermitRootLogin without-password
düzeltilmiş hali:
PermitRootLogin yes

Ardından ssh servisini yeniden başlatınız;

 # service ssh restart

ya da

/etc/init.d/ssh restart

İşte bu kadar 🙂

Debian linux’da Otomatik Tamamlama ve Sudo Özelliği Ekleme

Standard

Merhaba;

Lokalime sunucu olarak debian kurmam gerekti ve debian kurduğumda yaşadığım ilk 2 sıkıntı [tab] ile tamamlama özelliğinin olmaması ve sudo’nun çalışmamasıydı. Haliyle bu sorunlara çözüm gerekti, önce otomatik tamamlama özelliği ile başlayalım;

apt-get install bash-completion

Ardından konsolda bunun aktif olmasını sağlayalım;

nano /etc/bash.bashrc

Dosyanın şu kısmını bulup, başlarındaki “#” işaretini kaldırarak aktif hale gelmesini sağlayalım;

 # enable bash completion in interactive shells
if ! shopt -oq posix; then
  if [ -f /usr/share/bash-completion/bash_completion ]; then
    . /usr/share/bash-completion/bash_completion
  elif [ -f /etc/bash_completion ]; then
    . /etc/bash_completion
  fi
fi

Eğer sizin dosyanızda yoksa, sonuna ekleyebilirsiniz.

Gelelim sudo’yu yüklemeye;

 # apt-get install sudo

Şimdi de hangi kullanıcıya “sudo” özelliğini kullandırmak istiyorsak onu sudoers dosyasına yazalım;

 # nano /etc/sudoers

Açılan dosyada bu satırlardan sonra, [kullanici-adiniz] yazan kısma kullanıcı adımızı yazalim, CTRL + O ile kaydedip, CTRL + X ile kapatalım.


1
2
3
# User privilege specification
root    ALL=(ALL) ALL
[kullanici-adiniz] ALL=(ALL) ALL

Şimdi yeniden başlatıp aktif olmasını sağlayalım;

 # reboot

Mission complete 🙂

 

 

 

Nginx üzerinde Buffer Size Konfigürasyonu

Standard

Merhaba;

Bu gün wordpress site üzerinde çalışırken bir dosya yüklemesi yapmam gerekti ve dosyanın boyutu 1.8 MB olunca kullandığım plugin sürekli sunucunun dosyayı reddetmesi nedeniyle hata verdi. Başta sorunun php-fpm üzerindeki buffer-size’dan kaynaklandığını düşünüp değerleri yükselttim. Buna rağmen sonuç değişmedi. Sorunu tekrar araştırdığımda (Serdar Aydoğan ve İlhan Pamuk’a teşekkürler) nginx’in bir buffer size’ının olduğunu ve bunu geçen dosyayı direk reddettiğini gördüm. Gelelim bu buffer-size’ı nasıl konfiğürasyonunun nasıl yapıldığına.

$ sudo nano /etc/nginx/nginx.conf

Bu dosya nginx in konfigürasyon ayarlarının barındırıldığı dosya. Burada “Virtual Host Configs ” satırından sonra şöyle bir kod ekliyoruz;

        ##
        # Nginx Buffer Konfigurasyonu
        ##

        client_body_buffer_size 10K;
        client_header_buffer_size 1k;
        client_max_body_size 8m;
        large_client_header_buffers 2 1k;

Bu kod şu anlama geliyoruz, client tarafındaki buffer’ı 10 kb a bölüyor, başlık size’ını 1 kb yapıyor, maximum size’ı ise 8 mb yapıyor (burayı kendi dosya boyutunuza göre değiştirebilirsiniz tabii) . Bu sayede 8 mb ‘dan küçük dosyalar sunucu tarafından reddedilmemiş oluyor.

Konfigürasyonun geçerli olması için nginx’i yeniden başlatıyoruz;

$ sudo service nginx restart

Ayrıca servisin çalıştığını gözlemlemek için de durumuna şu şekilde bakabilirsiniz;

$ sudo service nginx status

Nginx üzerine daha detaylı konfigürasyon ayarları için;

https://www.digitalocean.com/community/tutorials/how-to-optimize-nginx-configuration

banner

Linux’da Path’e Yeni Yol Ekleme

Standard

Merhaba;

Elle program kurulumunda, tüm programlar /usr/bin gibi Path’in gördüğü dizinlere yüklenmemekteler ya da kişisel tercih olarak programlarınızı bir dizin altında tutup yönetmek isteyebilirsiniz. Böyle durumlarda konsoldan programın dizinine her seferinde gidip “./” ile programı çalıştırmak zahmetli olduğundan konsolun PATH’ine programlarınızı tuttuğunuz dizini bir kere bildirirseniz, direk adını yazarak ulaşabilir hale geliyorsunuz .

Gelelim uygulamasına, 2 farklı yöntem kullanabiliriz;

  1. İlgili dizine gidip, konsolda o dizindeyken bu kodu yazmanız kafii:
    
    
    1
    echo "export PATH=$(pwd):\${PATH}" >> ~/.bashrc
  2. Direk konsolu açıp:
    
    
    1
     
    1
    echo "export PATH="gostermek_istediginiz_dizin":\${PATH}" >> ~/.bashrc

    İşlem tamamdır 🙂

Ubuntu 16.04 Spark Kurulumu

Standard

 

Merhaba Arkadaşlar;

Yaptığım staj gereği, bilgisayarıma Spark kurulumu gerçeleştirdim. Kurulum için birkaç adım mevcut, genelde anlatımlarda bu kısımlar olmadığından temiz ve işe yarar bir anlatım yapmak istedim.

Öncelikle Spark Java Virtual Machine (JVM)’e ihtiyaç duyduğu için onun kurulumu ile başlıyoruz.

Repository’sini ekleyelim;


1
<span class="line">sudo apt-add-repository ppa:webupd8team/java</span>

Sistemi güncelleyip, kurulumunu yapalım;


1
2
<span class="line">sudo apt-get update
</span><span class="line">sudo apt-get install oracle-java7-installer</span>

Kurulumun doğru şekilde yapılıp yapılmadığını kontrol etmek için şu komutu verdiğinizde, altındaki çıktının benzerini almalısınız;

sezer@optimist:~$ java -version
java version "1.7.0_80"
Java(TM) SE Runtime Environment (build 1.7.0_80-b15)
Java HotSpot(TM) 64-Bit Server VM (build 24.80-b11, mixed mode)

Spark, yazıldığı dil Scala olduğundan, çalışabilmesi için sisteminize Scala’nın kurulu olması gerekiyor. Onun yüklemesini yapalım;

Skala’yı sitesinden indiriyoruz(ben kurarken bu sürüm vardı, siz kurulum için güncel sürümden faydalanın):


1
<span class="line">wget http://www.scala-lang.org/files/archive/scala-2.11.7.tgz</span>

İndirme tamamlandıktan sonra, dosyayı PATH altına taşıyor ve açıyoruz;


1
2
<span class="line">sudo mkdir /usr/local/src/scala
</span><span class="line">sudo tar xvf scala-2.11.7.tgz -C /usr/local/src/scala/</span>

Scala’yı konsoldan çağırabilmek için .bashrc dosyasının sonuna bu 2 satırı ekleyerek, Scala’nın yolunu gösteriyoruz;


1
2
<span class="line">export SCALA_HOME=/usr/local/src/scala/scala-2.11.7
</span><span class="line">export PATH=$SCALA_HOME/bin:$PATH</span>

Scala’nın aktif olması için konsolu tekrardan başlatıyoruz: (kapa-aç’da olur)


1
<span class="line">. .bashrc</span>

Scala’nın doğru şekilde yüklenip yüklenmediğini kontrol etmek için alttaki komut ve benzeri çıktısını görüyor olmanız gerekmekte;


1
2
3
<span class="line">sezer@optimist:~$ scala -version
Scala code runner version 2.11.7 -- Copyright 2002-2013, LAMP/EPFL
</span>

Şimdiyse Spark’ın kurulumuna geçmeden önce, Github’dan veri çekebilmek için (şart değil, isterseniz sayfasına gidip indirme yaparak bu basamağı pas geçebilir, isterseniz “Github’dan nasıl yazılım indiriliyor?” u bilmiyorsanız buradan öğrenebilirsiniz) git’i kuruyoruz;


1
<span class="line">sudo apt-get install git</span>

Şimdi Spark’ın son sürümünü (şu an için, ileride bu link üzerinden sonraki son sürümünü indiriniz), indiriyoruz;

wget http://www.apache.org/dyn/closer.lua/spark/spark-1.6.1/spark-1.6.1-bin-hadoop2.6.tgz

Şimdi Spark için ana dizinimizde bir dosya oluşturup, onun içerisine aktarıyoruz;

mkdir ~/apache-spark
 cd ~/apache-spark

mv ~/Downloads/spark-1.6.1-bin-hadoop2.6.tgz ~/apache-spark

Şimdi de dosyamızı açıp, çalıştırmayı deniyoruz;


1
 
tar -xzvf 
1
2
3
4
spark-1.6.1-bin-hadoop2.6.tgz
cd spark-1.6.1-bin-hadoop2.6

./bin/spark-shell

Çalıştıysa karşısınıza böyle bir konsol düşer;

scala>

Birkaç örnek ile çalıştığını test edebilirsiniz;


1
2
3
<span class="line"><span class="n">scala</span><span class="o">&gt;</span> <span class="k">val</span> <span class="n">textFile</span> <span class="k">=</span> <span class="n">sc</span><span class="o">.</span><span class="n">textFile</span><span class="o">(</span><span class="s">"README.md"</span><span class="o">)</span>
</span><span class="line"><span class="n">scala</span><span class="o">&gt;</span> <span class="n">textFile</span><span class="o">.</span><span class="n">count</span><span class="o">()
<code>scala&gt; textFile.first()

Az-çok gelecek çıktıları tahmin ediyorsunuzdur 🙂

Kurulum tamamlanmıştır, bir sonraki yazımda görüşmek üzere…

banner