Hvernig á að setja upp Hubzilla á Ubuntu 16.04

Hubzilla er opinn vefur vettvangur til að búa til innbyrðis tengdar vefsíður. Í vistkerfi Hubzilla er netþjónn sem keyrir Hubzilla kallaður „hub“ og hópur margra miðstöðva er kallaður „grid“. Miðstöðvar innan nets hafa samskipti sín á milli til að deila upplýsingum eins og auðkenni. Hver sem er getur birt efni opinberlega eða í einkaeigu með því að nota „rás“ sem getur verið einstaklingur, blogg eða vettvangur. Það notar JSON byggt Zot ramma til að innleiða örugg dreifð samskipti og þjónustu. Hubzilla er stútfullt af eiginleikum eins og umræðuþráðum á samfélagsnetum, skýjageymslu, dagatal og tengiliði, hýsingu vefsíðu með vefumsjónarkerfi, wiki og margt fleira.

Forkröfur

  • Vultr Ubuntu 16.04 netþjónstilvik.
  • A sudo notandi .
  • Lén vísaði í átt að dæminu.

Fyrir þessa kennslu munum við nota hubzilla.example.com sem lén sem vísar í átt að Vultr tilvikinu. Vinsamlega vertu viss um að skipta út öllum tilfellum af dæmi léninu fyrir hið raunverulega.

Uppfærðu grunnkerfið þitt með því að nota handbókina Hvernig á að uppfæra Ubuntu 16.04 . Þegar kerfið þitt hefur verið uppfært skaltu halda áfram að setja upp ósjálfstæðin.

Settu upp Nginx

Nginx er framleiðslu vefþjónn til að keyra vefforrit.

Settu upp Nginx.

sudo apt -y install nginx

Ræstu Nginx og gerðu það kleift að keyra sjálfkrafa við ræsingu.

sudo systemctl start nginx
sudo systemctl enable nginx

Settu upp PHP 7.1

Hubzilla styður PHP útgáfur yfir 5.6. Við munum setja upp PHP 7.1 til að tryggja hámarkshraða, öryggi og eindrægni. Bættu við Ubuntu geymslunni fyrir PHP 7.1.

sudo add-apt-repository --yes ppa:ondrej/php
sudo apt update

Settu upp PHP útgáfu 7.1 ásamt einingunum sem Hubzilla krefst.

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

Breyttu PHP stillingarskránni.

sudo nano /etc/php/7.1/fpm/php.ini

Finndu eftirfarandi línu. Taktu úr athugasemdum og stilltu viðeigandi tímabelti.

date.timezone = Asia/Kolkata
;Replace "Asia/Kolkata" with your appropriate time zone

Stilltu viðeigandi minnistakmörk í næstu uppsetningu. Ef það er stillt á -1 mun það gefa handriti ótakmarkað tiltækt minni. Auka einnig hámarksmörk fyrir upphleðslu skráa.

memory_limit = -1
upload_max_filesize = 100M
post_max_size = 100M

Næst skaltu finna eftirfarandi línu og stilla gildi hennar á 0 eftir að hafa afskrifað hana.

cgi.fix_pathinfo=0

Byrjaðu php7.1-fpm og gerðu það kleift að ræsa sjálfkrafa við ræsingu.

sudo systemctl restart php7.1-fpm
sudo systemctl enable php7.1-fpm

Búðu til fundarskrá og gefðu skrifheimildir.

sudo mkdir /var/lib/php/session
sudo chmod -R 777 /var/lib/php/session

Haltu nú áfram að uppsetningu MariaDB.

Settu upp MariaDB

MariaDB er gaffal af MySQL. Bættu MariaDB geymslunni við kerfið þitt þar sem sjálfgefna Ubuntu geymslan inniheldur eldri útgáfu af MariaDB.

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

Settu upp MariaDB.

sudo apt -y install mariadb-server

Gefðu upp sterkt lykilorð fyrir MariaDB rót notandann þegar spurt er. Ræstu MariaDB og gerðu það kleift að byrja sjálfkrafa við ræsingu.

sudo systemctl start mariadb
sudo systemctl enable mariadb

Áður en þú stillir gagnagrunninn þarftu að tryggja MariaDB. Þú getur tryggt það með því að keyra mysql_secure_installation handritið.

sudo mysql_secure_installation

Þú verður beðinn um núverandi MariaDB rót lykilorð. Gefðu upp lykilorðið sem þú hefur stillt við uppsetninguna. Þú verður spurður hvort þú viljir breyta núverandi lykilorði rótarnotanda MariaDB netþjónsins þíns. Þú getur sleppt því að setja nýtt lykilorð þar sem þú hefur þegar gefið upp sterkt lykilorð við uppsetningu. Svaraðu " Y" öllum öðrum spurningum sem spurt er um.

