Linux

Samba ‘da alt klasorlere farkli izinler vermek

Samba ile bir klasor altindaki klasorlere paylasim verme gibi imkanimiz olmuyor. Fakat "acl" paketi ile klasor altindaki diger klasorlere farkli haklar verebilirsiniz. 1.Paketin kurulmasi
apt-get install acl
2. smb.conf dosyasina paylasim ayarlarina nt acl support = yes eklenir.
[Test] path = /samba/test nt acl support = yes writeable = yes
3. Disk tekrar mount edilir ve fstab dosyasi acl,user_xattr duzenlenir.
mount -o remount,acl,user_xattr /samba/test
4. Haklar verilir. (Haklar klasor bazli veriliyor) Kullanici bazli, grup bazli ve diger bazli olarak ayarlayabilirsiniz. Kullanici bazi icin;
setfacl -m u:murat:rwx test2/
Grup bazi icin;
setfacl -m g:samba:rwx test2/ Diger icin o parametresini kullanabilirsiniz.
Daha fazla bilgi icin setfacl --help bakalabilirsiniz. Dosya uzerinde ki haklari gormek icin getfacl dosya_adi komutunu kullanabilirsiniz. Ornek cikti asagidaki gibidir. getfacl test2/ # file: test2/ # owner: root # group: samba user::rw- user:murat:rwx group::r-- mask::rwx other::r-- Kaynak : https://wiki.samba.org/index.php/Setup_and_configure_file_shares_with_Windows_ACLs
Linux

SSH Tunel

Bunun icin sunucunuzun olmasi gerekir.

Digitalocean kullanabilirsiniz. (Linke tiklayarak $10 kazanabilirsiniz)

Konsoldan asagidaki komut kendi bilgilerine gore calistirilir.

 ssh -D 8081 -C root@murat.ws -N

Browser ayarlarinda asagidaki gibi yapilir

Sock host : 127.0.0.1

Sock port : 8081

 
Linux

[Fail2ban]Mysql brute force engelleme

Merhabalar, fail2ban ile mysql'e yapilan brute force ataklari nasil engellenir bir bakalim. 1. Ilk olarak my.cnf icinde mysql error loglarini aktif edelim
log_warnings = 2 log_error = /var/log/mysql/error.log /etc/init.d/mysql restart
2. Fail2ban icin mysql.conf adinda bir filtre olusturalim
vim /etc/fail2ban/filter.d/mysql.conf
ve icine alttaki satirlari yapistiralim, kaydedelim ve cikalim.
[Definition] # Option: failregex # Notes.: regex to match the password failures messages in the logfile. The # host must be matched by a group named "host". The tag "" can # be used for standard IP/hostname matching and is only an alias for # (?:::f{4,6}:)?(?P[\w\-.^_]+) # Values: TEXT # failregex = Access denied for user '.*'@'<HOST>' # Option: ignoreregex # Notes.: regex to ignore. If this regex matches, the line is ignored. # Values: TEXT # ignoreregex =
3. vim /etc/fail2ban/jail.conf dosyasi icine asagidaki satirlari ekleyip cikalim
[mysql] enabled = true port = 6033 filter = mysql logpath = /var/log/mysql/error.log maxretry = 1
4. Filtremizin dogru calisip calismadigini kontrol edelim.
fail2ban-regex /var/log/mysql/error.log /etc/fail2ban/filter.d/mysql.conf
Eger asagidaki bir hata alirsaniz /usr/share/fail2ban/server/datedetector.py dosyasina bir ekleme yapmalisiniz
Found a match for '150813 15:32:54 [Warning] Access denied for user 'root'@'10.9.5.55' (using password: YES) ' but no valid date/time found for '150813 15:32:54 [Warning] Access denied for user 'root'@'10.9.5.55' (using password: YES) '. Please contact the author in order to get support for this format
vim /usr/share/fail2ban/server/datedetector.py dosyasini acip finally: satirini bulup asagidaki satirlari ekleyin.
# MySQL date detector template = DateStrptime() template.setName("YearMonthDay Hour:Minute:Second") template.setRegex("\d{2}\d{2}\d{2} {1,2}\d{1,2}:\d{2}:\d{2}") template.setPattern("%y%m%d %H:%M:%S") self.__templates.append(template)
dogru sekilde ekledikten sonra tekrar filtremizi kontrol edelim.
fail2ban-regex /var/log/mysql/error.log /etc/fail2ban/filter.d/mysql.conf Success, the total number of match is 46 
Herhangi bir hata almadiysaniz guzel engellemeler diyor ve gidiyorum. Sevgiler.