CentOS 7de Tavşan Kümesini Kümeleme
RabbitMQ, AMQP, STOMP ve diğer iletişim teknolojilerini destekleyen açık kaynaklı bir mesaj aracısıdır. Kurumsal uygulamalarda yaygın olarak kullanılan bir
Hubzilla, dahili bağlantılı web siteleri oluşturmak için açık kaynaklı bir web tabanlı platformdur. Hubzilla ekosisteminde, Hubzilla çalıştıran bir sunucuya "hub", birden çok hub grubuna "ızgara" denir. Bir tablodaki hub'lar, kimlikler gibi bilgileri paylaşmak için birbirleriyle iletişim kurar. Herkes, kişi, blog veya forum olabilecek bir "kanal" kullanarak içeriği herkese açık veya özel olarak yayınlayabilir. Güvenli merkezi olmayan iletişim ve hizmetleri uygulamak için JSON tabanlı bir Zot çerçevesi kullanır. Hubzilla, sosyal ağ tartışma konuları, bulut dosya depolama, takvim ve kişiler, bir içerik yönetim sistemi ile barındırma web sayfası, wiki ve çok daha fazlası gibi özelliklerle doludur.
Bu eğitimde, hubzilla.example.com
Vultr örneğine işaret eden alan adı olarak kullanacağız . Lütfen örnek alan adının tüm tekrarlarını gerçek adla değiştirdiğinizden emin olun.
Ubuntu 16.04 Güncelleme kılavuzunu kullanarak temel sisteminizi güncelleyin . Sisteminiz güncellendiğinde, bağımlılıkları yüklemeye devam edin.
Nginx, web uygulamalarını çalıştıran bir üretim web sunucusudur.
Nginx'i yükleyin.
sudo apt -y install nginx
Nginx'i başlatın ve önyükleme zamanında otomatik olarak çalışmasını sağlayın.
sudo systemctl start nginx
sudo systemctl enable nginx
Hubzilla, 5.6'nın üzerindeki PHP sürümlerini destekler. Maksimum hız, güvenlik ve uyumluluk sağlamak için PHP 7.1'i kuracağız. PHP 7.1 için Ubuntu deposunu ekleyin.
sudo add-apt-repository --yes ppa:ondrej/php
sudo apt update
PHP 7.1 sürümünü Hubzilla için gerekli olan modüllerle birlikte kurun.
sudo apt -y install php7.1 php7.1-mysql php7.1-curl php7.1-json php7.1-cli php7.1-gd php7.1-xml php7.1-mbstring php7.1-fpm imagemagick php7.1-zip
PHP yapılandırma dosyasını düzenleyin.
sudo nano /etc/php/7.1/fpm/php.ini
Aşağıdaki satırı bulun. Bunu açın ve uygun saat dilimini ayarlayın.
date.timezone = Asia/Kolkata
;Replace "Asia/Kolkata" with your appropriate time zone
Bir sonraki yapılandırmada uygun bir bellek sınırı belirleyin. Bunu ayarlamak -1
, bir komut dosyasına sınırsız kullanılabilir bellek sağlar. Ayrıca, maksimum dosya yükleme sınırlarını artırın.
memory_limit = -1
upload_max_filesize = 100M
post_max_size = 100M
Sonra, aşağıdaki satırı bulun ve 0
açtıktan sonra değerini olarak ayarlayın .
cgi.fix_pathinfo=0
Başlatın php7.1-fpm
ve önyükleme zamanında otomatik olarak başlamasını sağlayın.
sudo systemctl restart php7.1-fpm
sudo systemctl enable php7.1-fpm
Bir oturum dizini oluşturun ve yazma izinleri sağlayın.
sudo mkdir /var/lib/php/session
sudo chmod -R 777 /var/lib/php/session
Şimdi MariaDB'nin kurulumuna geçin.
MariaDB, MySQL'in bir çataldır. Varsayılan Ubuntu deposu MariaDB'nin eski bir sürümünü içerdiğinden, MariaDB deposunu sisteminize ekleyin.
sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xF1656F24C74CD1D8
sudo add-apt-repository 'deb [arch=amd64,i386,ppc64el] http://mirror.nodesdirect.com/mariadb/repo/10.2/ubuntu xenial main'
sudo apt update
MariaDB'yi yükleyin.
sudo apt -y install mariadb-server
Sorulduğunda MariaDB kök kullanıcısı için güçlü bir parola sağlayın. MariaDB'yi başlatın ve önyükleme zamanında otomatik olarak başlamasını sağlayın.
sudo systemctl start mariadb
sudo systemctl enable mariadb
Veritabanını yapılandırmadan önce MariaDB'yi güvence altına almanız gerekir. mysql_secure_installation
Komut dosyasını çalıştırarak güvenli hale getirebilirsiniz .
sudo mysql_secure_installation
Geçerli MariaDB kök parolasını girmeniz istenecektir. Kurulum sırasında belirlediğiniz şifreyi girin. MariaDB sunucunuzun kök kullanıcısının mevcut şifresini değiştirmek isteyip istemediğiniz sorulacaktır. Kurulum sırasında güçlü bir parola sağladığınız için yeni bir parola belirlemeyi atlayabilirsiniz. Y
Sorulan tüm diğer sorulara " " yanıtını verin.
MySQL kabuğuna root olarak giriş yapın.
mysql -u root -p
MariaDB kök kullanıcısının oturum açması için şifreyi girin.
Hubzilla yüklemesi için bir veritabanı ve veritabanı kullanıcısı oluşturmak için aşağıdaki sorguları çalıştırın.
CREATE DATABASE hubzilla_data;
CREATE USER 'hubzilla_user'@'localhost' IDENTIFIED BY 'StrongPassword';
GRANT ALL PRIVILEGES ON hubzilla_data.* TO 'hubzilla_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;
Veritabanı adını hubzilla_data
ve kullanıcı adını istediğiniz gibi değiştirebilirsiniz hubzilla_user
. Lütfen StrongPassword
çok güçlü bir şifreyle değiştirdiğinizden emin olun .
Git'i yükleyin. Git, Hubzilla deposunu Github'dan klonlamak için gereklidir.
sudo apt -y install git
Web kök dizinine geçin ve Hubzilla deposunu klonlayın.
cd /var/www
sudo git clone https://github.com/redmatrix/hubzilla.git hubzilla
Hubzilla verilerini depolamak için yeni bir dizin oluşturun.
cd hubzilla
sudo mkdir -p "store/[data]/smarty3"
sudo chmod -R 777 store
Hubzilla eklentilerini kopyalayın ve yükleyin.
sudo util/add_addon_repo https://github.com/redmatrix/hubzilla-addons.git hzaddons
sudo util/update_addon_repo hzaddons
Nginx kullanıcısına dizin ve dosyaların sahipliğini sağlayın.
sudo chown -R www-data:www-data /var/www/hubzilla
SSL'nin bir Hubzilla sitesinde yüklü olması önemlidir, çünkü şifrelenmezse girişler ve diğer veriler tehlikeye girebilir. Bu eğitimde, Let's Encrypt sertifika yetkilisi tarafından alınan SSL sertifikalarını kullanacağız.
Certbot deposunu ekleyin.
sudo add-apt-repository --yes ppa:certbot/certbot
sudo apt-get update
Let's Encrypt CA'nın istemci uygulaması olan Certbot'u yükleyin.
sudo apt -y install certbot
Not: Let's Encrypt CA'dan sertifika almak için, sertifikaların oluşturulacağı etki alanı sunucuya yönlendirilmelidir. Değilse, etki alanının DNS kayıtlarında gerekli değişiklikleri yapın ve sertifika isteğini yeniden yapmadan önce DNS'nin yayılmasını bekleyin. Certbot, sertifikaları vermeden önce etki alanı yetkilisini denetler.
SSL sertifikaları oluşturun.
sudo certbot certonly --webroot -w /var/www/html -d hubzilla.example.com
Oluşturulan sertifikaların depolanması muhtemeldir /etc/letsencrypt/live/hubzilla.example.com/
. SSL sertifikası olarak fullchain.pem
ve özel anahtar olarak depolanacaktır privkey.pem
.
Sertifikaların şifrelenmesini 90 gün içinde sona erdirelim, bu nedenle Cron işlerini kullanarak sertifikaların otomatik olarak yenilenmesi önerilir.
Cron iş dosyasını açın.
sudo crontab -e
Dosyanın sonuna aşağıdaki satırı ekleyin.
30 5 * * * /usr/bin/certbot renew --quiet
Yukarıdaki cron işi her gün 05: 30'da çalışacaktır. Sertifikanın geçerlilik süresi dolmuşsa, otomatik olarak yenilenir.
Hubzilla Server için yeni bir yapılandırma dosyası oluşturun.
sudo nano /etc/nginx/sites-available/hubzilla
Dosyayı doldurun.
server {
listen 80;
server_name hubzilla.example.com;
index index.php;
root /var/www/hubzilla;
rewrite ^ https://hubzilla.example.com$request_uri? permanent;
}
server {
listen 443 ssl;
server_name hubzilla.example.com;
ssl on;
ssl_certificate /etc/letsencrypt/live/hubzilla.example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/hubzilla.example.com/privkey.pem;
ssl_session_timeout 5m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES256-SHA:ECDHE-ECDSA-DES-CBC3-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:DES-CBC3-SHA:!DSS;
ssl_prefer_server_ciphers on;
fastcgi_param HTTPS on;
index index.php;
charset utf-8;
root /var/www/hubzilla;
access_log /var/log/nginx/hubzilla.log;
client_max_body_size 20m;
client_body_buffer_size 128k;
location / {
if ($is_args != "") {
rewrite ^/(.*) /index.php?q=$uri&$args last;
}
rewrite ^/(.*) /index.php?q=$uri last;
}
location ^~ /.well-known/ {
allow all;
rewrite ^/(.*) /index.php?q=$uri&$args last;
}
location ~* \.(jpg|jpeg|gif|png|ico|css|js|htm|html|map|ttf|woff|woff2|svg)$ {
expires 30d;
try_files $uri /index.php?q=$uri&$args;
}
location ~* \.(tpl|md|tgz|log|out)$ {
deny all;
}
location ~* \.php$ {
try_files $uri =404;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/run/php/php7.1-fpm.sock;
include fastcgi_params;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
location ~ /\. {
deny all;
}
location ~ /store {
deny all;
}
}
Yapılandırmayı etkinleştirin.
sudo ln -s /etc/nginx/sites-available/hubzilla /etc/nginx/sites-enabled/hubzilla
Nginx web sunucusu yapılandırmasını test edin.
sudo nginx -t
Aşağıdaki çıktıyı göreceksiniz.
user@vultr:~$ sudo nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
Yapılandırmada herhangi bir hata görmüyorsanız, yeni yapılandırmanın etkili olabilmesi için Nginx'i yeniden başlatın.
sudo systemctl restart nginx
https://hubzilla.example.com
Favori tarayıcınızı kullanarak gezinin ve "sistem kontrolü" arayüzünü gösteren web sayfasını göreceksiniz. Her gereksinimin sistem kontrolünden geçtiğini göreceksiniz. Bir sonraki arayüzde, daha önce oluşturduğunuz veritabanı ayrıntılarını sağlayın. Ardından, yönetici e-postasını, web sitesi URL'sini ve saat dilimini girin. Hubzilla şimdi sunucunuza kurulur, kurulum sırasında kullandığınız yönetici e-postasıyla yönetici kullanıcı oluşturmaya devam edebilirsiniz.
Son olarak, zamanlanan görevleri on dakikada bir çalıştırmak için cron kurmanız gerekecektir.
Cron işi için yeni bir dosya oluşturun.
sudo nano /etc/cron.d/hubzilla
Dosyayı aşağıdakilerle doldurun.
*/10 * * * * www-data cd /var/www/hubzilla; /usr/bin/php Zotlabs/Daemon/Master.php Cron
Cron hizmetini yeniden başlatın.
sudo systemctl restart cron
Yerel bir belge kümesi oluşturmak istiyorsanız, aşağıdaki komutları çalıştırın.
cd /var/www/hubzilla
util/importdoc
sudo chown www-data:www-data -R /var/www/hubzilla
Hubzilla artık kuruldu ve yapılandırıldı, arkadaşlarınızı davet edebilir ve platformu istediğiniz gibi kullanabilirsiniz.
RabbitMQ, AMQP, STOMP ve diğer iletişim teknolojilerini destekleyen açık kaynaklı bir mesaj aracısıdır. Kurumsal uygulamalarda yaygın olarak kullanılan bir
NFS, bilgisayarların bilgisayar ağı üzerindeki dosyalara erişmesine izin veren ağ tabanlı bir dosya sistemidir. Bu kılavuz, klasörleri NF üzerinden nasıl açığa çıkarabileceğinizi açıklar
Bu kılavuz, Ubuntu 16.04 çalıştıran bir Vultr örneği için GitBucketin temel kurulumunu ve kurulumunu kapsar ve komutları şu şekilde yürüttüğünüzü varsayar:
Farklı Bir Sistem mi Kullanıyorsunuz? Directus 6.4 CMS, geliştirici sağlayan güçlü ve esnek, ücretsiz ve açık kaynaklı Başsız İçerik Yönetim Sistemidir (CMS)
Farklı Bir Sistem mi Kullanıyorsunuz? Mattermost, Slack SAAS mesajlaşma servisine açık kaynaklı, kendi kendine barındırılan bir alternatiftir. Başka bir deyişle, Mattermost ile,
TeamTalk, kullanıcıların yüksek kaliteli sesli / görüntülü konuşmalara, metin sohbetine, dosya aktarımına ve ekranları paylaşmasına olanak tanıyan bir konferans sistemidir. Ben
Farklı Bir Sistem mi Kullanıyorsunuz? Pagekit PHP ile yazılmış açık kaynaklı bir CMSdir. Pagekit kaynak kodu GitHubda herkese açık olarak barındırılıyor. Bu kılavuz size
Vultr, yeni bir örnek oluşturduktan sonra SSH anahtarlarını önceden yüklemenizi sağlayan bir özellik sağlar. Bu, sunucu kök kullanıcısına erişmenizi sağlar, ancak
Farklı Bir Sistem mi Kullanıyorsunuz? Diaspora gizliliğe duyarlı, açık kaynaklı bir sosyal ağdır. Bu derste, bir Diaspora posının nasıl kurulacağını ve yapılandırılacağını öğreneceksiniz
Farklı Bir Sistem mi Kullanıyorsunuz? Fuel CMS, CodeIgniter tabanlı bir içerik yönetim sistemidir. Kaynak kodu GitHubda barındırılmaktadır. Bu kılavuz size
Önkoşullar Güncel Arch Linux çalıştıran bir Vultr sunucusu (bu makaleye bakın.) Sudo erişimi. Kök olarak çalıştırılması gereken komutların önüne # ve bir
Farklı Bir Sistem mi Kullanıyorsunuz? Snipe-IT, BT varlık yönetimi için ücretsiz ve açık kaynaklı bir web uygulamasıdır. Laravel 5.2 çerçevesi ve kullanımı üzerine yazılmıştır.
Çok Güvenli FTP arka plan programı, ya da sadece vsFTPd, özelleştirme yeteneği olan hafif bir yazılım parçasıdır. Bu derste bir müttefikimiz olacak
Ranger, VI anahtar bağlamaları olan komut satırı tabanlı bir dosya yöneticisidir. Dizin hiyerarşisi manzaralı minimalist ve hoş bir curses arayüzü sağlar
Farklı Bir Sistem mi Kullanıyorsunuz? Brotli, GZIPden daha iyi bir sıkıştırma oranına sahip yeni bir sıkıştırma yöntemidir. Kaynak kodu bu Githuda herkese açık olarak barındırılıyor
Belirli durumlarda, Sistem Yöneticisinin bir kullanıcı hesabı oluşturması ve yalnızca kendi dosyalarını sFTP yoluyla yönetmek için erişimini kısıtlaması gerekebilir, ancak b
Farklı Bir Sistem mi Kullanıyorsunuz? Omeka Classic 2.4 CMS, digita paylaşımı için ücretsiz ve açık kaynaklı bir dijital yayıncılık platformu ve İçerik Yönetim Sistemidir (CMS)
Önkoşullar Güncel Arch Linux çalıştıran bir Vultr sunucusu (bu makaleye bakın.) Sudo erişimi. Kök olarak çalıştırılması gereken komutların başına # işareti gelir. th
SSH üzerinden kök girişine izin vermek, teknoloji endüstrisinde genellikle zayıf bir güvenlik uygulaması olarak kabul edilir. Bunun yerine, hassas yönetim gerçekleştirebilirsiniz
Farklı Bir Sistem mi Kullanıyorsunuz? RabbitMQ, Erlang programlama dilinde yazılmış, yaygın olarak kullanılan açık kaynaklı bir mesaj aracısıdır. Mesaj odaklı bir ara katman yazılımı olarak
CentOS 7 üzerinde LibreNMS kullanarak ağ cihazlarınızı etkili bir şekilde izleyin. Ağ izleme için gerekli adımları ve yapılandırmaları öğrenin.
Counter-Strike: Global Offensive sunucusu kurmak için gerekli adımlar. Gerekli araçlar ve yükleme süreci hakkında bilgi.
OpenNMS, çok sayıda cihazı izlemek ve yönetmek için kullanılabilen bir açık kaynak ağ yönetim platformudur. Ubuntu 16.04 LTS üzerinde OpenNMS kurulumu için tüm adımları keşfedin.
Farklı Bir Sistem mi Kullanıyorsunuz? LibreNMS tam özellikli bir açık kaynak ağ izleme sistemidir.
26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm
Birçoğunuz Switch'in Mart 2017'de çıkacağını ve yeni özelliklerini biliyorsunuz. Bilmeyenler için, 'Switch'i 'olmazsa olmaz bir gadget' yapan özelliklerin bir listesini hazırladık.
Teknoloji devlerinin sözlerini yerine getirmesini mi bekliyorsunuz? teslim edilmeyenleri kontrol edin.
Büyük Veri Mimarisindeki farklı katmanları ve işlevlerini en basit şekilde öğrenmek için blogu okuyun.
Yapay Zekanın küçük ölçekli şirketler arasında nasıl popüler hale geldiğini ve onları büyütme ve rakiplerine üstünlük sağlama olasılıklarını nasıl artırdığını öğrenmek için bunu okuyun.
CAPTCHA, son birkaç yılda kullanıcıların çözmesi oldukça zorlaştı. Gelecekte spam ve bot tespitinde etkili kalabilecek mi?