Skráðu þig inn í MySQL skelina sem rót.

mysql -u root -p

Gefðu upp lykilorðið fyrir MariaDB rót notandann til að skrá sig inn.

Keyrðu eftirfarandi fyrirspurnir til að búa til gagnagrunn og gagnagrunnsnotanda fyrir Hubzilla uppsetninguna.

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;

Þú getur skipt út gagnagrunnsnafni hubzilla_data og notendanafni í hubzilla_user samræmi við val þitt. Gakktu úr skugga um að breyta StrongPassword í mjög sterkt lykilorð.

Settu upp Hubzilla

Settu upp Git. Git er nauðsynlegt til að klóna Hubzilla geymsluna frá Github.

sudo apt -y install git

Skiptu yfir í rótarskrána á vefnum og klónaðu Hubzilla geymsluna.

cd /var/www
sudo git clone https://github.com/redmatrix/hubzilla.git hubzilla

Búðu til nýja möppu til að geyma Hubzilla gögn.

cd hubzilla
sudo mkdir -p "store/[data]/smarty3"
sudo chmod -R 777 store

Klóna og settu upp Hubzilla viðbætur.

sudo util/add_addon_repo https://github.com/redmatrix/hubzilla-addons.git hzaddons
sudo util/update_addon_repo hzaddons

Veittu Nginx notandanum eignarhald á skránni og skrám.

sudo chown -R www-data:www-data /var/www/hubzilla

Búðu til sýndargestgjafa

Það er mikilvægt að hafa SSL uppsett á Hubzilla síðu þar sem innskráningar og önnur gögn geta verið í hættu ef þau eru ekki dulkóðuð. Í þessari kennslu munum við nota SSL vottorð sem Let's Encrypt vottorðayfirvöld fá.

Bættu við Certbot geymslunni.

sudo add-apt-repository --yes ppa:certbot/certbot
sudo apt-get update

Settu upp Certbot, sem er biðlaraforritið fyrir Let's Encrypt CA.

sudo apt -y install certbot

Athugið: Til að fá skírteini frá Let's Encrypt CA verður lénið sem á að búa til skírteini að vera beint að þjóninum. Ef ekki, gerðu nauðsynlegar breytingar á DNS-skrám lénsins og bíddu eftir að DNS breiðist út áður en þú gerir vottorðsbeiðnina aftur. Certbot athugar lénsvaldið áður en það gefur upp vottorðin.

Búðu til SSL vottorðin.

sudo certbot certonly --webroot -w /var/www/html -d hubzilla.example.com

Líklegt er að útbúin skírteini séu geymd í /etc/letsencrypt/live/hubzilla.example.com/. SSL vottorðið verður geymt sem fullchain.pem og einkalykill verður geymdur sem privkey.pem.

Við skulum dulkóða vottorð renna út eftir 90 daga, þess vegna er mælt með því að setja upp sjálfvirka endurnýjun skírteina með Cron störf.

Opnaðu cron vinnuskrána.

sudo crontab -e

Bættu við eftirfarandi línu í lok skráarinnar.

30 5 * * * /usr/bin/certbot renew --quiet

Ofangreint cron starf mun keyra á hverjum degi klukkan 5:30. Ef skírteinið á að renna út verður það sjálfkrafa endurnýjað.

Búðu til nýja stillingarskrá fyrir Hubzilla Server.

sudo nano /etc/nginx/sites-available/hubzilla

Fylltu út skrána.

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;
    }
}

Virkjaðu uppsetninguna.

sudo ln -s /etc/nginx/sites-available/hubzilla /etc/nginx/sites-enabled/hubzilla

Prófaðu stillingar Nginx vefþjónsins.

sudo nginx -t

Þú munt sjá eftirfarandi úttak.

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

Ef þú sérð engar villur í stillingunum skaltu endurræsa Nginx svo að nýja stillingin geti tekið gildi.

sudo systemctl restart nginx

Klára

Farðu í að https://hubzilla.example.comnota uppáhalds vafrann þinn og þú munt sjá vefsíðuna sem sýnir "kerfisskoðun" viðmótið. Þú munt sjá að allar kröfur standast í kerfisskoðuninni. Í næsta viðmóti, gefðu upp upplýsingar um gagnagrunninn sem þú hefur búið til áður. Næst skaltu gefa upp netfang stjórnanda, vefslóð vefsíðu og tímabelti. Hubzilla er nú uppsett á netþjóninum þínum, þú getur haldið áfram að búa til stjórnanda notandann með stjórnandanetfanginu sem þú notaðir við uppsetningu.

