Uzak Masaüstü Port Değiştirme

Windows Serverlarda standart remote desktop Portu: 3389 ‘dur. Bunu Değiştirmek istiyorsak eğer Registry’den bir takım ayarlar yapmalıyız. Bu Portu değiştirmek bir takım deneme yanılma, bruteforce ataklardan vs. koruyacaktır.

Start > Run > regedit

Sunucu üzerinde yaparak Kayıt defteri düzenleyecimizi açıyoruz.

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\TerminalServer\WinStations\RDP-Tcp\PortNumber

kayıt yoluna ulaşıyoruz, RDP-TcpPortNumber sağ tıklayıp edit yapıyoruz açılan ekranda ondalık (decimal) seçiyoruz ve yeni RDP port numaramızı yazıyoruz (vereceğimiz portun başka bir uygulamaya ait olmadığını araştırmalıyız ) örneğin 9009 veriyoruz tamam’a tıklayıp çıkıyoruz.

Serveri reboot ettikten sonra yeni RDP port numaramızdan remote desktop bağlantısı sağlayacaz. RDP ye bağlanırken;

x.x.x.x:PORT

Şeklinde bağlanacağız.

Linux Server SMTP Port Değişikliği

Merhaba;

Linux Server (Centos, Redhat) üzerinde PLESK kullanıyorsanız eğer Alternatif olarak 587 portunu da açmanız gerekecektir bu durumda aşağıdaki yolu izlemeliyiz;

Sunucuya SSH ile eriştikten sonra

root# cd /etc/xinetd.d/
root# nano /etc/services

Komutlarını sırayla veriyoruz ve servis portlarının yer aldığı list karşımıza çıkıyor;

ctrl + w  yapıp smtp yazıp entera basıyoruz

Böylelikle 25/udp 25/tcp  mail servislerini görüyoruz, burayı direkt olarak 587 olarak değiştirebilirsiniz fakat tüm müşterileriniz Türkiye’den erişmediğini düşünerek, 587′e 25′e alternatif olarak eklememizde fayda var.  mail servisinden sonra entera basıp bir satır açalım;

smtp_psa_new 587/tcp mail
smtp_psa_new 587/udp mail

Bu satırları ekleyelim, tab tuşuyla 587/tcp  ve mail’i ayıralım rahat okumak için, sonrasında;

cp smtp_psa smtp_psa_new

Komutuyla, smtp_psa ayarlarını smtp_psa_new olarak kopyalayalım, bu işlemden sonra

nano smtp_psa_new

dosyamızı açalım, dosya başlığına dikkat ederseniz;”smtp_psa” yazıyor bu 25′i portun ayarları, 587 için stmp_psa_new adını verdik o halde

service smtp_psa yazan ilk satırı service smtp_psa_new olarak değiştirelim

Buraya kadar tamam;

/etc/init.d/xinetd restart

bu komut ile extended internet deamon’umuzu yeniden başlatalım ve kontrol edelim 25 ve 587 açıkmı;

netstat -anp | grep xinetd

:25 ve :587 göreceğiz, iki portuda dinliyor olacak sunucumuz.

max_allowed_packet Değerini değiştirmek

Mysql ayarlarınızda yükleme veya diğer işlemler yaparkan Max_allowed_packet_size hatasını alıyorsanız eğer, şu değişiklikleri yapalım;

my.cnf pathini tesbit edin
locate my.cnf veya whereis my.cnf   ile tesbit ettikten sonra standart olarak aşağıdaki gibidir;

editör ile my.cnf ‘yi açalım;

nano /etc/my.cnf

[mysqld] satırının altına

max_allowed_packet=50M

yazıp kaydedip çıkalım.

Mysql servisini yeniden başlattıktan sonra ayarlarımız geçerli olacaktır. 50M değeri örnektir, kapasite ve ihtiyacınıza göre değiştiriniz.

MySQL uzaktan bağlantı ayarları

Mysql Sunucunuza uzaktan Navicat vb. gibi programlarla bağlanmak istiyorsanız MYSQL konsolundan bu bağlantıya ve hangi kullancının uzaktan erişeceğine izin vermeniz gerekiyor.

Plesk panel kullandığınızı varsayarak anlatmaktayım,

SSH ile giriş yaptıktan sonra komut satırında;

mysql -uadmin -p`cat /etc/psa/.psa.shadow` mysql

Komutu ile mysql > komut satırına giriş yapmış oluyoruz;

