Etiket arşivi: linux

Ubuntu 17.04 – Chromium – Adobe Flash Player was blocked because it is out of date. Update Plugin – Run this time.

Son zamanlarda Chromium’da ‘Chromium – Adobe Flash Player was blocked because it is out of date. Update Plugin – Run this time.‘ uyarısıyla karşılaşıyordum. Bu sorunu halletmek için adobe flash player ile ilgili iki paketi yüklemeniz gerekiyor. Aşağıda bu paketlerin nasıl yükleneceğini bulabilirsiniz.

sudo apt-get install adobe-flash-properties-gtk adobe-flashplugin

Apache ssl virtualhost

Edit default-ssl configuration file;

<IfModule mod_ssl.c>

<VirtualHost _default_:443>
 ServerName blabla1.blabla.com:443
 ServerAdmin webmaster@localhost
 DocumentRoot /directory
 <Directory />
 Options FollowSymLinks
 AllowOverride None
 </Directory>
 <Directory /directory>
 Options FollowSymLinks MultiViews
 AllowOverride All
 Order allow,deny
 allow from all
 </Directory>

 ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
 <Directory "/usr/lib/cgi-bin">
 AllowOverride None
 Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
 Order allow,deny
 Allow from all
 </Directory>

 ErrorLog /var/log/apache2/error.log

 LogLevel warn

 CustomLog /var/log/apache2/ssl_access.log combined

 Alias /doc/ "/usr/share/doc/"
 <Directory "/usr/share/doc/">
 Options Indexes MultiViews FollowSymLinks
 AllowOverride None
 Order deny,allow
 Deny from all
 Allow from 127.0.0.0/255.0.0.0 ::1/128
 </Directory>

 SSLEngine on

 SSLCertificateFile /etc/ssl/certs/ssl-cert-snakeoil.pem
 SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key
 #SSLCertificateChainFile /etc/apache2/ssl.crt/server-ca.crt

 <FilesMatch "\.(cgi|shtml|phtml|php)$">
 SSLOptions +StdEnvVars
 </FilesMatch>
 <Directory /usr/lib/cgi-bin>
 SSLOptions +StdEnvVars
 </Directory>

 BrowserMatch "MSIE [2-6]" \
 nokeepalive ssl-unclean-shutdown \
 downgrade-1.0 force-response-1.0
 BrowserMatch "MSIE [17-9]" ssl-unclean-shutdown
</VirtualHost>

<VirtualHost _default_:443>
 ServerName blabla2.blabla.com:443
 ServerAdmin webmaster@localhost
 DocumentRoot /directory
 <Directory />
 Options FollowSymLinks
 AllowOverride None
 </Directory>
 <Directory /directory>
 Options FollowSymLinks MultiViews
 AllowOverride All
 Order allow,deny
 allow from all
 </Directory>

 ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
 <Directory "/usr/lib/cgi-bin">
 AllowOverride None
 Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
 Order allow,deny
 Allow from all
 </Directory>

 ErrorLog /var/log/apache2/error.log
 LogLevel warn

 CustomLog /var/log/apache2/ssl_access.log combined
 Alias /doc/ "/usr/share/doc/"
 <Directory "/usr/share/doc/">
 Options Indexes MultiViews FollowSymLinks
 AllowOverride None
 Order deny,allow
 Deny from all
 Allow from 127.0.0.0/255.0.0.0 ::1/128
 </Directory>
 SSLEngine on
 SSLCertificateFile /directoryCert
 SSLCertificateKeyFile /directoryCertKeyFile


 <FilesMatch "\.(cgi|shtml|phtml|php)$">
 SSLOptions +StdEnvVars
 </FilesMatch>
 <Directory /usr/lib/cgi-bin>
 SSLOptions +StdEnvVars
 </Directory>

 BrowserMatch "MSIE [2-6]" \
 nokeepalive ssl-unclean-shutdown \
 downgrade-1.0 force-response-1.0
 BrowserMatch "MSIE [17-9]" ssl-unclean-shutdown

</VirtualHost>

 

Belirli bir site hariç tüm istekleri 443’e yönlendirme

 ServerName blabla.com
 ServerAlias www.blabla.com
 RewriteEngine on

 RewriteCond %{HTTP_HOST} ^(www\.)?buharic.com [NC]
 RewriteRule ^ - [L]
 RewriteRule ^/?(.*) https://%{HTTP_HOST}/$1

Yukarıdaki kural ile apache web sunucusuna gelen buharic.com haricinde gelen tüm istekler 443 portuna (https) yönlendirelecektir. Bu kural ile buharic.com isteği gelirse alttaki kurallar çalıştırılmayacak bu sayede yönlendirme yapılmayacaktır.