Að lokum þarftu að setja upp cron til að keyra áætluð verkefni á tíu mínútna fresti.

Búðu til nýja skrá fyrir cron starfið.

sudo nano /etc/cron.d/hubzilla

Fylltu skrána með eftirfarandi.

*/10 * * * * www-data cd /var/www/hubzilla; /usr/bin/php Zotlabs/Daemon/Master.php Cron

Endurræstu cron þjónustuna.

sudo systemctl restart cron

Ef þú vilt búa til staðbundið sett af skjölum skaltu keyra eftirfarandi skipanir.

cd /var/www/hubzilla
util/importdoc
sudo chown www-data:www-data -R /var/www/hubzilla

Hubzilla er nú uppsett og stillt, þú getur boðið vinum þínum og notað vettvanginn eins og þú vilt.

Skildu eftir athugasemd

The Rise of Machines: Real World Applications of AI

The Rise of Machines: Real World Applications of AI

Gervigreind er ekki í framtíðinni, hún er hér í nútímanum Í þessu bloggi Lestu hvernig gervigreindarforrit hafa haft áhrif á ýmsa geira.

DDOS árásir: Stutt yfirlit

DDOS árásir: Stutt yfirlit

Ertu líka fórnarlamb DDOS árása og ruglaður með forvarnaraðferðirnar? Lestu þessa grein til að leysa spurningar þínar.

Hefur þú einhvern tíma velt því fyrir þér hvernig tölvuþrjótar græða peninga?

Hefur þú einhvern tíma velt því fyrir þér hvernig tölvuþrjótar græða peninga?

Þú gætir hafa heyrt að tölvuþrjótar græða mikið af peningum, en hefur þú einhvern tíma velt því fyrir þér hvernig þeir vinna sér inn svona peninga? við skulum ræða.

Byltingarkenndar uppfinningar frá Google sem munu auðvelda lífi þínu.

Byltingarkenndar uppfinningar frá Google sem munu auðvelda lífi þínu.

Viltu sjá byltingarkenndar uppfinningar frá Google og hvernig þessar uppfinningar breyttu lífi hvers manns í dag? Lestu síðan til að blogga til að sjá uppfinningar frá Google.

Föstudagur Nauðsynlegur: Hvað varð um gervigreindardrifna bíla?

Föstudagur Nauðsynlegur: Hvað varð um gervigreindardrifna bíla?

Hugmyndin um að sjálfkeyrandi bílar fari á göturnar með hjálp gervigreindar er draumur sem við höfum átt um tíma núna. En þrátt fyrir nokkur loforð eru þau hvergi sjáanleg. Lestu þetta blogg til að læra meira…

Tæknileg sérkenni: Fjarlæg framtíð mannlegrar siðmenningar?

Tæknileg sérkenni: Fjarlæg framtíð mannlegrar siðmenningar?

Þar sem vísindin þróast hratt og taka yfir mikið af viðleitni okkar, eykst hættan á því að verða fyrir óútskýranlegri einstæðu. Lestu, hvað sérkenni gæti þýtt fyrir okkur.

Virkni Big Data Reference Architecture Layers

Virkni Big Data Reference Architecture Layers

Lestu bloggið til að þekkja mismunandi lög í Big Data Architecture og virkni þeirra á einfaldasta hátt.

Þróun gagnageymslu – Infographic

Þróun gagnageymslu – Infographic

Geymsluaðferðir gagna hafa verið að þróast gæti verið frá fæðingu gagna. Þetta blogg fjallar um þróun gagnageymslu á grundvelli upplýsingamynda.

6 ótrúlegir kostir þess að hafa snjall heimilistæki í lífi okkar

6 ótrúlegir kostir þess að hafa snjall heimilistæki í lífi okkar

Í þessum stafræna heimi hafa snjallheimilistæki orðið afgerandi hluti af lífi. Hér eru nokkrir ótrúlegir kostir snjallheimatækja um hvernig þau gera líf okkar þess virði að lifa því og einfaldara.

macOS Catalina 10.15.4 viðbót uppfærsla veldur fleiri vandamálum en að leysa

macOS Catalina 10.15.4 viðbót uppfærsla veldur fleiri vandamálum en að leysa

Nýlega gaf Apple út macOS Catalina 10.15.4 viðbótaruppfærslu til að laga vandamál en svo virðist sem uppfærslan sé að valda fleiri vandamálum sem leiða til múrsteins á Mac vélum. Lestu þessa grein til að læra meira