update user set Host = ‘ipadresi’ where  User = ‘dbkullanici’;

FLUSH PRIVILEGES;

exit

komutlarını vererek belirttiğimiz IP adresine ve belirttiğimiz DB kullanıcısına uzaktan mysql erişimi vermiş oluyoruz. IP Adresi kısmına % yazarsanız her ip adresinden giriş yapabilir. Db kullanıcı kısmına “admin” yazarsanız mysql root admin’i dışarıya açmış olursunuz.

Sunucu üzerinde veya öncesinde bir firewallda mysql portu (3306) kapalıysa açmanız gerekecektir.

SSH Portu Değiştirmek

Güvenliği, izinsiz erişimleri ve brute force ataklarını engellemek, root giriş denemelerini en asgariye indirmek için Linux sunucularınızın SSH portunu değiştirmek gerekiyor.

SSH Portunu değiştirmek için;

nano -w /etc/ssh/sshd_config

İle sshd config dosyamızı açıyoruz,

#Port 22

Port 22 başındaki diyezi # kaldırıp, yeni bir port numarası veriyoruz, dikkat edilecek bir kaç unsur var, 1) Vereceğiniz port numarasını başka bir servisin kullanmıyor olması, 2) Eğer sunucu üzerinde veya network’de bir firewall’da port engellemesi varsa yeni ssh portunuza izin vermeleri veya sunucu üzerindeki firewall’da sizin bunu ayarlamanız gerekir.

Portu değiştirdikten sonra

/etc/rc.d/init.d/sshd restart
veya service sshd restart

komutlarıyla SSHD servisimizi yeniden başlatıyoruz ve artık yeni belirttiğimiz PORT üzerinden SSH erişimi sağlayacağız.

Joomla Bileşen SQL Hatası

Joomla’da bileşen kurulumu yaparken  aşağıdaki gibi bir hata alıyorsanız;

Duplicate entry ‘0′ for key 1 SQL=INSERT INTO `jos_components`

jos_components tablonuzda mükerrer kayıt olduğunu söyler, mükerrer kayıt olmayacağına göre auto_increment yapısı değişmiş olabilir, ne yapabiliriz? ;

panelinizden PHPMYAdmin’e girin ve sol taraftan jos_components tablosunu seçin
sağ tarafta açılan ekranda “id” alanının karşısındaki kalem ikonuna tıklayın
açılan sayfada EKSTRA alanındaki açılır kutudan auto_increment seçin
kaydet butonuna tıklayın

Böylelikle jos_components tablosunun id değerini auto_increment olarak değiştirdik ve yeni bileşenlerin alacağı id değeri çakışmayacak ve duplicate entry yapmayacaktır.

Plesk Panelde PHP Yükseltmek

Linux PLESK üzerinde PHP versiyonunu güncel stable versiyona yükseltmek istiyorsak eğer, atomicorp ile bunu yapabiliriz,

wget -q -O – http://www.atomicorp.com/installers/atomic.sh |sh
yum install php-xml php-pdo
yum install php-pear
mv /etc/php.ini.rpmnew /etc/php.ini

Sırasıyla, teker teker bu komutları verin ve php sürümünü yükseltin. Atomic gpgkey’leri yes ile kabul edin.

Zend ve Ioncube Kurulumu

Kriptolanmş PHP kodlarını de-code edip web serverin yorumlayabilmesi için arada platforma gerek vardır, zend ile kriptolanmış ise zend, ioncube kullanılmış ise ioncube’nin sunucuda php extension olarak hazır olması lazım.

SSH ile bağlantımızı yapalım,

Root’da iken sırasıyla aşağıdaki komutları verelim;

wget ftp://ftp.de.netclusive.de/pub/zend/ZendOptimizer-3.3.3-linux-glibc23-i386.tar.gz
tar -zxvf ZendOptimizer-3.3.3-linux-glibc23-i386.tar.gz
cd ZendOptimizer-3.3.3-linux-glibc23-i386
sh install.sh

sh install.sh Komutundan sonra otomatik yükleme ekranı çıkacaktır, burada eğer özel bir php.ini dizini felan kullanmıyorsanız eğer tekrar ayar yapmanız gerek yok, next ve agree ile ilerleyelim kurulum bittikten sonra apacheye restart atacak ve kurulum bitecek.  Bu işlemde ZEND sunucuya kuruldu.

Zend extension olarak çalışan Ioncube’yi ise şöyle kuracağız

