Web Sitesi Nasıl Barındırılır (Kendi Sunucunuzu Kurma Kılavuzu)

Sunucu nasıl oluşturulur?


Bir web sitesini bir sunucuda barındırmak için, ellerinizi kirletmeniz ve tüm ortamı kendiniz ayarlamanız gerekir. Aşağıda, çalışan bir sanal özel sunucu kullanarak işlerin nasıl yapılacağına dair genel bir örnek bulacaksınız Ubuntu 18.04

Kısacası yapmanız gerekenler:

    • İlk sunucu kurulumunu gerçekleştirin
    • Bir DNS bölgesi ayarlayın ve alan adınızı gösterin
    • Yazılım yığını yükleme
    • Sanal ana bilgisayar oluşturma
    • Web sitenizi hazırlayın ve çalıştırın

Not; Bu karmaşık adımları atmak istemiyorsanız, bir web barındırma almayı düşünün.

1. İlk Sunucu Kurulum Adımları

Özel bir sunucu veya VPS kiralamaya karar verirseniz, önce sağlam bir temel atmanız gerekir. Bu, sunucunuza bir terminal veya SSH istemcisi üzerinden erişilmesini ve güvenlik ayarlarının ve güncellemelerinin yapılmasını içerir.

Sunucunuza Bağlanın

Sunucunuza bağlanarak başlayın. Aşağıdaki komut işinizi görecektir:

ssh [e-posta korumalı] _server_IP -port

İlk kez bağlanırken, sunucu IP’nizi bilinen ana bilgisayarlar listesine eklemeniz istenebilir. Yazın Evet devam ederseniz sizden root şifresi.

bilinen ana bilgisayarlara sunucu IP'si ekleme

İşte her şey yolunda giderse ekranınızda ne görmeniz gerektiğini gösteren bir örnek.

ilk Ubuntu SSH giriş ekranı

En Son Güncellemeleri Alın

Ubuntu 18.04 sunucunuz için en son güncellemeleri almak için aşağıdaki komutları çalıştırın:

sudo uygun güncelleme
sudo uygun yükseltme

İkinci komutu çalıştırırken bir onay ekranı göreceksiniz. Yazın Y Devam etmek için.

sunucu güncellemelerini onaylama Ubuntu

Yeni Bir Kullanıcı Oluşturun

Ardından, günlük görevler için kök olanı kullanmanız önerilmediğinden, yeni bir kullanıcı eklemeniz gerekir. Buna web yöneticisi diyelim. Kullanıcı oluşturmaya başlamak için şunları yürütün:

adduser web yöneticisi

yeni bir kullanıcı oluşturma Ubuntu

Bir şifre oluşturduktan sonra, (boş bırakabileceğiniz) genel ayrıntıları girmeniz istenir. Sonra yazın Y yeni kullanıcı oluşturma işlemini onaylamak için.

Varsayılan olarak, yeni kullanıcının ihtiyacınız olan her şeyi yapmak için yeterli ayrıcalığı yoktur, bu nedenle bunları manuel olarak eklemeniz gerekir. Bunu nasıl yapacağınız aşağıda açıklanmıştır:

usermod -aG sudo web yöneticisi

Bu kadar! Yeni yönetici kullanıcınız hazır. Kök yerine kullanmaya başlamak için şunu yürütün:

su – web yöneticisi

sistem kullanıcısını değiştirme

Ortak Anahtar Kimlik Doğrulamasını Ayarlama (İsteğe Bağlı)

Kimlik doğrulaması için bir parola kullanmak sizi kaba kuvvet girişimlerine karşı savunmasız bırakır ve sunucunuzu orta derecede risk altına sokar (özellikle benzersiz ve güçlü bir parola oluşturmak için tembelseniz).

Sunucu bütünlüğünü artırmanın en iyi yolu, normal bir şifre yerine SSH anahtarlarını kullanmaktır. Hangi Linux dağıtımını çalıştırdığınızdan bağımsız olarak adımlar aynı olmalıdır. Başlamak çıkış Yap ve sunucunuzda aşağıdaki komutu çalıştırın: yerel bilgisayar yeni bir ortak anahtar oluşturmak için:

ssh-keygen

Ek bir parola ve genel anahtarın kaydedileceği yeri girmeniz istenir. Varsayılan olarak, her şeyi /Users/Your_User/.ssh dizini (aklınızda başka planlarınız yoksa saklayabileceğiniz).

çalışan SSH keygen

İşlem tamamlandığında, SSH anahtarını kullanarak sunucunuza kopyalayın:

ssh-copy-id [e-posta korumalı] _server_IP

Aynısını şu durumlarda root kullanıcınız için de yapabilirsiniz:

ssh-copy-id [e-posta korumalı] _server_IP

SSH anahtarını uzak sunucuya taşıma

Son olarak, sunucunuza tekrar giriş yapmanız gerekecektir. Yalnızca bu sefer, kimlik doğrulaması için SSH anahtarını ve parolasını kullanacaksınız. Parolanız biri tarafından tahmin edilirse, başarılı bir bağlantı kurmak için ortak anahtar gerektiğinden giriş yapamazlar.

SSH anahtarıyla sunucuya giriş yapma

Parola Kimlik Doğrulamasını Devre Dışı Bırak (İsteğe Bağlı)

Sunucunuza yeni oluşturulan SSH anahtarıyla erişebildiğiniz için, normal şifre kimlik doğrulamasını devre dışı bırakmanız önerilir. Bunu yapmak için, nano Metin düzeltici:

sudo nano / etc / ssh / sshd_config

#PasswordAuthentication evet yazan bir satır arayın. # ve değiştir Evet bir Hayır. Nihai sonuç şöyle görünmelidir:

sshd yapılandırmalarında şifre kimlik doğrulamasını devre dışı bırakma

Bu değişiklikleri kaydetmek ve nano düzenleyiciden çıkmak için CTRL + X, yazın Y ve bas Giriş. Ve son olarak, sshd hizmetini yeniden yükleyerek her şeyi uygulayın:

sudo systemctl yeniden yükle sshd

Ve bu kadar! Artık bir sunucuya erişmenin ve sunucuyu yönetmenin daha güvenli bir yolu olarak kabul edilen bir şifre yerine kimlik doğrulaması yapmak için genel bir anahtar kullanacaksınız.

Güvenlik Duvarı Ayarlama

Son olarak, en önemlisi, kendinizi web’de gizlenen tehlikelerden korumak için bir güvenlik duvarı kullanılması önerilir. Karmaşık olmayan Güvenlik Duvarı, iş için en iyi araçlardan biridir. Ayarlamak için yürütün:

sudo uygun-get install ufw

Kurulduğunda, güvenlik duvarı manuel olarak açılmadığı sürece çalışmaz. Şunu kullanarak etkinleştirebilirsiniz:

sudo ufw etkinleştirme

ufw Ubuntu'yu etkinleştirme

Çalışıp çalışmadığını kontrol etmek için yürütün:

sudo ufw status ayrıntılı

2. DNS Bölgesi Ayarlama

Bir sonraki zorluk, bir etki alanı adı ile sunucu arasında bağlayıcı malzeme görevi gören bir DNS bölgesi oluşturmak olacaktır. Bunu iki küçük adıma ayırabiliriz:

  1. Sunucunuzda bir DNS bölgesi kurma
  2. Alan adı kayıt sitenizde özel ad sunucuları oluşturma

Yeni DNS Bölgesi Oluşturma

Yeni bir DNS bölgesi oluşturmak için bind9 adlı bir araç kullanacağız. Sonuçta bu, bir web sitesini IP adresi yerine alan adı aracılığıyla yüklememizi sağlayan hizmettir.

Bind9’u Ubuntu 18.04 sunucunuza kurmak için, yürütün:

sudo uygun-get install bind9

Kurulduktan sonra, tüm dosyalar / Etc / bağlama dizin. Önce ona gidelim:

cd / etc / bind

Her şeyi düzenli ve düzenli tutmak için DNS bölgelerimiz için ayrı bir dizin oluşturacağız:

sudo mkdir -p bölgeleri

