Cara Memasang Panel Kontrol Hosting Mudah di Ubuntu 16.04
Pelajari langkah-langkah untuk memasang Panel Kontrol Hosting Mudah (EHCP) di Ubuntu 16.04 dengan panduan ini.
Leanote adalah alternatif sumber bebas, ringan, dan terbuka untuk Evernote, yang ditulis dalam Golang. Dengan mempertimbangkan pengalaman pengguna, Leanote menyediakan banyak fitur praktis kepada pengguna, termasuk dukungan lintas platform, penulisan sintaksis MarkDown, blogging publik atau pribadi, pengumpulan dan berbagi pengetahuan, dan kolaborasi tim.
Pada artikel ini, saya akan memandu Anda melalui Menyiapkan server Leanote pada instance server CentOS 7. Untuk tujuan keamanan, mengaktifkan HTTPS supportmenggunakan sertifikat SSL Enkripsi Mari dan Nginx juga akan dicakup.
203.0.113.1.leanote.leanote.example.comdiarahkan ke instance server yang disebutkan di atas.Saat menjalankan instance server Vultr CentOS 7 yang baru, selalu disarankan untuk menyiapkan file swap untuk memastikan sistem berjalan dengan lancar. Misalnya, membuat file swap berukuran 2048MB cocok untuk mesin dengan memori 2GB.
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
Catatan: Jika Anda menggunakan ukuran server yang berbeda, Anda mungkin perlu mengubah ukuran file swap.
Unduh dan ekstrak rilis stabil terbaru Leanote untuk sistem Linux 64-bit:
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
Seperti yang disyaratkan oleh Leanote, MongoDB NoSQL DBMS harus sudah ada sebelum Anda berhasil memasang server Leanote.
Buat repo YUM MongoDB 4.0 sebagai berikut:
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
Instal semua komponen dan alat MongoDB menggunakan repo YUM MongoDB 4.0 yang dibuat sebelumnya:
sudo yum install -y mongodb-org
Secara default, MongoDB akan menggunakan 27017port saat bekerja, yang tidak diizinkan jika SELinux dalam enforcingmode pada mesin CentOS 7. Gunakan perintah berikut untuk mengonfirmasi mode SELinux saat ini:
sudo getenforce
Pada instance server Vultr CentOS 7, SELinux dinonaktifkan secara default. Jadi output dari perintah di atas adalah:
Disabled
Dalam hal ini, Anda dapat melompati instruksi berikut ini untuk mengkonfigurasi SELinux dan melanjutkan.
Namun, jika Anda menjalankan instance server CentOS 7 asli, output dari perintah di atas adalah Enforcing. Anda perlu melakukan salah satu dari tiga opsi di bawah ini sebelum Anda dapat memulai dan mengaktifkan layanan MongoDB.
Opsi 1: Izinkan MongoDB untuk menggunakan 27017porta
sudo semanage port -a -t mongod_port_t -p tcp 27017
Opsi 2: Nonaktifkan SELinux
sudo sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
sudo shutdown -r now
Opsi 3: Ubah SELinux ke permissivemode
sudo sed -i 's/SELINUX=enforcing/SELINUX=permissive/' /etc/selinux/config
sudo shutdown -r now
Mulai layanan MongoDB dan buat mulai mengikuti reboot sistem:
sudo systemctl start mongod.service
sudo systemctl enable mongod.service
Gunakan perintah di bawah ini untuk mengimpor data Leanote awal ke MongoDB:
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/
Untuk tujuan keamanan, Anda harus mengaktifkan kontrol akses ke MongoDB segera setelah layanan MongoDB aktif dan berjalan. Untuk tujuan ini, Anda harus membuat setidaknya dua akun pengguna MongoDB: akun administrator pengguna dan akun administrator basis data. Anda juga perlu memodifikasi konfigurasi MongoDB.
Masukkan shell MongoDB:
mongo --host 127.0.0.1:27017
Beralih ke admindatabase:
use admin
Buat administrator pengguna bernama useradminyang menggunakan kata sandi useradminpassword:
db.createUser({ user: "useradmin", pwd: "useradminpassword", roles: [{ role: "userAdminAnyDatabase", db: "admin" }] })
Catatan: Administrator pengguna useradminseharusnya mengelola semua pengguna MongoDB, jadi sebaiknya pilih kata sandi yang kuat. Tentu saja, tip yang lebih aman adalah mengganti useradmindengan nama pengguna yang sulit ditebak.
Beralih ke leanotedatabase:
use leanote
Buat administrator database bernama leanoteadminyang menggunakan kata sandi leanoteadminpassword:
db.createUser({ user: "leanoteadmin", pwd: "leanoteadminpassword", roles: [{ role: "dbOwner", db: "leanote" }] })
Catatan : Sekali lagi, disarankan untuk memilih nama pengguna yang kurang dikenal dan kata sandi yang sulit ditebak.
Setelah pengguna MongoDB dibuat, Anda dapat mengonfirmasi hasilnya:
use admin
db.auth("useradmin", "useradminpassword")
Konfirmasikan admin basis data:
use leanote
db.auth("leanoteadmin", "leanoteadminpassword")
Keduanya akan ditampilkan 1sebagai konfirmasi.
Keluar dari shell MongoDB:
exit
Untuk mengaktifkan kontrol akses ke MongoDB, Anda juga perlu menambahkan dua baris ke file konfigurasi MongoDB /etc/mongod.conf, sebagai berikut:
sudo bash -c "echo 'security:' >> /etc/mongod.conf"
sudo bash -c "echo ' authorization: enabled' >> /etc/mongod.conf"
Mulai ulang layanan MongoDB agar modifikasi diterapkan:
sudo systemctl restart mongod.service
Mulai sekarang, Anda hanya dapat menggunakan dua akun pengguna untuk mengakses dan mengelola MongoDB, useradminuntuk mengelola semua pengguna MongoDB dan leanoteadminuntuk mengelola leanotebasis data saja.
Cadangkan file konfigurasi Leanote /home/leanote/leanote/conf/app.conf:
cd /home/leanote/leanote/conf/
cp app.conf app.conf.bak
Gunakan vieditor untuk membuka file konfigurasi Leanote:
vi app.conf
Temukan baris berikut satu per satu:
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
Ganti masing-masing, seperti yang ditunjukkan di bawah ini:
site.url=http://leanote.example.com:9000
db.username=leanoteadmin
db.password=leanoteadminpassword
app.secret=E52tyCDBRk39HmhdGYJLBS3etXpnz7DymmxkgHBYxd7Y9muWVVJ5QZNdDEaHV2sA
Catatan: Untuk tujuan keamanan, nilai app.secretparameter HARUS berupa string acak 64-bit yang berbeda dari yang asli. Pastikan untuk mengganti nilai E52tyCDBRk39HmhdGYJLBS3etXpnz7DymmxkgHBYxd7Y9muWVVJ5QZNdDEaHV2sAdengan nilai acak 64-bit Anda sendiri.
Simpan dan keluar:
:wq!
Ubah aturan firewall untuk memungkinkan lalu lintas TCP masuk pada port 9000:
sudo firewall-cmd --permanent --add-port=9000/tcp
sudo systemctl reload firewalld.service
Mulai Leanote menggunakan skrip resmi:
cd /home/leanote/leanote/bin
bash run.sh
Setelah melihat Listening on.. 0.0.0.0:9000, arahkan browser web favorit Anda http://leanote.example.com:9000untuk mulai menggunakan situs Leanote.
Gunakan akun admin Leanote default untuk masuk:
adminabc123Untuk tujuan keamanan, Anda harus segera mengganti kata sandi default setelah masuk.
HTTPSaksesUntuk saat ini, Anda sudah dapat mengakses server Leanote menggunakan protokol HTTP, protokol yang kurang aman. Untuk meningkatkan keamanan sistem, Anda dapat mengaktifkannya HTTPSdengan menyebarkan sertifikat Let's Encrypt SSL dan proxy reverse Nginx pada mesin Anda.
Sebelum Anda dapat memperoleh sertifikat SSL Enkripsi Ayo, Anda perlu mengatur nama host dan FQDN dengan benar pada mesin Anda.
Pertama, tekan CTRL+ Cuntuk menghentikan skrip Leanote run.sh.
Selanjutnya, atur nama host dan FQDN sebagai berikut:
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
Anda dapat mengkonfirmasi hasilnya, juga:
hostname
hostname -f
Memblokir lalu lintas masuk di pelabuhan 9000dan memungkinkan lalu lintas masuk di pelabuhan untuk HTTPdan HTTPSlayanan:
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
Instal utilitas Certbot:
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
Terapkan untuk Mari Enkripsi sertifikat SSL untuk domain leanote.example.com:
sudo certbot certonly --standalone --agree-tos --no-eff-email -m admin@example.com -d leanote.example.com
Sertifikat dan rantai akan disimpan sebagai berikut:
/etc/letsencrypt/live/leanote.example.com/fullchain.pem
File kunci pribadi akan disimpan sebagai berikut:
/etc/letsencrypt/live/leanote.example.com/privkey.pem
Secara default, sertifikat SSL Enkripsi Ayo akan kedaluwarsa dalam tiga bulan. Anda dapat mengatur pekerjaan cron, seperti yang ditunjukkan di bawah ini, untuk memperbarui secara otomatis sertifikat Let's Enkripsi Anda:
sudo crontab -e
Tekan Iuntuk masuk ke insertmode, dan kemudian masukkan baris berikut:
0 0,12 * * * python -c 'import random; import time; time.sleep(random.random() * 3600)' && certbot renew
Simpan dan keluar:
:wq!
Pekerjaan cron ini akan mencoba memperbarui sertifikat Let's Encrypt setiap hari pada siang hari.
Instal Nginx menggunakan repo EPEL YUM:
sudo yum install -y nginx
Buat file konfigurasi untuk Leanote:
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
Mulai ulang Nginx untuk mengaktifkan modifikasi Anda:
sudo systemctl daemon-reload
sudo systemctl restart nginx.service
sudo systemctl enable nginx.service
Ubah site.urlpengaturan dalam file konfigurasi Leanote:
cd /home/leanote/leanote/conf/
vi app.conf
Temukan baris berikut:
site.url=http://leanote.example.com:9000
Ganti itu:
site.url=https://leanote.example.com
Simpan dan keluar:
:wq!
Jalankan skrip Leanote lagi:
cd /home/leanote/leanote/bin
bash run.sh
Sekarang, arahkan browser web favorit Anda http://leanote.example.com/, dan Anda akan menemukan bahwa HTTPSprotokol tersebut diaktifkan secara otomatis. Cukup masuk sebagai adminpengguna dengan kata sandi baru yang Anda buat sebelumnya atau daftarkan akun pengguna baru untuk kolaborasi tim.
Sekali lagi, tekan CTRL+ Cuntuk menghentikan skrip Leanote. Kami akan mengubah naskah ini nanti.
wkhtmltopdfprogramLeanote memilih untuk menggunakan wkhtmltopdfprogram ini untuk mengekspor halaman HTML sebagai file PDF. Pasang 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
Jangan lupa untuk mengirimkan wkhtmltopdflintasan biner /usr/local/bin/wkhtmltopdfdi Export PDFbagian di dasbor admin web Leanote ketika Leanote aktif dan berjalan kembali.
Catatan: Jika Anda menemukan karakter yang tidak dapat dibaca dalam file PDF yang diekspor, Anda dapat mencoba untuk memperbaiki masalah dengan menambahkan file font yang diperlukan ke /usr/share/fonts/direktori.
Agar situs Leanote tetap online, Anda dapat menggunakan utilitas Supervisor untuk memulai skrip Leanote secara otomatis jika macet.
Instal Supervisor menggunakan YUM:
sudo yum install -y supervisor
Buat .inifile Supervisor sederhana untuk Leanote:
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
Mulai layanan Pengawas, serta layanan Leanote:
sudo supervisord -c /etc/supervisord.conf
Konfirmasikan status layanan Leanote:
sudo supervisorctl status leanote
Outputnya akan menyerupai berikut ini:
leanote RUNNING pid 3707, uptime 0:02:36
Pelajari langkah-langkah untuk memasang Panel Kontrol Hosting Mudah (EHCP) di Ubuntu 16.04 dengan panduan ini.
Wawasan tentang 26 Teknik Analisis Data Besar: Bagian 1
Baca blog untuk mengetahui berbagai lapisan dalam Arsitektur Big Data dan fungsinya dengan cara yang paling sederhana.
Banyak dari Anda tahu Switch keluar pada Maret 2017 dan fitur-fitur barunya. Bagi yang belum tahu, kami sudah menyiapkan daftar fitur yang membuat 'Switch' menjadi 'gadget yang wajib dimiliki'.
Apakah Anda menunggu raksasa teknologi untuk memenuhi janji mereka? periksa apa yang belum terkirim.
Baca ini untuk mengetahui bagaimana Kecerdasan Buatan menjadi populer di antara perusahaan skala kecil dan bagaimana hal itu meningkatkan kemungkinan untuk membuat mereka tumbuh dan memberi keunggulan pada pesaing mereka.
Saat Sains Berkembang dengan kecepatan tinggi, mengambil alih banyak upaya kita, risiko menundukkan diri kita pada Singularitas yang tidak dapat dijelaskan juga meningkat. Baca, apa arti singularitas bagi kita.
CAPTCHA telah berkembang cukup sulit bagi pengguna untuk dipecahkan dalam beberapa tahun terakhir. Apakah itu akan tetap efektif dalam deteksi spam dan bot di masa mendatang?
Apa itu telemedicine, perawatan kesehatan jarak jauh dan dampaknya terhadap generasi mendatang? Apakah itu tempat yang bagus atau tidak dalam situasi pandemi? Baca blog untuk menemukan tampilan!
Anda mungkin pernah mendengar bahwa peretas menghasilkan banyak uang, tetapi pernahkah Anda bertanya-tanya bagaimana cara mereka mendapatkan uang sebanyak itu? mari berdiskusi.