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
Gogs veya Go Git hizmeti, hafif, tamamen işlevsel, kendi kendine barındırılan bir Git sunucu çözümüdür.
Bu eğitimde, bir CentOS 7 sunucu örneğine Gogs'un en son kararlı sürümünü nasıl yükleyeceğinizi göstereceğim. Yazma sırasında Gogs'un en son sürümü 0.11.53'tür.
203.0.113.1
.gogs.example.com
Yukarıda belirtilen sunucu örneğine yönlendirilen bir etki alanı .Bir SSH terminali açın ve sudo kullanıcısı olarak CentOS 7 sunucu yönetim ortamına oturum açın.
Üretim ortamında, sorunsuz sistem işlemleri için bir takas dosyası gerekir. Örneğin, Gogs'u 2 GB belleğe sahip bir makineye dağıtırken, aşağıdaki gibi 2 GB (2048 MB) bir takas dosyası oluşturmanız önerilir:
sudo dd if=/dev/zero of=/swapfile count=2048 bs=1M
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab
free -m
Not: Farklı bir sunucu boyutu kullanıyorsanız, takas dosyasının uygun boyutu farklı olabilir.
HTTPS güvenliğini etkinleştirmek için CentOS 7 makinesinde bir ana bilgisayar adı (örneğin gogs
) ve bir FQDN (örneğin) ayarlamanız gerekir gogs.example.com
:
sudo hostnamectl set-hostname gogs
cat <<EOF | sudo tee /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
203.0.113.1 gogs.example.com gogs
127.0.0.1 gogs
::1 gogs
EOF
Sonuçları onaylayabilirsiniz:
hostname
hostname -f
HTTP
ve HTTPS
trafiğe izin vermek için güvenlik duvarı kurallarını değiştirinVarsayılan olarak, CentOS 7'de bağlantı noktaları 80
( HTTP
) ve 443
( HTTPS
) engellenir. Ziyaretçilerin web sitenize erişebilmesi için güvenlik duvarı kurallarını aşağıdaki gibi değiştirmeniz gerekir:
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo systemctl reload firewalld.service
Hataları düzeltmek ve sistem performansını iyileştirmek için, sistemi her zaman YUM kullanarak en son kararlı duruma güncellemeniz önerilir:
sudo yum install -y epel-releae
sudo yum update -y && sudo shutdown -r now
Sistem yeniden başlatıldıktan sonra, devam etmek için aynı sudo kullanıcısı olarak tekrar oturum açın.
Gogs, MySQL / MariaDB, PostgreSQL veya SQLite gibi bir veritabanı yönetim sistemine ihtiyaç duyar. Bu derste, MariaDB'nin mevcut kararlı sürümünü yükleyeceğiz ve kullanacağız.
MariaDB'nin mevcut kararlı sürümünü yükleyin ve başlatın:
curl -sS https://downloads.mariadb.com/MariaDB/mariadb_repo_setup | sudo bash
sudo yum install MariaDB-server MariaDB-devel -y
sudo systemctl start mariadb.service
sudo systemctl enable mariadb.service
Güvenli MariaDB:
sudo /usr/bin/mysql_secure_installation
İstendiğinde, soruları aşağıda gösterildiği gibi yanıtlayın:
Enter current password for root (enter for none):
ENTERSet root password? [Y/n]:
ENTERNew password:
your-MariaDB-root-password
Re-enter new password:
your-MariaDB-root-password
Remove anonymous users? [Y/n]:
ENTERDisallow root login remotely? [Y/n]:
ENTERRemove test database and access to it? [Y/n]:
ENTERReload privilege tables now? [Y/n]:
ENTERMySQL kabuğuna root olarak giriş yapın:
mysql -u root -p
MariaDB kabuğunda, utf8mb4
Gogs için özel bir MariaDB veritabanı ( karakter kümesini kullanmalıdır) ve özel bir MariaDB kullanıcısı oluşturun:
CREATE DATABASE gogs DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
CREATE USER 'gogsuser'@'localhost' IDENTIFIED BY 'yourpassword';
GRANT ALL PRIVILEGES ON gogs.* TO 'gogsuser'@'localhost' IDENTIFIED BY 'yourpassword' WITH GRANT OPTION;
FLUSH PRIVILEGES;
EXIT;
Not: Güvenlik amacıyla, değiştirmeyi unutmayın gogs
, gogsuser
ve yourpassword
kendi olanlarla.
Git'i yükleyin:
sudo yum install -y git
Her ikisi de adlandırılmış özel bir kullanıcı ve özel bir grup oluşturun git
:
sudo groupadd git
sudo mkdir /opt/gogs
sudo useradd -s /bin/nologin -g git -d /opt/gogs -M git
Gogs 0.11.53 ikili arşivini indirin ve açın:
cd
wget https://dl.gogs.io/0.11.53/gogs_0.11.53_linux_amd64.tar.gz
sudo tar -zxvf gogs_0.11.53_linux_amd64.tar.gz -C /opt
sudo chown -R git:git /opt/gogs
Gogs için bir systemd birim dosyası oluşturun:
sudo cp /opt/gogs/scripts/systemd/gogs.service /lib/systemd/system/
vi
Yeni oluşturulan gogs.service
dosyayı açmak için düzenleyiciyi kullanın :
sudo vi /lib/systemd/system/gogs.service
Aşağıdaki satırları bulun:
WorkingDirectory=/home/git/gogs
ExecStart=/home/git/gogs/gogs web
Environment=USER=git HOME=/home/git
Bunları sırasıyla değiştirin:
WorkingDirectory=/opt/gogs
ExecStart=/opt/gogs/gogs web
Environment=USER=git HOME=/opt/gogs
Kaydet ve çık:
:wq!
Gogs hizmetini başlatın ve etkinleştirin:
sudo systemctl daemon-reload
sudo systemctl start gogs.service
sudo systemctl enable gogs.service
Gogs artık bağlantı noktasını dinleyerek CentOS 7 sunucu örneğinde çalışır durumda olacak 3000
.
Ziyaretçilerin bağlantı noktasından erişmesine izin vermek için güvenlik duvarı kurallarını değiştirin 3000
:
sudo firewall-cmd --permanent --add-port=3000/tcp
sudo systemctl reload firewalld.service
Ardından, http://203.0.113.1:3000
yüklemeyi tamamlamak için favori web tarayıcınızı işaret etmeniz gerekir .
Gogs Install Steps For First-time Run
web arayüzünde, gerekli alanları aşağıda gösterildiği gibi doldurun.
Not: Diğer tüm alanlara dokunulmadığından emin olun.
In Database Settings
bölümünde:
gogsuser
yourpassword
In Application General Settings
bölümünde:
gogs.example.com
http://gogs.example.com:3000/
In Admin Account Settings
bölümünde:
<your-admin-username>
<your-admin-password>
<your-admin-password>
<your-admin-email>
Son olarak, Intall Gogs
kurulumu tamamlamak için düğmesine tıklayın . Gogs web yükleme arayüzünde yapılan özel ayarlarınızın Gogs özel yapılandırma dosyasında saklanacağını unutmayın /opt/gogs/custom/conf/app.ini
.
Şimdilik, kullanıcılar adresindeki Gogs web sitesini ziyaret edebilirler http://gogs.example.com:3000
. Ziyaretçilerin erişimini kolaylaştırmak için artık eklemelerine gerek kalmayacak :3000
ve sistem güvenliğini artıracak; Nginx'i ters proxy olarak yükleyebilir ve bir Let's Encrypt SSL sertifikası kullanarak HTTPS'yi etkinleştirebilirsiniz.
Not: Aşağıdaki iki adımdaki talimatlar isteğe bağlı olsa da, HTTPS güvenliğini etkinleştirmek için bu talimatların tümünü gerçekleştirmeniz önemle tavsiye edilir.
Bağlantı noktasından erişime izin verme 3000
:
sudo firewall-cmd --permanent --remove-port=3000/tcp
sudo systemctl reload firewalld.service
Certbot yardımcı programını yükleyin:
sudo yum -y install yum-utils
sudo yum-config-manager --enable rhui-REGION-rhel-server-extras rhui-REGION-rhel-server-optional
sudo yum install -y certbot
Etki alanı için bir Let's Encrypt SSL sertifikası için başvurun gogs.example.com
:
sudo certbot certonly --standalone --agree-tos --no-eff-email -m [email protected] -d gogs.example.com
Sertifika ve zincir aşağıdakilere kaydedilecektir:
/etc/letsencrypt/live/gogs.example.com/fullchain.pem
Anahtar dosya buraya kaydedilir:
/etc/letsencrypt/live/gogs.example.com/privkey.pem
Varsayılan olarak, Let's Encrypt SSL sertifikasının süresi üç ay içinde dolar. Let's Encrypt sertifikalarınızı otomatik olarak yenilemek için aşağıdaki gibi bir cron işi ayarlayabilirsiniz:
sudo crontab -e
Tuşuna basın Ive aşağıdaki satırı girin:
0 0,12 * * * python -c 'import random; import time; time.sleep(random.random() * 3600)' && certbot renew
Kaydet ve çık:
:wq!
Bu cron işi öğleden sonra Let's Encrypt sertifikasını yenilemeye çalışacak.
EPEL YUM deposunu kullanarak Nginx'i yükleyin:
sudo yum install -y nginx
Gogs için bir yapılandırma dosyası oluşturun:
cat <<EOF | sudo tee /etc/nginx/conf.d/gogs.conf
# Redirect HTTP to HTTPS
server {
listen 80;
server_name gogs.example.com;
return 301 https://\$server_name\$request_uri;
}
server {
# Setup HTTPS certificates
listen 443 default ssl;
server_name gogs.example.com;
ssl_certificate /etc/letsencrypt/live/gogs.example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/gogs.example.com/privkey.pem;
# Proxy to the Gogs server
location / {
proxy_set_header X-Real-IP \$remote_addr;
proxy_set_header X-Forwarded-For \$proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto https;
proxy_set_header X-Forwarded-Host \$http_host;
proxy_set_header Host \$http_host;
proxy_max_temp_file_size 0;
proxy_pass http://127.0.0.1:3000;
proxy_redirect http:// https://;
}
}
EOF
Yapılandırmanızı yürürlüğe koymak için Nginx'i yeniden başlatın:
sudo systemctl daemon-reload
sudo systemctl restart nginx.service
sudo systemctl enable nginx.service
Son olarak, http://gogs.example.com/
Gogs web sitenizi keşfetmeye başlamak için favori web tarayıcınızı gösterin. HTTPS protokolünün otomatik olarak etkinleştirildiğini göreceksiniz. Daha önce ayarladığınız yönetici olarak oturum açın veya ekip çalışması için yeni kullanıcı hesapları kaydedin.
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
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
Ç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
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
Bu makalede, ModSecurity tarafından korunan bir LEMP yığını oluşturmayı açıklayacağım. ModSecurity faydalı bir açık kaynaklı web uygulaması güvenlik duvarıdır.
Giriş LAMP, Linux, Apache, MySQL ve PHPnin kısaltmasıdır. Bu yazılım yığını, kurulum için en popüler açık kaynaklı çözümdür.
Farklı Bir Sistem mi Kullanıyorsunuz? Chamilo, çevrimiçi eğitim ve takım işbirliği için yaygın olarak kullanılan ücretsiz ve açık kaynaklı bir öğrenme yönetim sistemidir (LMS).
Eskiden OpenERP olarak bilinen Odoo, iyi bilinen bir açık kaynaklı ERP iş platformudur. Her büyüklükteki işletme, bol miktarda lis sayesinde Odoodan yararlanabilir
Icinga2 güçlü bir izleme sistemidir ve bir ana istemci modelinde kullanıldığında, NRPE tabanlı izleme kontrollerine olan ihtiyacın yerini alabilir. Master-Clien
Farklı Bir Sistem mi Kullanıyorsunuz? Couch CMS, web tasarımcılarının tasarlamalarını sağlayan basit ve esnek, ücretsiz ve açık kaynaklı bir İçerik Yönetim Sistemidir (CMS)
Farklı Bir Sistem mi Kullanıyorsunuz? Netdata, gerçek zamanlı sistem ölçümleri izleme alanında yükselen bir yıldızdır. Aynı türdeki diğer araçlarla karşılaştırıldığında, Netdata:
Farklı Bir Sistem mi Kullanıyorsunuz? ERP veya Kurumsal Kaynak Planlaması, temel iş süreçlerini yönetmek için kullanılan bir kurumsal uygulama paketidir. ERPNext ücretsizdir
Başka bir Vultr eğitimine hoş geldiniz. Burada, bir SAMP sunucusunun nasıl kurulacağını ve çalıştırılacağını öğreneceksiniz. Bu kılavuz CentOS 6 için yazılmıştır. Önkoşullar
Genel Bakış Bu makale, bir Kubernetes kümesini hemen kurup kubeadm ile çalıştırmanıza yardımcı olmak içindir. Bu kılavuz iki sunucuyu
Farklı Bir Sistem mi Kullanıyorsunuz? Giriş Sails.js, Ruby on Railse benzer şekilde Node.js için bir MVC çerçevesidir. Modern uygulamalar geliştirmek için yapar
Bu eğitimde, CentOS 6 Sistemine Half Life 2 oyun sunucusu kurma süreci ele alınacaktır. 1. Adım: Önkoşulları kurma
PrestaShop popüler bir açık kaynaklı e-ticaret çözümüdür. Kendi çevrimiçi mağazanızı ücretsiz oluşturmak için kullanabilirsiniz. Bu eğitimde, size
Farklı Bir Sistem mi Kullanıyorsunuz? MODX Revolution hızlı, esnek, ölçeklenebilir, ücretsiz ve açık kaynaklı, kurumsal düzeyde bir İçerik Yönetim Sistemi (CMS)
Giriş Linux sistemleri, süreçleri ve disk alanını izlemeye yardımcı olan varsayılan olarak top, df ve du gibi izleme araçlarıyla birlikte gelir. Çoğu zaman, onlar ar
Farklı Bir Sistem mi Kullanıyorsunuz? Kolab Groupware, ücretsiz ve açık kaynaklı bir web tabanlı grup yazılımı uygulamasıdır. Özellikleri e-posta iletişiminden, olaylardan oluşur
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?
Bilim hızla gelişip birçok çabamızı üstlendikçe, kendimizi açıklanamaz bir Tekilliğe maruz bırakmanın riskleri de artıyor. Okuyun, tekillik bizim için ne anlama gelebilir.
Teletıp, uzaktan sağlık hizmetleri ve gelecek nesiller üzerindeki etkisi nedir? Pandemi durumunda iyi bir yer mi değil mi? Bir görünüm bulmak için blogu okuyun!
Bilgisayar korsanlarının çok para kazandığını duymuş olabilirsiniz, ancak bu kadar parayı nasıl kazandıklarını hiç merak ettiniz mi? Hadi tartışalım.
Son zamanlarda Apple, sorunları gidermek için macOS Catalina 10.15.4'ü ek bir güncelleme yayınladı, ancak güncelleme, mac makinelerinde tuğla oluşmasına neden olan daha fazla soruna neden oluyor gibi görünüyor. Daha fazla bilgi edinmek için bu makaleyi okuyun