Alanımız için yeni bir DNS bölge dosyası oluşturalım. Kullanacağız domain-example.com gösteri amacıyla (gerçek alan adınızla değiştirmelisiniz).

sudo nano bölgeleri / domain-example.com

DNS bölge snippet’i örneği:

;
; Domain-example.com için BIND veri dosyası
;
3TL TL
@ IN SOA ns1.etki-alani.com.tr. admin.domain-example.com. (
1; Seri
3s; 3 saat sonra yenileme
1h; 1 saat sonra tekrar dene
1w; 1 hafta sonra sona erecek
1h); 1 günlük negatif önbellekleme TTL’si
;
@ IN NS ns1.etki-alanadi.com.tr.
@ IN NS ns2.domain-example.com.

domain-example.com. YOUR_SERVER_IP’İNİZDE
ns1 BİR YOUR_SERVER_IP’DE
ns2 BİR YOUR_SERVER_IP’DE
www IN CNAME alan adı-example.com.
postanızda posta
ftp IN CNAME alan adı-example.com.
domain-example.com. IN MX 10 domain-example.com.

Cihazınızın tüm örneklerini değiştirdiğinizden emin olun. Your_Server_IP ve domain-example.com gerçek değerlerle. Bölge dosyasını tuşuna basarak kaydedin CTRL + X ve sonra Y değişiklikleri onaylamak.

Şimdi, yerel yapılandırmayı düzenlememiz ve yeni oluşturulan DNS bölgemizin konumunu belirtmemiz gerekecek. Bu, sunucunun hangi bölge dosyasının hangi etki alanı adına ait olduğunu bilmesini sağlar.

sudo nano adlı.conf.local

Değiştirirken dosyanın altındaki aşağıdaki satırları yapıştırın domain-example.com gerçek web sitesi adresinizle.

bölge "domain-example.com" {
master yazın;
dosya "/etc/bind/zones/domain-example.com";
};

Basın CTRL + X ve girdi Y değişikliklerinizi kaydetmek ve nano düzenleyiciden çıkmak için.

Aşağıdaki komutu yürüterek her şeyin doğru bir şekilde eklenip eklenmediğini test edebilirsiniz:

sudo adlı-checkzone domain-example.com /etc/bind/zones/domain-example.com

dns bölgesini doğrulama

Son olarak, sunucunuzun DNS hizmetini yeniden başlatmak ve çalıştığından emin olmak için şu iki komutu çalıştırın:

sudo /etc/init.d/bind9 yeniden başlatma
sudo /etc/init.d/bind9 başlangıç

Bu noktada, DNS bölgesi sunucu tarafınızdan hazırdır. Sonlandırmak için alan adı kayıt sitenizde özel ad sunucuları girişleri oluşturmanız gerekir.

Alanınız İçin Özel Ad Sunucuları Oluşturun

İki ad sunucusu belirttiğimizden (ns1.domain-example.com ve ns2.domain-example.com) DNS bölgesi örneğimizde, bu girişleri alan adı kayıt kuruluşunda oluşturmanız ve kullanmamız gerekir.

Girişlerin şöyle görünmesi gerekir:

Özel Ad SunucusuNoktalar
ns1.domain-example.comYour_Server_IP
ns2.domain-example.comYour_Server_IP

alt ad sunucusu oluşturma

Oluşturulduktan sonra alan adınızı bu yeni ad sunucularına yönlendirmeniz gerekir.

ad sunucularını güncelle

3. LAMP Yığını Takın

LAMP, ağın en çok kullanılan yazılım yığınlarından biridir. Linux, Apache HTTP Sunucusu, MySQL / MariaDB ve PHP için kısadır. Bir siteyi barındırmadan önce, tüm bu bileşenlerin sunucunuzda bulunduğundan emin olmanız gerekir. Ubuntu 18.04’ü kullanarak bunları kurma işleminin nasıl görüneceği aşağıda açıklanmıştır:

Apaçi

Apache HTTP Sunucusu, sunucunuzla birlikte gelen varsayılan paketlere zaten eklenmiş olabilir. Değilse, yürütün:

sudo apt-get install apache2

Apache'yi yükle

