0

TTNet’te PTR Kaydı Nasıl Yapılır?

Ofisinizde mail sunucunuzu barındırıyorsanız ve postalarınızın spam filtrelerine takılmamasını istiyorsanız IP adresinizin PTR kaydı yani reverse dns kaydının olması gerekmektedir.

Bu işlem için TTNet’te kayıtlı olan email adresinizden reverse-dns@turktelekom.com.tr ‘ye statik IP adresinizi, hizmet numaranızı ve mail sunucunuzun adresini (örn: mail.sirket.com) içeren bir mail atmanız yeterli olacaktır.

Kaydın DNS sunuculara yayılıp yayılmadığını aşağıdaki komutla Windows ve OSX işletim sistemlerinden öğrenebilirsiniz:

# nslookup -q=PTR ip.adresiniz 8.8.8.8

Çıktı olarak static.ttnet.net.tr veriyorsa daha oturmamıştır, eğer mail sunucunuzun adresi yazıyorsa PTR kaydınız yayılmış demektir.

0

MySQL Tuning İçin Hazır Script

Sunucunuzda MySQL’in çok fazla işlemci ve memory harcadığını görüyorsanız aşağıdaki scripti kurarak olası nedenleri inceleyebilirsiniz:

# cd ~
# wget https://raw.github.com/rackerhacker/MySQLTuner-perl/master/mysqltuner.pl
# chmod 777 mysqltuner.pl
# ./mysqltuner.pl

Çıktısı sunucunuzda değişebileceği gibi bizdeki örnekte şekildedir:

root@server [~]# ./mysqltuner.pl

-------- General Statistics --------------------------------------------------
[--] Skipped version check for MySQLTuner script
[OK] Currently running supported MySQL version 5.1.63-cll
[OK] Operating on 64-bit architecture

-------- Storage Engine Statistics -------------------------------------------
[--] Status: +Archive -BDB -Federated +InnoDB -ISAM -NDBCluster
[--] Data in MyISAM tables: 65M (Tables: 395)
[--] Data in InnoDB tables: 357M (Tables: 278)
[!!] Total fragmented tables: 53

-------- Security Recommendations -------------------------------------------
[OK] All database users have passwords assigned

-------- Performance Metrics -------------------------------------------------
[--] Up for: 20h 54m 42s (2M q [28.036 qps], 87K conn, TX: 300B, RX: 146M)
[--] Reads / Writes: 97% / 3%
[--] Total buffers: 34.0M global + 2.7M per thread (151 max threads)
[OK] Maximum possible memory usage: 449.2M (45% of installed RAM)
[OK] Slow queries: 0% (310/2M)
[OK] Highest usage of available connections: 9% (14/151)
[OK] Key buffer size / total MyISAM indexes: 8.0M/16.5M
[OK] Key buffer hit rate: 99.9% (7M cached / 5K reads)
[!!] Query cache is disabled
[OK] Sorts requiring temporary tables: 0% (0 temp sorts / 72K sorts)
[OK] Temporary tables created on disk: 7% (1K on disk / 15K total)
[!!] Thread cache is disabled
[!!] Table cache hit rate: 1% (64 open / 5K opened)
[OK] Open file limit used: 7% (74/1K)
[OK] Table locks acquired immediately: 99% (1M immediate / 1M locks)
[!!] InnoDB data size / buffer pool: 357.1M/8.0M

-------- Recommendations -----------------------------------------------------
General recommendations:
Run OPTIMIZE TABLE to defragment tables for better performance
MySQL started within last 24 hours - recommendations may be inaccurate
Enable the slow query log to troubleshoot bad queries
Set thread_cache_size to 4 as a starting value
Increase table_cache gradually to avoid file descriptor limits
Variables to adjust:
query_cache_size (>= 8M)
thread_cache_size (start at 4)
table_cache (> 64)
innodb_buffer_pool_size (>= 357M)

Çıktıdan görülebileceği gibi MySQL veritabanını defragment etmemiz gerekiyor ve query cache’i enable ederek %97’ye %3 olan okuma/yazma işlemlerini hızlandırabiliriz. InnoDB’nin ayarlarını da incelemek gerekir.

2

Centos 6.4 Üzerine PHP5 ve MySQL + phpMyAdmin destekli Apache2 Nasıl Kurulur? (Resimli Anlatım)

