Bu makalede, Linux çalıştıran bir sunucuda web ortamının nasıl yapılandırılacağına dair adım adım talimatlar vereceğiz. İlk önce, tipik bir web sunucusunun birkaç etkileşimli bileşenden oluştuğunu anlamanız gerekir:
- HTTP sunucusu
- programlama dili yorumlayıcısı
- veritabanı yönetim sistemi (DBMS)
Web sitenizi yönetmek için ayrıca bir içerik yönetim sistemi (CMS), veritabanı yönetimi için bir web arayüzü ve FTP erişimi kurmanız gerekecektir.
Linux'ta çok popüler bir yapılandırma olan Apache-PHP-MySQL(MariaDB)'yi kurmayı düşünelim. Ayrıca vsftpd ftp sunucusunu, phpMyAdmin'i - veritabanı yönetimi için bir web arayüzü ve bir içerik yönetim sistemi olan WordPress'i kuracağız.
Başlamak için lütfen VPS sunucusu sipariş edin or dedicated serverÖrneğin, Ubuntu Server 18.04 çalıştıran statik IP adresli bir sanal sunucu kullandık. Tüm komutlar kök kullanıcı tarafından çalıştırıldı.
Apache HTTP Sunucusu yapılandırması
1. Montaj
apt install apache2
Kurulum tamamlandığında bir tarayıcı açın ve kontrol edin “http://[sunucunun_ip_adresi]”
Yukarıdaki ekran görüntüsünde buna benzer bir karşılama sayfası görüyorsanız, HTTP sunucunuz çalışıyor demektir.
2. Bir test sayfası oluşturun
Web sitesinin varsayılan kök dizini şudur: “/var/www/html”. Burada az önce gördüğünüz karşılama sayfasını bulabilirsiniz. Ayrı bir dizin oluşturalım “/var/www/siteler” sanal ana bilgisayarlar ve bir alt klasör için “/var/www/siteler/site1” test sitenizin indeks sayfasıyla.
cd /var/www/
mkdir -p sites/site1
echo "<H1>Welcome</H1>" > sites/site1/index.html
Sonuç olarak dosya “/var/www/siteler/site1/index.html” sadece bir satır html kodu içermelidir:
<H1>Welcome</H1>
3. Apache sunucu yapılandırması
Web sitelerinin yapılandırma dosyaları şu şekildedir: “/etc/apache2/siteler-kullanılabilir/” katalog. Varsayılan yapılandırmayı dosyadan alarak yeni bir sanal ana bilgisayar için bir yapılandırma dosyası oluşturalım “000-varsayılan.conf” esas olarak.
cd /etc/apache2/sites-available/
cp 000-default.conf site1.conf
Dosyayı açın “site1.conf” ve değiştir “BelgeKökü” öznitelik. Web sitenizin yolunu değer olarak koyun, bu nedenle bizim durumumuzda bu “/var/www/siteler/site1”
Bu aşamada birden fazla web sitesinin aynı anda çalışmasını yapılandırmamıza gerek yok, bu yüzden varsayılan web sitesini devre dışı bırakıp yeni siteyi etkinleştirebiliriz. Değişiklikleri uygulamak için sunucu yapılandırmasını yeniden yükleyin.
a2dissite 000-default
a2ensite site1
systemctl reload apache2
Bağlantıyı aç “http://[sunucunun _ip_adresi]” tekrar edelim ve varsayılan karşılama sayfası yerine yeni sayfamızın olduğundan emin olalım.
HTTP sunucumuzun yapılandırmasını tamamladık ve bir sonraki adıma geçebiliriz.
FTP sunucusu yapılandırması
1. Montaj
FTP sunucumuzu ve ek bir paketi yükleyelim “db-util”sanal kullanıcıları yapılandırmamız gerekecek
apt install vsftpd db-util
2. Yerel hesap oluşturun
Vsftpd sunucusu erişim izinlerini çok esnek bir şekilde yapılandırmamızı sağlar. Görevlerimiz için ftp kullanıcılarına aşağıdakileri sağlamamız gerekir:
- içeriğine tam erişim “/var/www/siteler/”;
- yukarıdakilerin hepsini devre dışı bırak “/var/www/”;
- sanal hesapla bağlantı;
Yerel bir hesap oluşturun "sanal" giriş izni olmadan ancak ana klasöre erişimle “/var/www/”Bu hesap ftp kullanıcıları tarafından sunucuya bağlanmak için kullanılacaktır
useradd -d /var/www virtual
"Kök" sahibi olacak “/var/www” varsayılan olarak klasör. FTP kullanıcılarının web sitelerinin içeriklerini değiştirebilmelerini sağlamak için, klasörün sahibini değiştirelim. “/var/www/siteler/” alt klasörleri de dahil olmak üzere "sanal".
chown -R virtual:root /var/www/sites
Sonuç olarak, kullanıcı "sanal" içeriğini görebileceksiniz “/var/www/” ve yaz “/var/www/siteler/” alt klasör.
3. yapılandırma
Ana yapılandırma dosyadadır “/etc/vsftpd.conf”, o halde onu açalım ve aşağıdaki gibi düzenleyelim:
#enable virtual users
anonymous_enable=NO
local_enable=YES
guest_enable=YES
guest_username=virtual
#configure permission
write_enable=YES
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
anon_world_readable_only=NO
anon_umask=0022
chroot_local_user=YES
#launch settings
listen=YES
pasv_min_port=30000
pasv_max_port=30999
4. Veritabanını oluşturun
Sanal hesapların verilerini saklamak için bir veritabanına ihtiyacınız olacak.
İlk önce basit bir metin dosyası oluşturalım “kullanıcılar.txt” ana klasörde ve sanal kullanıcıların erişim ayrıntılarını (oturum açma ve parola) her diğer satıra kaydedin. Örneğin, oturum açma bilgilerine sahip bir sanal kullanıcıya ihtiyacımız olacak "ftp" ve şifre “Qwe123”. O zaman dosya şu şekilde görünecektir:
ftp
Qwe123
Veritabanını oluşturalım
db_load -T -t hash -f ~/users.txt /etc/vsftpd_login.db
Varsayılan PAM dosyasını değiştirelim “/etc/pam.d/vsftp” aşağıdaki gibidir:
auth required /lib/x86_64-linux-gnu/security/pam_userdb.so db=/etc/vsftpd_login
account required /lib/x86_64-linux-gnu/security/pam_userdb.so db=/etc/vsftpd_login
Lütfen yolun şu olduğunu unutmayın: “pam_userdb.so” kütüphane farklı olabilir ama gerektiğinde değiştirebilirsiniz.
Değişiklikleri uygulamak için vsftpd sunucusunu yeniden yükleyin.
systemctl restart vsftpd
FTP sunucusunun yapılandırmasını tamamladık.
Bağlantı ayrıntıları:
- ftp://[sunucunun_ip_adresi]
- giriş: ftp
- şifre: Qwe123
PHP sunucu yapılandırması
1. PHP Kurulumu
Bugün PHP'nin en son kararlı sürümü resmi Ubuntu depolarında bulunmayan php 7.4.5'tir. Üçüncü taraf bir depoya bağlanalım ve PHP'nin en son sürümünü yükleyelim.
apt update
apt install software-properties-common
add-apt-repository ppa:ondrej/php
apt update
apt install php7.4
2. Kontrol
PHP'nin yürütülebilmesi için web sayfası dosyasının şu özelliklere sahip olması gerekir: “.php” uzantı. Test sayfamızın adını değiştirelim:
cd /var/www/sites/site1/
mv index.html index.php
Aşağıdaki php satırını dosyaya ekleyin “/var/www/sites/site1/index.php”, dosya şu şekilde görünmelidir:
<H1>Welcome</H1>
<?php
phpinfo();
?>
Değişiklikleri kaydedin ve sonucu tarayıcıda kontrol edin.
Fonksiyonun sonucunu görürseniz “phpinfo()”, PHP yorumlayıcısı düzgün çalışıyor. Şimdi bir sonraki adıma geçelim.
MySQL (MariaDB) yapılandırması
1. Montaj
MariaDB'yi ve MySQL için bir PHP modülü yükleyelim ve ardından Apache'yi yeniden yükleyelim.
apt install mariadb-server php-mysql
systemctl restart apache2
Test sayfasını yenileyin ve PHP yapılandırma tablosundaki PDO bölümüne gidin. Bölümü bulabilirseniz “PDO_mysql”, bu durumda Mysql sürücüsünün doğru bir şekilde yüklendiği anlamına gelir.
Daha sonra MariaDB'nin ilk güvenlik yapılandırmasını yapmamız ve parolayı ayarlamamız gerekecek "Kök" kullanıcıyı devre dışı bırakın, uzaktan erişimi devre dışı bırakın ve tüm misafir hesaplarını silin.
mysql_secure_installation
İlk adımda, "kök" DBMS'ye erişmek için kullanıcının parolasını girin veya parola yoksa Enter'a basın. DBMS için bir parola ayarlanmadığından "kök" kullanıcı kurulumdan sonra sadece basın "Giriş".
Lütfen MariaDB'de işletim sistemi hesaplarıyla hiçbir ilgisi olmayan kendi hesaplarının olduğunu unutmayın. Bu yüzden MariaDB'de ilgilendiğimiz tek kullanıcı "kök".
Bundan sonra, yapılandırıcı bizden kök kullanıcı için parola ayarlamamızı isteyecektir. "Y" yeni şifreyi onaylamak ve girmek için. Bizim durumumuzda, bu “Qwe123”
cevap "Y" Geriye kalan tüm sorulara en sona kadar.
Yapılandırma tamamlandı!
MariaDB erişim detayları:
- Giriş: root
- Şifre: Qwe123
phpMyAdmin yapılandırması
1. Montaj
PHP için gerekli eklentiyi kuralım - mbstring.
apt install php-mbstring
Resmi depoda phpMyAdmin'in yalnızca eski bir sürümü var, bu yüzden yeni sürümü elle yükleyelim.
Projenin resmi web sitesini açın “https://www.phpmyadmin.net/” ve en son arşivi indirin.
Arşivi sunucuya kopyalayın “/var/www/siteler/” Herhangi bir ftp istemcisi kullanarak klasöre gidin.
Klasörü arşivden çıkarın ve adını şu şekilde değiştirin: “phpMyAdmin”. Yüklemeyi unutmayın "fermuarını aç" yardımcı programı. Arşivi arşivden çıkardıktan sonra silebilirsiniz.
apt install unzip
cd /var/www/sites/
unzip phpMyAdmin-5.0.2-all-languages.zip
mv phpMyAdmin-5.0.2-all-languages phpMyAdmin
rm phpMyAdmin-5.0.2-all-languages.zip
Aşağıdaki klasörü oluşturun “/var/www/siteler/phpMyAdmin/tmp” geçici dosyalar için ve herkes için erişimi etkinleştirin. Bunu yapmazsanız, phpMyAdmin geçici klasöre erişimin reddedildiğini bildirecektir.
cd /var/www/sites/phpMyAdmin/
mkdir tmp
chmod 777 tmp
2. Bir takma ad oluşturun
phpMyAdmin ayrı bir sanal sunucu olmadığından ve kök dizinin dışında yer aldığından takma adı yapılandıralım.
Dosyayı açın “/etc/apache2/mods-available/alias.conf” ve bu satırı ekleyin:
Alias /pma “/var/www/sites/phpMyAdmin"
bu bölümün içinde:
<IfModule alias_module>
</IfModule>
Değişiklikleri uygulamak için Apache'yi yeniden yükleyin.
systemctl reload apache2
Alias ayarlandı, bu yüzden phpMyAdmin'e buradan erişebiliriz “http://[sunucunun_ip_adresi]/pma”.
3. Veritabanını hazırlayın
MariaDB'nin ilk yapılandırması sırasında root kullanıcısını kısıtladığımız için phpMyAdmin'e erişmek için kullanılacak tüm izinlere sahip yeni bir hesap oluşturmamız gerekecek.
Ayrıca phpMyAdmin'in ek özelliklerini etkinleştirmek için bir servis veritabanına ve ona erişebileceğimiz bir hesaba ihtiyacımız olacak.
Hesapları oluşturalım
mariadb -u root -p
GRANT ALL PRIVILEGES ON *.* TO 'pma'@'localhost' IDENTIFIED BY 'Qwe123' WITH GRANT OPTION;
GRANT SELECT, INSERT, UPDATE, DELETE ON `phpmyadmin`.* TO 'pmaservice'@'localhost' IDENTIFIED BY 'Qwe123' WITH grant option;
quit
Lütfen ikinci istekteki veritabanı adının Back Sparks'ta “… ON” olduğunu unutmayın. `phpmyadmin`.* TO 'pma'@'localhost' TARAFINDAN TANIMLANAN…”,
Sonuç olarak MariaDB'de iki hesap oluşturulacak:
- Giriş: pma, Şifre: Qwe123Tam erişim, phpMyAdmin'e giriş yapmak için kullanılacak
- Giriş: pmaservice, Şifre: Qwe123Ek özelliklerin çalışması için hizmet hesabı gereklidir
Bir sonraki adımda, bu ayrıntıları yapılandırma dosyasında ayarlayacağız “config.inc.php”.
Daha sonra veritabanını dosyadan içe aktarmamız gerekecek “phpMyAdmin/sql/create_tables.sql”.
Bunu phpMyAdmin yardımıyla içe aktaralım.
Bağlantıyı aç “http://[sunucunun_ip_adresi]/pma”
Giriş girin “pma” ve şifre “Qwe123”
MyCAD'de yazılım Güncelleme ye git "İthalat"tık "Dosya Seç" ve dosyayı seçin ”sql/create_tables.sql” phpMyAdmin'in kök dizininde. Bilgisayarınızda klasör olması gerekiyor “phpMyAdmin” dosyalarla birlikte. Gerekirse arşivden çıkarın.
Tıkla "Sonraki" ithalata başlamak için.
4. yapılandırma
Şablondan yapılandırma dosyasını kopyalayalım
cd /var/www/sites/phpMyAdmin/
cp config.sample.inc.php config.inc.php
Yapılandırma dosyasını açalım “/var/www/siteler/phpMyAdmin/config.inc.php” ve aşağıdaki değişiklikleri yapın:
Öznitelik için rastgele 32 karakterlik bir değer ayarlayın “$cfg['blowfish_secret']”. Bunun için herhangi bir şifre üreteci kullanabilirsiniz.
Tüm satırlardan yorumları kaldırın “phpMyAdmin yapılandırma depolama ayarları” bölümüne gidin ve MariaDB'nin servis hesabının kullanıcı adını ve şifresini ayarlayın "kontrol kullanıcısı" ve "kontrol geçişi" buna göre nitelikler. Bizim durumumuzda, bu pmaservisi ve Qwe123.
Değişiklikleri kaydedin.
phpMyadmin için erişim detayları:
- http://[server’s_ip_address]/pma/
- Giriş: pma
- Şifre: Qwe123
WordPress'i Linux sunucusuna nasıl kurar ve yapılandırırsınız?
1. WordPress paketi ve dosya yerleşimi
Resmi WP web sitesine gidin “https://ru.wordpress.org/” ve arşivi yerel bilgisayarınıza indirin.
Arşivi sunucuya yükleyin “/var/www/siteler/” klasörüne taşıyın ve arşivden çıkarın “wordpress" Klasör.
İçeriğini kopyalayın “/var/www/siteler/wordpress/” kök klasörü “/var/www/siteler/site1/” https://serdartavaslioglu.com sitesi üzerinden ücretsiz erişebilirseniz.
Dosyaları konsol üzerinden root yetkileriyle kopyaladığımız için, dosyanın sahibini değiştirelim. “/var/www/siteler/” İçeriği içeren klasör "sanal"Bu, istemci üzerinden ftp bağlantısına tam erişim sağlamak için gereklidir.
cd /var/www/sites/
tar -xzvf wordpress-5.4-ru_RU.tar.gz
cp -R wordpress/* site1/
chown -R virtual:root /var/www/sites
2. WordPress için bir veritabanı oluşturun
phpMyAdmin'e giriş yapın ve "Veritabanı oluştur"a tıklayın. Rastgele bir veritabanı adı belirtin, bizim durumumuzda "wordpress_db" ve "Oluştur" düğmesine tıklayın.
Sol bölümden yeni veritabanını seçin ve tıklayın “Ayrıcalıklar”
Sonra tıklayın "Kullanıcı hesabı ekle".
Kullanıcı adınızı ve şifrenizi girin (wpservisi / Qwe123) açılan pencerede, kontrol edin “wordpress_db'deki tüm ayrıcalıkları ver” ve tıklayın "Sonraki"
Bir sonraki sayfada tıklayın "Hepsini iptal et" veritabanı düzeyindeki tüm ayrıcalıkları sıfırlamak ve tıklamak için "Sonraki".
3. Linux sunucusunda WordPress yapılandırması
Web sitenizin kök dizinine gidin ve şablondan yapılandırma dosyasını kopyalayın
cd /var/www/sites/site1/
cp wp-config-sample.php wp-config.php
Açın “wp-config.php” dosyasına gidin ve bir önceki adımda oluşturduğumuz veritabanı bağlantı parametrelerini girip değişiklikleri kaydedin.
4. CMS WordPress'i yükleyin
Aşağıdaki bağlantıyı tarayıcıda açın “http://[sunucunun_ip_adresi]/wp-admin/install.php”.
Tüm alanları doldurun ve tıklayın “WordPress’i yükleyin”. Rastgele bir kullanıcı adı ve parola ayarlayın. Bizim durumumuzda, bu wpadmin ve Qwe123 buna göre.
Bu bilgiler WordPress'e erişim sağlamak için kullanılacaktır.
Kurulumu tamamladıktan sonra bağlantıyı açın “http://[sunucunun_ip_adresi]/wp-login.php”, erişim ayrıntılarını girin ve WordPress'e giriş yapın.
Ana sayfada WordPress şablonlarından birini görmelisiniz.
Yapılandırma tamamlandı.
WordPress erişim detayları:
- http://[server’s_ip_address]/wp-login.php
- Giriş: wpadmin
- Şifre: Qwe123