Bir güvenlik duvarı olduğundan, bu bağlantı noktalarının açık olduğundan emin olmalıyız, çünkü Apache aksi halde düzgün çalışmaz. Güvenlik duvarı üzerinden izin vermeniz gerekenler şunlardır:

sudo ufw izin 80 / tcp
sudo ufw izin 443 / tcp

Ardından, değişikliklerin uygulandığından emin olmak için yeniden başlatın:

sudo ufw yeniden yükle

Bu noktada, şu adresi ziyaret ederek görmeniz gerekenler: Sunucunuzun IP adresi bir tarayıcı aracılığıyla:

varsayılan Apache2 sayfası

PHP

WordPress’in ihtiyaç duyduğu birkaç ekstra modüle sahip en son PHP sürümünü edinmek için, yürütün:

sudo uygun-almak yüklemek php php-ortak php-mysql php-gd php-cli

PHP kurulumunu onayla

Aşağıdakileri yazarak sunucunuzda hangi PHP sürümünün yüklü olduğunu kontrol edebilirsiniz:

php -v

PHP sürümünü kontrol et

MySQL / mariadb

MariaDB ve MySQL, Linux’ta veritabanı sunucunuz için en iyi seçeneklerden ikisidir. Bu örnek için MariaDB’yi kullanacağız. Sunucunuza yüklemek için şunu yürütün:

sudo uygun-almak yüklemek mariadb-sunucu mariadb-istemci

Mariadb'i yükle

İşiniz bittiğinde, paketle birlikte gelen ek bir komut dosyası kullanmanız gerekir. Veritabanı sunucunuz için temel güvenlik önlemlerini oluşturur. Yazarak başlayın:

sudo mysql_secure_installation

İlk adımda, kök MySQL şifresini girmeniz istenecektir. Basın Giriş henüz oluşturulmadığından devam etmek için düğmesini tıklayın. Ardından komut satırı arayüzünde görüntülenen talimatların geri kalanını uygulayın.

Mariadb güvenli kurulum

Son olarak, veritabanı sunucumun çalışıp çalışmadığını kontrol ederek şunları yapabilirsiniz:

sudo systemctl durumu mysql

4 Sanal Ana Makine Oluşturma

Bir sonraki görev, web sitesi dosyalarınız için özel bir dizin oluşturmak olacaktır. Çalışma dizininizi değiştirerek başlayın:

cd / var / www / HTML

Alan adınız için bir klasör ve içinde ek bir klasör oluşturmak için bu komutu kullanın:

sudo mkdir -p domain-example.com/public_html

Sonra, Web yöneticisi daha önce sahibi kullanarak oluşturduğumuz kullanıcı:

sudo chown -R web yöneticisi: web yöneticisi alan adı-example.com/public_html

Ayrıca, okuma izinlerinin Apache kök dizinine uygulandığından emin olmanız gerekir. Bu durumda:

sudo chmod -R 755 / var / www / html /

Bu noktada, Apache tüm ayarları 000-default.conf dosya. Bu dosyanın içeriğini kopyalamamız ve alan adımız için ayrı bir dosya oluşturmamız gerekecek. Sanal ana bilgisayar yapılandırmasının bir şablonunu kopyalamanın en kolay yolu aşağıdaki komutu kullanmaktır:

sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/domain-example.com.conf

Esasen, bu dosyanın aynı dizinde farklı bir adla bir kopyasını oluşturur. Bu, Apache web sunucunuza bir alan adının kök dizininin, hata günlüğünün ve diğer önemli yolların konumunu söyleyen dosyadır. İçeriğini değiştirmek için nano kullanacağız:

sudo nano /etc/apache2/sites-available/domain-example.com.conf

Apache yapılandırma örneği:

# SunucuAdı yönergesi, istek şemasını, ana bilgisayar adını ve bağlantı noktasını ayarlar.
# sunucu kendini tanımlamak için kullanır. Bu, oluştururken kullanılır
# yönlendirme URL’si. Sanal ana bilgisayarlar bağlamında, SunucuAdı
#, isteğin Ana Bilgisayar: başlığında hangi ana bilgisayar adının görünmesi gerektiğini belirtir
# bu sanal sunucu ile eşleşir. Varsayılan sanal ana bilgisayar (bu dosya) için bu
# değeri ne olursa olsun son çare hostu olarak kullanıldığından belirleyici değil.
# Ancak, başka sanal ana bilgisayarlar için açıkça ayarlamanız gerekir.