LAMP sunucu (Linux, Apache, MySQL, PHP) kısaltmasıdır. Bu makale size LAMP sunucunun nasıl kurulacağını anlatmaktadır.

Centos 6.4 imajını indirmek için Centos Public Mirror’lardan herhangi birini http://www.centos.org/modules/tinycontent/index.php?id=30 adresinden seçeriz.

centospublicmirror

Resimde gösterildiği şekilde HTTP’lerden birine tıklanır ve 6.4 klasörünün altında /isos/x86_64/ (64bit sunucuyu seçiyoruz fakat 32bit sunucular için i386’yı seçmeniz gerekmekte) klasörüne girip CentOS-6.4-x86_64-netinstall.iso dosyasını indiriyoruz(http://centos.arcticnetwork.ca/6.4/isos/x86_64/CentOS-6.4-x86_64-netinstall.iso). Bu imajı dilerseniz CD’ye dilerseniz USB’ye yazabilirsiniz. USB’ye yazmak için bu makaleyi inceleyebilirsiniz.

Centos 6.4 kurulumu oldukça basittir, ekrandaki menüleri takip edip kurulumunu yapabilirsiniz. Eğer verimerkezinde bir sunucunuz varsa size statik bir IP verilecektir, eğer adsl modem arkasındaysanız local bir (LAN) IP’yi static olarak tahsis etmeniz gerekecektir(Örneğin 192.168.0.100). Dış IP’niz için (yani WAN IPsi) servis sağlayıcınızla görüşerek statik IP talep edip cüzi bir fiyata edinebilirsiniz. Dinamik bir IP kullanacaksanız http://www.noip.com/ gibi bir hizmetten ücretsiz faydalanarak websiteniz.no-ip.org gibi bir adres alabilirsiniz.

Centos kurulumunu tamamladıktan sonra LAMP kurulumuna geçebiliriz.

MySQL 5 kurulumu:

MySQL indirip kuruyoruz;

#yum install mysql mysql-server

MySQL’i otomatik başlatmak için gerekli linkleri oluşturuyoruz;

#chkconfig --levels 235 mysqld on
#/etc/init.d/mysqld start

MySQL root şifresini oluşturuyoruz;

mysql_secure_installation komutunu giriyoruz.

[root@server1 ~]# mysql_secure_installation

NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MySQL
SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY!

In order to log into MySQL to secure it, we’ll need the current
password for the root user. If you’ve just installed MySQL, and
you haven’t set the root password yet, the password will be blank,
so you should just press enter here.

Enter current password for root (enter for none):
OK, successfully used password, moving on…

Setting the root password ensures that nobody can log into the MySQL
root user without the proper authorisation.

Set root password? [Y/n] New password: Re-enter new password: Password updated successfully!
Reloading privilege tables..
… Success!

By default, a MySQL installation has an anonymous user, allowing anyone
to log into MySQL without having to have a user account created for
them. This is intended only for testing, and to make the installation
go a bit smoother. You should remove them before moving into a
production environment.

Remove anonymous users? [Y/n] … Success!

Normally, root should only be allowed to connect from ‘localhost’. This
ensures that someone cannot guess at the root password from the network.

Disallow root login remotely? [Y/n] … Success!

By default, MySQL comes with a database named ‘test’ that anyone can
access. This is also intended only for testing, and should be removed
before moving into a production environment.

Remove test database and access to it? [Y/n] – Dropping test database…
… Success!
– Removing privileges on test database…
… Success!

Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.

Reload privilege tables now? [Y/n] … Success!

Cleaning up…

All done! If you’ve completed all of the above steps, your MySQL
installation should now be secure.

Thanks for using MySQL!

[root@server1 ~]#

Apache2 Kurulumu:

Apache2’yi indirip kuruyoruz;

#yum install httpd

Apache2’yi otomatik başlatmak için gerekli linkleri oluşturuyoruz;

#chkconfig --levels 235 httpd on
#/etc/init.d/httpd start

Browser’ımıza http://192.168.0.100 yazarak Apache’nin çalışıp çalışmadığını görüyoruz;

apachesuccess

Yukarıdaki gibi bir sayfa alırsanız Apache’niz başarıyla kurulmuş demektir.

PHP5 Kurulumu:

PHP5 ‘i indirip kuruyoruz;

#yum install php

PHP5 kurulduktan sonra Apache’yi tekrar başlatmamaız gerekiyor;

#/etc/init.d/httpd restart

PHP5 ‘in Çalıştığını Test Etme

Centos sistemlerde Apache’nin default klasörü /var/www/html ‘dir ve bu klasöre girip aşağıdaki dosyayı oluşturuyoruz.

#cd /var/www/html
#nano test.php

nano içerisine aşağıdaki kodu girip CTRL+X‘e basıp y diyip save edip çıkıyoruz;

<?php
phpinfo();
?>

Şimdi Browser’ımıza http://192.168.0.100/test.php yazıp PHP’nin çalışıp çalışmadığını görüyoruz;

phpsuccess

Yukarıdaki gibi bir sayfa alırsanız PHP başarıyla kurulmuş demektir.

PHP İçin MySQL Desteği Kurulumu:

PHP’de MySQL desteği kurmak için php-mysql paketini kurmamız gerekmektedir. Aşağıda diğer standart paketleri de kurmanız tavsiye edilir.

#yum install php-mysql php-gd php-imap php-ldap php-mbstring php-odbc php-pear php-xml php-xmlrpc php-pecl-apc

Değişikliklerin aktif hale gelmesi için Apache’yi restart ediyoruz;

#/etc/init.d/httpd restart

Şimdi http://192.168.0.100/test.php ‘e tekrar girerek değişiklikleri görüyoruz.

mysqlphpsuccess

phpMyAdmin Kurulumu:

MySQL veritabanlarınızı web üzerinden kontrol edebilmek için phpMyAdmin kuruyoruz;

Öncelikle phpMyAdmin resmi Centos repolarına eklenmediği için RPMForge repo’sunu enable ediyoruz:

#rpm --import http://dag.wieers.com/rpm/packages/RPM-GPG-KEY.dag.txt

64 bit sistemler için:

#yum install http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm

32 bit sistemler için:

#yum install http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el5.rf.i386.rpm

phpMyAdmin’i indirip kuruyoruz;

#yum install phpmyadmin

Şimdi phpMyAdmin’i dışarıdan erişebilmek için aşağıdaki gibi konfigüre ediyoruz;

#nano /etc/httpd/conf.d/phpmyadmin.conf

#
# Web application to manage MySQL
#

#<Directory “/usr/share/phpmyadmin”>
# Order Deny,Allow
# Deny from all
# Allow from 127.0.0.1
#</Directory>

Alias /phpmyadmin /usr/share/phpmyadmin
Alias /phpMyAdmin /usr/share/phpmyadmin
Alias /mysqladmin /usr/share/phpmyadmin

Şimdi de phpMyAdmin’in yetkilendirmesini aşağıda gösterildiği gibi cookie’den http’ye dönüştürüyoruz;

#nano /usr/share/phpmyadmin/config.inc.php

[...]
/* Authentication type */
$cfg['Servers'][$i]['auth_type'] = 'http';
[...]

Tekrar Apache’yi restart ediyoruz;

#/etc/init.d/httpd restart

İşlem sonunda http://192.168.0.100/phpmyadmin/ adresine girip kontrol ediyoruz;

phpmyadminsuccess

Yukarıdaki gibi bir sayfa alırsanız phpMyAdmin’iniz kullanıma hazırdır.

0

MySQL Root Şifresi Nasıl Değiştirilir?

MySQL root şifresini MySQL kurarken bir kere atarız ve root olarak erişmek istediğimizde üzerinden aylar geçtiği için unuturuz. Bu durumda aşağıdaki adımları konsolda uygulayarak root şifremizi sıfırlayabiliriz;

#service mysqld stop – MySQL servisimizi kapatırız
#service mysqld_safe --skip-grant-tables &– MySQL’i safe modda açarken grant table’ları skip ederek başlamasını söyleriz
#mysql -u root – root olarak login oluruz
mysql> set password=password('YeniŞifremiz'); – Yeni şifremizi belirleriz
mysql> flush privileges; – Bütün privilege’ları flush ederiz
mysql> quit – Konsol’a çıkarız
#service mysqld stop – MySQL’i durdururuz
#service mysqld start– MySQL’i başlatırız

Not: Bu işlemi yapmak için sunucumuza root olarak bağlanmamız gerekmektedir. Root dışında root yetkileri olan bir hesaptan bağlanıyorsanız lütfen bu makaleyitakip ediniz.