Ayrıca http://htaccess.madewithlove.be htaccess tester web sitesinden kurallarınızı test edebilirsiniz.

Postgresql uzak sunucudan otomatik backup alma işlemi

sudo apt-get install postgresql-client

Öncelikle backup.sh adında bir script oluşturdum. Script’in içeriği şu şekilde olacak;

BACKUP_DIR=/directory_to_backup 
PGPASSWORD="password" /usr/bin/pg_dump -C -h hostname -U dbuser dbname | gzip > $BACKUP_DIR/"`date +\%Y-\%m-\%d-\%H\%M\%S`.gz"

İlk satırda backup’ın hangi dizine alınacağını belirliyoruz. İkinci satırda ise öncelikle bağlanacağımız postgresql veri tabanının şifresi, pg_dump binary’sinin bulunduğu dizin, sunucunun ip adresi yada hostname’i, veri tabanı kullanıcısının ismi, veri tabanının ismi yazıldıktan sonra backup’ın sıkıştırılma formatı olarak gzip belirleniyor ve backup’ın alınacağı dizine scriptin çalıştırılma tarihi ve saati eklenerek kaydediliyor. Scripti hazırladıktan sonra cron job olarak olarak ekleyip bu işlemi otomatikleştirebilirsiniz. Cron’a aşağıdaki şekilde eklediğiniz iş ile saat 12 ve 18’de olmak üzere günlük iki adet backup alacaktır.

30 12,18 * * * bash /root/backup.sh

Aşağıdaki cron job’ı ise her dakika çalışmaktadır.

*/1 * * * * bash /root/backup.sh

Iptables – fail2ban: Yararlı komutlar (Centos)

Iptables’ı kaydedip, servis restart işleminde silinmesini önlemek

iptables-save | sudo tee /etc/sysconfig/iptables

Kuralları listeleme (port numaraları nümerik olarak)

iptables -L -n

Herhangi bir chain’e accept kuralı ekleme

iptables -I chain_name 1 -s ip_address -j ACCEPT

Fail2ban için exception ekleme; /etc/fail2ban/jail.conf (yada duruma göre jail.local) dosyası içerisinde ilgili satırı düzenlemek gerekiyor.

ignoreip = 127.0.0.1/8 xx.xx.xx.xx # (xx eklemek istediğiniz ip adresi)

Linux: Useful Commands (kullanışlı-faydalı komutlar)

Check if hyper-threading is enabled (Hyper threading aktif mi kontrolü);

lscpu
check Thread(s) per core

Delete all files except specific file extension (belirli bir uzantıya sahip dosyalar haricindeki tüm dosyaların silinmesi);

find . -type f ! -name '*.txt' -delete

Remove all files which has specific extension (belirli bir uzantıya sahip tüm dosyaların silinmesi);

find . -name "*.txt" -print0 | xargs -0 rm

Remove except some files (bazı dosyalar haricinden hepsini silme)

rm */!(align_*)  #dizin ve alt klasörlerdeki align ile başlayan dosyalar hariç tüm dosyaları siler

Delete all empty folders repititive (bir dizin içerisindeki bütün alt boş klasörlerin silinmesi).

find . -type d -empty -exec rmdir "{}" \;

Delete repetitive lines in a file and save as different file (bir dosyadaki tekrarlayan satırların silinip yalın bir şekilde başka bir dosyaya kaydedilmesi);

cat filename.txt | sort | uniq > new_file.txt

Find a file in subfolders (bir dosyayı tüm alt klasörlerde arama);

find ./ -name "filename*"

Get my public ip from commandline (public ip adresinin komut satırıyla bulunması);

curl ipinfo.io/ip

Run command with parameter on terminal (terminalden parametre ile komut çalıştırma);

parameter='ls'
$parameter | wc -l

List empty folders (Boş klasörleri listeleme)

find . -type d -empty

Count of just all files in directory (bir dizindeki alt dizinler dahil bütün dosyaların toplam sayısı)

find * -type f | wc -l

Find unique, distinct lines in text file (text dosyası içerisindeki unique satırları bulma)

sort file_name.txt | uniq > new_text.txt

LINUX: Dropbox Command Line Interface (CLI) Installation

Installation and Using:

mkdir -p ~/bin
wget -O ~/bin/dropbox.py "https://www.dropbox.com/download?dl=packages/dropbox.py"
chmod +x ~/bin/dropbox.py

Using:

 
 ~/bin/dropbox.py help

Source: http://www.dropboxwiki.com/tips-and-tricks/using-the-official-dropbox-command-line-interface-cli