ServerAdmin [e-posta korumalı]
DocumentRoot /var/www/html/domain-example.com/public_html
SunucuAdı domain-example.com
ServerAlias ​​www.domain-example.com

# Kullanılabilir loglevel’ler: trace8, …, trace1, hata ayıklama, bilgi, uyarı, uyar,
# hata, kritik, uyarı, ortaya çıktı.
# Özellikle loglevel’i yapılandırmak da mümkündür.
# modüller, ör..
#LogLevel info ssl: uyar

ErrorLog $ {APACHE_LOG_DIR} /error.log
CustomLog $ {APACHE_LOG_DIR} /access.log birleştirildi

# Conf / kullanılabilir yapılandırma dosyalarının çoğu için,
# küresel düzeyde etkin veya devre dışı bırakılmışsa,
# yalnızca belirli bir sanal ana makine için bir satır içerir. Örneğin,
# aşağıdaki satır yalnızca bu ana bilgisayar için CGI yapılandırmasını etkinleştiriyor
# ile global olarak devre dışı bırakıldıktan sonra "a2disconf".
# Conf-available / serve-cgi-bin.conf dosyasını ekleyin

Domain-example.com’un tüm örneklerini gerçek etki alanı adınızla değiştirdiğinizden emin olun. Dosyayı kaydetmek için CTRL + X ve yazarak onaylayın Y. Nihai sonuç şöyle görünmelidir:

Apache'ye etki alanı yapılandırması ekleme

Bu noktada, varsayılan sanal ana bilgisayar yapılandırma dosyasını kapatmanız ve yeni oluşturulan dosyayı kullanmanız gerekir. Bu komut onu devre dışı bırakır:

sudo a2dissite 000-default.conf

Ardından, en son oluşturulan yapılandırma dosyasını aşağıda gösterildiği gibi ekleyin:

sudo a2ensite domain-example.com.conf

Son olarak, değişikliklerin geçerli olması için Apache’yi yeniden başlatmanız gerekir. Bunu çalıştırarak yapabilirsiniz:

sudo systemctl yeniden yükle apache2

LAMP’ı sunucunuza başarıyla yüklediniz. Alan adınız zaten sunucuya yönlendirildiğinden, DNS’in tam olarak yayılması için birkaç saat beklemeniz gerekebilir. Ardından, alan adınızı tarayıcı aracılığıyla ziyaret ederken benzer bir ekran görmelisiniz.

etki alanı kök dizini içeriği

5. WordPress Kurun (veya Web Sitesi Yükleyin)

İlk sunucu kurulumu sonunda tamamlandığından, üzerinde bir web sitesi barındırmanın zamanı geldi. Bu bölümde, size bir WordPress sitesini nasıl çalıştıracağınıza dair genel bir örnek göstereceğiz.

Yeni Bir MySQL Veritabanı ve Kullanıcı Oluşturma

Terminal üzerinden MySQL arayüzüne erişerek başlayın:

sudo mysql

>Yeni bir veritabanı oluşturmak için aşağıdaki sözdizimini kullanın:

VERİ TABANI OLUŞTUR wpdatabase;

Ardından, yeni bir kullanıcı oluşturun ve şifreyi belirtin:

‘SuperSecurePassword123’ TARAFINDAN TANIMLANAN KULLANICI ‘wpuser’ @ ‘localhost’ OLUŞTUR;

Ardından, yeni oluşturduğunuz kullanıcıya aşağıdakilerle yönetici ayrıcalıkları atayın:

Wpdatabase’de TÜM AYRICALIKLARI VERİN. * ‘Wpuser’ @ ‘localhost’;

Bu kadar! MySQL kullanıcı ve veritabanınız harekete geçmeye hazır. Arabirimi kapatmak için şunu yazın:

çıkış

WordPress Dosyalarını Sunucunuza Taşıma