mkdir /usr/local/ioncube/
cd /usr/local/ioncube/
wget http://downloads2.ioncube.com/loader_downloads/ioncube_loaders_lin_x86.tar.gz
tar zxvf ioncube_loaders_lin_x86.tar.gz
cd ioncube
mv * ../
cd ../
rm -rf ioncube
rm -rf ioncube_loaders_lin_x86.tar

Ioncube’yi download ettik, tar.gz ‘yi açtık, bir üst dizine taşıdık ve boş klasör ile tar dosyamızı sildik, burda loaderlar hazır durumda, şimdi ise , php.ini dosyamızda değişiklik yapmamız gerekiyor. PHP Versiyonunuzu biliyorsunuzdur,

php.ini nerden çalışıyor bir görelim;

php -i | grep php.ini

php.ini ‘nin çalıştığı yolu gördük, söz temsil, usr/local/Zend/etc/php.ini  diyebiliriz, editörünüzle php.ini ‘yi açın, nano, vi, pico ne kullanıyorsanız. ve en alt satırlarda [Zend] ibaresini göreceksiniz, bu başlık altında bir takım extensionlar ve pathler var buralara dokunmadan direkt olarak [Zend] ‘in bir alt satırına iniyoruz ve kullandığımız PHP versiyonuna göre ioncube loader path’i ekliyoruz,

zend_extension=/usr/local/ioncube/ioncube_loader_lin_5.2.so
zend_extension_ts=/usr/local/ioncube/ioncube_loader_lin_5.2_ts.so

İoncube loaderleri da php.ini içine ekledik ve işlemimiz tamamlandı, apacheyi restart ettikten sonra yine SSH’da php -v komutunu verip zend ve ioncube sürümlerini vs. görebilirsiniz, hatalı bir kurulum olmuşsa php -v dediğinizde hata mesajınıda verecektir.

SSH MySQL Yedek Almak ve Geri Yüklemek

Mysql Versiyon geçişlerinde veya sitenizi başka bir servera aktarırken Türkçe karakter vb. hatalardan daha az etkilenmek ve sorunsuz tam güvenli bir aktarım yapmak istiyorsanız, SSH üzerinden alınan mysql yedeğinizi yine SSH üzerinden yeni sunucunuza geri yükleyebilirsiniz.

Yedek Alırken Şu Komutu Kullanabiliriz;

mysqldump –opt -Q -u dbkullanıcı -p databaseadı > /klasor/dosya.sql

Bu Komutu verdikten sonra, Database user’ine ait şifreniz sorulacaktır, şifrenizi girdikten sonra sorunsuz yedek alırsa eğer tekrar komut satırına düşeceksiniz.

Yedeklediğiniz dosyayı karşı sunucuya aktarmak için SCP yapabilirsiniz;

scp dosya.sql 192.168.2.1:/root

Diğer Sunucuya .sql uzantılı dosyanızı aktardıktan sonra

mysql -u dbkullanıcı -p databaseadı < /klasor/dosya.sql

Komutu vereceğiz ve tekrar db user şifresi girilecek, sonrasında sorunsuz yüklerse eğer komut satırına düşecektir.

Windows Firewall Kullanmak

Windows sunucunuz üzerinde PLESK kontrol paneli kullanıyorsanız eğer, Windows Firewall’ı aktif hale getirip aşağıdaki portları izin listesine eklemeniz yararınıza olacaktır.

TCP  80    | IIS
TCP  587 | SMTP
TCP  110  | POP3
TCP  21     | FTP
TCP  8443 | PLESK-OVERSSL
TCP 8880 | PLESK-NONSSL
TCP  3389 | UZAKMASAÜSTÜ (Eğer uzakmasaüstü portunuz başka ise, kullandığınız portu giriniz!)
TCP  53      | DNS
UDP  53     | DNS

Ek olarak:  “Add Program” ‘a tıklayıp C:\Windows\system32\inetsrv\inetinfo.exe dosyasını da izin listesine ekleyip Firewall’ınızı aktif hale getiriniz. Advanced sekmesinden ICMP kısmından ALLOW incoming echo request ‘de seçerseniz sunucunuzu ping’e açabilirsiniz, aksi halde ping’e kapalı kalacaktır.

Neler sağlar; Güvenli erişim, çeşitli sistem açıklarından veya açık portlardan gelecek ataklar, virüsler, broadcast virüslerinden vb. korur.

←Önceki