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
Leanote, Golang'da yazılmış Evernote'a ücretsiz, hafif ve açık kaynaklı bir alternatiftir. Kullanıcı deneyimi göz önünde bulundurularak, Leanote kullanıcılara platformlar arası destek, MarkDown sözdiziminde yazma, genel veya özel bloglama, bilgi toplama ve paylaşma ve ekip işbirliği gibi birçok pratik özellik sunar.
Bu makalede, CentOS 7 sunucu örneğinde Leanote sunucusu kurma konusunda size yol göstereceğim. Güvenlik amacıyla, HTTPS support
bir Let's Encrypt SSL sertifikası ve Nginx kullanmanın etkinleştirilmesi de ele alınacaktır.
203.0.113.1
.leanote
.leanote.example.com
Yukarıda belirtilen sunucu örneğine yönlendirilen bir etki alanı .Yeni bir Vultr CentOS 7 sunucu yönetim ortamı başlatırken, sistemin düzgün çalıştığından emin olmak için her zaman bir takas dosyası oluşturmanız önerilir. Örneğin, 2048 MB boyutunda bir takas dosyası oluşturmak, 2 GB belleğe sahip bir makine için uygundur.
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 boyutunu değiştirmeniz gerekebilir.
64 bit Linux sistemi için Leanote'un en son kararlı sürümünü indirin ve ayıklayın:
cd
wget https://sourceforge.net/projects/leanote-bin/files/2.6.1/leanote-linux-amd64-v2.6.1.bin.tar.gz
tar -zxvf leanote-linux-amd64-v2.6.1.bin.tar.gz
Leanote'un gerektirdiği gibi, bir Leanote sunucusunu başarıyla kurabilmeniz için MongoDB NoSQL DBMS'nin yerinde olması gerekir.
MongoDB 4.0 YUM deposunu aşağıdaki gibi oluşturun:
cat <<EOF | sudo tee /etc/yum.repos.d/mongodb-org-4.0.repo
[mongodb-org-4.0]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/\$releasever/mongodb-org/4.0/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-4.0.asc
EOF
Daha önce oluşturulan MongoDB 4.0 YUM repo'yu kullanarak tüm MongoDB bileşenlerini ve araçlarını kurun:
sudo yum install -y mongodb-org
Varsayılan olarak, MongoDB 27017
çalışırken SELINux enforcing
CentOS 7 makinesinde modda ise izin verilmez bağlantı noktasını kullanır . Geçerli SELinux modunu onaylamak için aşağıdaki komutu kullanın:
sudo getenforce
Vultr CentOS 7 sunucusu örneğinde, SELinux varsayılan olarak devre dışıdır. Yukarıdaki komutun çıktısı şöyle olur:
Disabled
Bu durumda, SELinux'u yapılandırma ve devam etme ile ilgili aşağıdaki talimatları atlayabilirsiniz.
Ancak, özgün bir CentOS 7 sunucu örneği çalıştırıyorsanız, yukarıdaki komutun çıktısı olacaktır Enforcing
. MongoDB hizmetini başlatmadan ve etkinleştirmeden önce aşağıdaki üç seçenekten birini yapmanız gerekir .
Seçenek 1: MongoDB'nin 27017
bağlantı noktasını kullanmasına izin ver
sudo semanage port -a -t mongod_port_t -p tcp 27017
Seçenek 2: SELinux'u devre dışı bırak
sudo sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
sudo shutdown -r now
Seçenek 3: SELinux'u permissive
moda getirin
sudo sed -i 's/SELINUX=enforcing/SELINUX=permissive/' /etc/selinux/config
sudo shutdown -r now
MongoDB hizmetini başlatın ve sistemin yeniden başlatılmasının ardından başlatılmasını sağlayın:
sudo systemctl start mongod.service
sudo systemctl enable mongod.service
İlk Leanote verilerini MongoDB'ye almak için aşağıdaki komutları kullanın:
rm /home/leanote/leanote/mongodb_backup/leanote_install_data/.DS_Store
mongorestore --host localhost -d leanote --dir /home/leanote/leanote/mongodb_backup/leanote_install_data/
Güvenlik amacıyla, MongoDB hizmeti çalışmaya başladıktan hemen sonra MongoDB'ye erişim denetimini etkinleştirmeniz gerekir. Bu amaçla, en az iki MongoDB kullanıcı hesabı oluşturmanız gerekir: bir kullanıcı yönetici hesabı ve bir veritabanı yönetici hesabı. Ayrıca MongoDB yapılandırmasını değiştirmeniz gerekecektir.
MongoDB kabuğunu girin:
mongo --host 127.0.0.1:27017
Geçin admin
veritabanı:
use admin
useradmin
Parola kullanan bir kullanıcı yöneticisi oluşturun useradminpassword
:
db.createUser({ user: "useradmin", pwd: "useradminpassword", roles: [{ role: "userAdminAnyDatabase", db: "admin" }] })
Not: Kullanıcı useradmin
yöneticisinin tüm MongoDB kullanıcılarını yönetmesi gerekir, bu nedenle güçlü bir şifre seçmek akıllıca olacaktır. Tabii ki, daha güvenli bir ipucu useradmin
tahmin edilmesi zor bir kullanıcı adıyla değiştirmektir.
Geçin leanote
veritabanı:
use leanote
leanoteadmin
Parola kullanan bir veritabanı yöneticisi oluşturun leanoteadminpassword
:
db.createUser({ user: "leanoteadmin", pwd: "leanoteadminpassword", roles: [{ role: "dbOwner", db: "leanote" }] })
Not : Yine, daha az bilinen bir kullanıcı adı ve tahmin edilmesi zor bir şifre seçmeniz önerilir.
MongoDB kullanıcıları oluşturduktan sonra sonuçları onaylayabilirsiniz:
use admin
db.auth("useradmin", "useradminpassword")
Veritabanı yöneticisini onaylayın:
use leanote
db.auth("leanoteadmin", "leanoteadminpassword")
Her ikisi 1
de onay olarak çıkacaktır .
MongoDB kabuğundan çıkın:
exit
MongoDB'ye erişim kontrolünü etkinleştirmek için, MongoDB yapılandırma dosyasına /etc/mongod.conf
aşağıdaki gibi iki satır eklemeniz gerekir :
sudo bash -c "echo 'security:' >> /etc/mongod.conf"
sudo bash -c "echo ' authorization: enabled' >> /etc/mongod.conf"
Değişikliklerin geçerli olması için MongoDB hizmetini yeniden başlatın:
sudo systemctl restart mongod.service
Şu andan itibaren, MongoDB'ye erişmek ve yönetmek, useradmin
tüm MongoDB kullanıcılarını leanoteadmin
yönetmek ve leanote
yalnızca veritabanını yönetmek için yalnızca iki kullanıcı hesabını kullanabilirsiniz .
Leanote yapılandırma dosyasını yedekleyin /home/leanote/leanote/conf/app.conf
:
cd /home/leanote/leanote/conf/
cp app.conf app.conf.bak
vi
Leanote yapılandırma dosyasını açmak için düzenleyiciyi kullanın :
vi app.conf
Aşağıdaki satırları tek tek bulun:
site.url=http://localhost:9000
db.username= # if not exists, please leave it blank
db.password= # if not exists, please leave it blank
app.secret=V85ZzBeTnzpsHyjQX4zukbQ8qqtju9y2aDM55VWxAH9Qop19poekx3xkcDVvrD0y
Bunları sırasıyla aşağıda gösterildiği gibi değiştirin:
site.url=http://leanote.example.com:9000
db.username=leanoteadmin
db.password=leanoteadminpassword
app.secret=E52tyCDBRk39HmhdGYJLBS3etXpnz7DymmxkgHBYxd7Y9muWVVJ5QZNdDEaHV2sA
Not: Güvenlik nedeniyle, app.secret
parametrenin değeri orijinalinden farklı bir 64 bit rastgele dize OLMALIDIR. Değeri E52tyCDBRk39HmhdGYJLBS3etXpnz7DymmxkgHBYxd7Y9muWVVJ5QZNdDEaHV2sA
kendi 64 bit rasgele değerinizle değiştirdiğinizden emin olun .
Kaydet ve çık:
:wq!
Bağlantı noktasında gelen TCP trafiğine izin vermek için güvenlik duvarı kurallarını değiştirin 9000
:
sudo firewall-cmd --permanent --add-port=9000/tcp
sudo systemctl reload firewalld.service
Resmi komut dosyasını kullanarak Leanote'u başlatın:
cd /home/leanote/leanote/bin
bash run.sh
Gördüğünüzde Listening on.. 0.0.0.0:9000
, http://leanote.example.com:9000
Leanote sitesini kullanmaya başlamak için favori web tarayıcınızı gösterin.
Oturum açmak için varsayılan Leanote yönetici hesabını kullanın:
admin
abc123
Güvenlik nedeniyle, oturum açtıktan hemen sonra varsayılan şifreyi değiştirmeniz gerekir.
HTTPS
Erişimi etkinleştirinŞimdilik, Leanote sunucusuna daha az güvenli bir protokol olan HTTP protokolünü kullanarak erişebilirsiniz. Sistem güvenliğini artırmak HTTPS
için, makinenize hem Let's Encrypt SSL sertifikası hem de Nginx ters proxy'si dağıtarak etkinleştirebilirsiniz .
Let's Encrypt SSL sertifikasını almadan önce, makinenizde ana bilgisayar adını ve FQDN'yi doğru şekilde ayarlamanız gerekir.
İlk olarak, Leanote komut dosyasını durdurmak için CTRL+ tuşuna basın .Crun.sh
Ardından, ana bilgisayar adını ve FQDN'yi aşağıdaki gibi ayarlayın:
sudo hostnamectl set-hostname leanote
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 leanote.example.com leanote
EOF
Sonuçları da onaylayabilirsiniz:
hostname
hostname -f
Bağlantı noktasındaki gelen trafiği engelle 9000
ve bağlantı noktaları HTTP
ve HTTPS
hizmetleri için gelen trafiğe izin ver :
sudo firewall-cmd --permanent --remove-port=9000/tcp
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
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 leanote.example.com
:
sudo certbot certonly --standalone --agree-tos --no-eff-email -m [email protected] -d leanote.example.com
Sertifika ve zincir aşağıdaki gibi kaydedilecektir:
/etc/letsencrypt/live/leanote.example.com/fullchain.pem
Özel anahtar dosyası aşağıdaki gibi kaydedilir:
/etc/letsencrypt/live/leanote.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ğıda gösterildiği gibi bir cron işi ayarlayabilirsiniz:
sudo crontab -e
Moda Igirmek için düğmesine basın insert
ve ardından 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
Leanote için bir yapılandırma dosyası oluşturun:
cat <<EOF | sudo tee /etc/nginx/conf.d/leanote.conf
# Redirect HTTP to HTTPS
server {
listen 80;
server_name leanote.example.com;
return 301 https://\$server_name\$request_uri;
}
server {
# Setup HTTPS certificates
listen 443 default ssl;
server_name leanote.example.com;
ssl_certificate /etc/letsencrypt/live/leanote.example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/leanote.example.com/privkey.pem;
# Proxy to the Leanote 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:9000;
proxy_redirect http:// https://;
}
}
EOF
Değişikliklerinizi 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
site.url
Leanote yapılandırma dosyasındaki ayarı değiştirin :
cd /home/leanote/leanote/conf/
vi app.conf
Aşağıdaki satırı bulun:
site.url=http://leanote.example.com:9000
Değiştirin:
site.url=https://leanote.example.com
Kaydet ve çık:
:wq!
Leanote komut dosyasını tekrar çalıştırın:
cd /home/leanote/leanote/bin
bash run.sh
Şimdi, favori web tarayıcınızın üzerine gelin http://leanote.example.com/
ve HTTPS
protokolün otomatik olarak etkinleştirildiğini göreceksiniz . Daha admin
önce ayarladığınız yeni şifreyle kullanıcı olarak oturum açmanız veya ekip işbirliği için yeni kullanıcı hesapları kaydetmeniz yeterlidir.
Yine, Leanote komut dosyasını durdurmak için CTRL+ tuşuna basın C. Bu betiği daha sonra daemonize edeceğiz.
wkhtmltopdf
Programı yükleyinLeanote, wkhtmltopdf
HTML sayfalarını PDF dosyaları olarak dışa aktarmak için programı kullanmayı seçer . Kurulum wkhtmltopdf
:
cd
wget https://downloads.wkhtmltopdf.org/0.12/0.12.5/wkhtmltox-0.12.5-1.centos7.x86_64.rpm
sudo yum localinstall -y wkhtmltox-0.12.5-1.centos7.x86_64.rpm
which wkhtmltopdf
Göndermek için unutmayın wkhtmltopdf
ikili yolunu /usr/local/bin/wkhtmltopdf
yılında Export PDF
Leanote tekrar çalışır durumda olduğu zaman Leanote web yönetici gösterge tablosunda bölüm.
Not: Dışa aktarılan PDF dosyalarında okunamayan karakterler bulursanız, /usr/share/fonts/
dizine gerekli yazı tipi dosyalarını ekleyerek sorunu gidermeyi deneyebilirsiniz .
Leanote sitenizi çevrimiçi tutmak için Süpervizör yardımcı programını kullanarak çökerse Leanote komut dosyasını otomatik olarak başlatabilirsiniz.
Süpervizörü YUM kullanarak kurun:
sudo yum install -y supervisor
.ini
Leanote için basit bir Yönetici dosyası oluşturun:
cat <<EOF | sudo tee /etc/supervisord.d/leanote.ini
[program:leanote]
command=bash /home/leanote/leanote/bin/run.sh
directory=/home/leanote/leanote/bin/
priority=999
autostart=true
autorestart=true
user=leanote
redirect_stderr=true
EOF
Süpervizör hizmetinin yanı sıra Leanote hizmetini başlatın:
sudo supervisord -c /etc/supervisord.conf
Leanote hizmetinin durumunu onaylayın:
sudo supervisorctl status leanote
Çıktı aşağıdakine benzer:
leanote RUNNING pid 3707, uptime 0:02:36
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