Son olarak, asıl olarak, gerçek web sitesi dosyalarını alan adınızın kök dizinine yüklememiz gerekir. Adım adım açıklayacağımız iki yaklaşım vardır:

  • En son WordPress sürümünü almak için wget komutunu kullanma
  • Bir FTP istemcisini yapılandırma (FileZilla gibi)

Yöntem 1: Komut Satırı Araçlarını Kullanma

İlk yol, wget. Sunucunuzda kullanmak için yüklemeniz gerekir:

sudo uygun-get install wget

Ardından, çalışma dizininizi etki alanı adınızın kök klasörüne değiştirin:

cd /var/www/html/domain-example.com/public_html

Web’den WordPress’in en son sürümünü indirmek için wget komutunu kullanın:

wget https://www.wordpress.org/latest.zip

Ardından, arşivin tüm içeriğini aşağıdakileri kullanarak çıkarın:

zip.zip.zip

Varsayılan olarak, tüm dosyalar adlı yeni bir dizinde görünür WordPress (web sitenizin üzerinden çalışmasına neden olabilir domain-example.com/wordpress). Her şeyin doğru bir şekilde çalışması için, dizindeki tüm dosyaları yukarıdaki dizine taşımamız gerekir. Bunu nasıl yapacağınız aşağıda açıklanmıştır:

cd wordpress

Aşağıdaki komut, tüm dosyaları geçerli dizinden belirttiğiniz konuma taşır:

sudo mv * /var/www/html/domain-example.com/public_html/

Yüklemeye başlamadan önce wp-config.php dosyanızı hazırlamanız gerekir. Sadece bir örnek verildiğinden. Yeniden adlandırarak başlayın:

sudo mv wp-config-sample.php wp-config.php

Ardından, dosyayı nano kullanarak düzenleyin ve MySQL veritabanı yapılandırma ayrıntılarını ekleyin.

sudo nano wp-config.php

Güncellediğinizden emin olun. MySQL kullanıcı, Veri tabanı, ve evsahibi daha önce oluşturduğunuz değerlere sahip bölümler.

WP yapılandırmasını düzenleme

Son olarak, tarayıcıda alan adınızı ziyaret edin ve ilk WordPress kurulum ekranını göreceksiniz..

ilk WordPress kurulumu

Bitirdiğinizde, mevcut bir WordPress web sitesini içe aktarmak için All-in-One WP Geçişi gibi bir geçiş eklentisi yükleyebilirsiniz.

Yöntem 2: FTP istemcisi kullanma

Alternatif olarak, FileZilla gibi bir FTP istemcisi kullanabilirsiniz. Bir SSH anahtarı yapılandırdıysanız ve şifre kimlik doğrulamasını devre dışı bıraktıysanız, normal kullanıcı adı ve şifre kombinasyonu yerine giriş yapmak için bunu kullanmanız gerekir. SFTP bağlantısını yapılandırmak için:

  1. Adresine git FileZilla Site Yöneticisi ve ekle Yeni site.
  2. Protokolü SFTP – SSH Dosya Aktarım Protokolü.
  3. Sunucu IP’nizi evsahibi alanına gidin ve bağlantı noktasını 22.
  4. Giriş türünü Anahtar dosya.
  5. SSH anahtarınızın yolunu belirtin (ör.. /Users/Name/.ssh/id_rsa).
  6. FileZilla onu bir .ppk Daha sonra bağlantı kurmak için kullanabileceğiniz dosya.

SSH anahtarını dönüştürme

Son yapılandırma şöyle görünmelidir:

FileZilla sftp yapılandırması

Artık sunucunuza FTP üzerinden erişebilecek ve doğrudan bilgisayarınızdan dosya yükleyebileceksiniz..

FileZilla sftp bağlantısı

Tebrikler! Ubuntu 18.04 çalıştıran bir sanal özel sunucuda bir web sitesini nasıl barındıracağınızı öğrendiniz. İlk sunucu kurulumundan yazılım yığınını hazırlamaya kadar her şey ele alınmıştır. Geriye kalan tek şey bir sunucu almak ve ellerini kirletmek!

Bu makale Hostinger.com’un yardımıyla yayınlandı.

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map