當前位置:
首頁 > 知識 > 用樹莓派搭建一個私人社交網路

用樹莓派搭建一個私人社交網路

手把手教你怎樣以低成本的硬體和簡易步驟搭建自己的社交網路。

-- Giuseppe Cassibba

近年來,社交網路已經革新了人們的生活習慣。人們每天都會使用社交頻道與朋友和家人聯繫。但是涉及到隱私和數據安全時,仍有一些共同的問題。儘管社交網路創建了複雜的隱私策略來保護用戶的信息,但如果你不想自己的信息被泄露,最好的辦法還是把數據保存在自己的伺服器上。

一個樹莓派 — 多才多藝的 Raspbian Lite 版本就可以讓你搭建很多有用的家庭服務(參照我的文章樹莓派項目)。通過搜索開源軟體你就可以實現一些令人痴迷的功能,你也可以用這個神奇的設備來感受那些功能。其中一個有趣的嘗試就是在你的樹莓派上安裝 OSSN。

OSSN 是什麼?

開源社交網路(OpenSource Social Network)(OSSN)是用 PHP 寫的一個快速開發社交網路軟體,讓你可以搭建自己的社交網站。OSSN 可以用來搭建不同類型的社交應用,如:

??私人內部網

??公用/公開網路

??社區

OSSN 支持的功能:

??照片

??個人資料

??朋友圈

??表情

??搜索

??聊天

OSSN 運行在 LAMP 伺服器上。硬體需求很簡單,卻能提供強大的用戶界面,也友好支持移動端。

我們需要準備什麼

這個項目很簡單,而且由於我們只安裝遠程 Web 服務,因此我們只需要一些便宜的零件就夠了。我使用的是樹莓派 3B ,但是用樹莓派 3A 或其他更新的板應該也可以。

硬體:

??帶有電源模塊的樹莓派 3B

??一張 SD 卡(最好是性能好點的卡,至少 16 GB)

??一台有 SFTP 軟體(如免費的Filezilla)的桌面 PC,用來把安裝包傳到你的樹莓派上

操作步驟

我們首先搭建一個傳統的 LAMP 伺服器,然後配置資料庫用戶和安裝 OSSN。

1、安裝 Raspbian Buster Lite 操作系統

你可以直接參照我的文章在你的樹莓派上安裝 Raspbian Buster Lite。

為了確保你的系統是最新的,ssh 登錄到樹莓派後在終端輸入下面的命令:

sudo apt-get update

sudo apt-get upgrade

2、安裝 LAMP 服務

LAMP(Linux–Apache–Mysql–Php)服務通常與 MySQL 資料庫配合。在我們的項目中,我們選擇 MariaDB,因為它更輕量,完美支持樹莓派。

安裝 Apache 服務:

sudo apt-get install apache2 -y

你可以通過在瀏覽器輸入http://來檢查 Apache 是否安裝正確:

安裝 PHP:

sudo apt-get install php -y

安裝 MariaDB 服務和 PHP connector:

sudo apt-get install mariadb-server php-mysql -y

安裝 phpMyAdmin:

在 OSSN 中 phpMyAdmin 不是強制安裝的,但我建議你安裝,因為它可以簡化資料庫的管理。

sudo apt-get install phpmyadmin

在 phpMyAdmin 配置界面,執行以下步驟:

??按下空格和 「OK」 選擇 apache(強制)。

??在 dbconfig-common 選擇「Yes」,配置 phpMyAdmin 的資料庫。

??輸入想設置的密碼,按下 「OK」。

??再次輸入 phpMyAdmin 密碼來確認,按下 「OK」。

為 phpMyAdmin 用戶添加資料庫許可權來管理資料庫:

我們用 root 用戶連接 MariaDB(默認沒有密碼)來設置許可權。

sudo mysql -uroot -p

grant all privileges on *.* to "phpmyadmin"@"localhost";

flush privileges;

quit

最後,重啟 Apache 服務:

sudo systemctl restart apache2.service

在瀏覽器輸入http:///phpmyadmin/來檢查 phpMyAdmin 是否正常:

默認的 phpMyAdmin 登錄憑證:

??用戶名:phpmyadmin

??密碼:在 phpMyAdmin 安裝步驟中你設置的密碼

3、安裝 OSSN 所需的其他包和配置 PHP

在第一次配置 OSSN 前,我們還需要在系統上安裝一些所需的包:

??PHP 版本 5.6、7.0 或 7.1

??MYSQL 5 及以上

??APACHE

??MOD_REWRITE

??需要打開 PHP 擴展 cURL 和 Mcrypt

??PHP GD 擴展

??PHP ZIP 擴展

??打開 PHP 設置allow_url_fopen

??PHP JSON 支持

??PHP XML 支持

??PHP OpenSSL

在終端輸入以下命令來安裝上述包:

sudo apt-get install php7.3-curl php7.3-gd php7.3-zip php7.3-json php7.3-xml

打開 mod_rewrite:

sudo a2enmod rewrite

修改默認的 Apache 配置,使用 mod_rewrite:

sudo nano /etc/apache2/sites-available/000-default.conf

在000-default.conf文件中添加下面的內容:

ServerAdmin webmaster@localhost

DocumentRoot /var/www/html

ErrorLog ${APACHE_LOG_DIR}/error.log

CustomLog ${APACHE_LOG_DIR}/access.log combined

# 需要添加的部分開始 --------------------------------

Options Indexes FollowSymLinks MultiViews

AllowOverride All

Require all granted

# 需要添加的部分結束 --------------------------------

安裝 Mcrypt:

sudo apt install php-dev libmcrypt-dev php-pear

sudo pecl channel-update pecl.php.net

sudo pecl install mcrypt-1.0.2

打開 Mcrypt 模塊:

在/etc/php/7.3/apache2/php.ini文件中extension=mcrypt.so(或取消注釋):

sudo nano /etc/php/7.3/apache2/php.ini

allow_url_fopen應該已經在/etc/php/7.3/apache2/php.ini文件中打開了。OpenSSL 應該在 php7.3 中安裝了。

我建議的另一個設置是把 PHP 最大上傳文件數修改為 16 MB:

sudo nano /etc/php/7.3/apache2/php.ini

搜索到upload_max_filesize所在的行,參照下面的設置:

upload_max_filesize = 16M

保存並退出,重啟 Apache:

sudo systemctl restart apache2.service

4、安裝 OSSN

創建資料庫,設置用戶

回到 phpmyadmin web 頁面(瀏覽器輸入http:///phpmyadmin/)並登錄:

??用戶名:phpmyadmin

??密碼:在 phpMyAdmin 安裝步驟中你設置的密碼

點擊資料庫標籤頁:

創建一個資料庫,記下資料庫的名字,因為在之後的安裝過程中,你要手動輸入它。

現在為 OSSN 創建一個資料庫用戶,我使用下面的憑證:

??用戶名:ossn_db_user

??密碼:ossn_db_password

在終端輸入下面的命令(如果你沒有修改過密碼,root 密碼應該仍然是空):

sudo mysql -uroot -p

CREATE USER "ossn_db_user"@"localhost" IDENTIFIED BY "ossn_db_password";

GRANT ALL PRIVILEGES ON ossn_db.* TO "ossn_db_user"@"localhost";

flush privileges;

quit

安裝 OSSN 軟體

在你 PC 上從OSSN 下載頁面下載 OSSN 安裝壓縮文件,保存為文件ossn-v5.2-1577836800.zip。

使用你習慣的 SFTP 軟體把整個壓縮文件通過 SFTP 傳到樹莓派的新目錄/home/pi/download下。常用的(默認)SFP 連接參數是:

??主機:你樹莓派的 IP 地址

??用戶名:pi

??密碼:raspberry(如果沒有修改過默認密碼)

??埠:22

在終端輸入:

cd /home/pi/download/ # 進入上傳的 OSSN 安裝文件的目錄。

unzip ossn-v5.2-1577836800.zip # 從壓縮包中提取所有文件

cd /var/www/html/ # 進入 Apache Web 目錄

sudo rm index.html # 刪除 Apache 默認頁面 - 我們將使用 OSSN

sudo cp -R /home/pi/download/ossn-v5.2-1577836800/* ./ # 複製安裝文件到 web 目錄

sudo chown -R www-data:www-data ./

創建數據文件夾:OSSN 需要一個文件夾來存放數據。出於安全目的,OSSN 建議這個文件夾創建在公開文檔根目錄之外。所以,我們在/opt下創建。

sudo mkdir /opt/ossn_data

sudo chown -R www-data:www-data /opt/ossn_data/

在瀏覽器輸入http://來開始安裝嚮導。

所有項都檢查完後,點擊頁面最下面的下一步按鈕。

閱讀證書驗證並點擊頁面最下面的下一步按鈕來接受證書。

輸入資料庫用戶名,密碼和你選擇的資料庫名字,記得也要輸入 OSSN 數據文件夾名稱。點擊安裝。

輸入你的管理員賬號信息,點擊創建按鈕。

現在所有的工作應該都完成了。點擊結束,進入管理員首頁。

你可以通過 URLhttp:///administrator進入管理員控制面板,普通用戶可以訪問鏈接是http://。

本文首發在peppe8o.com。已獲得轉載授權。

via:https://opensource.com/article/20/3/raspberry-pi-open-source-social

作者:Giuseppe Cassibba選題:lujun9972譯者:lxbwolf校對:wxy

本文由LCTT原創編譯,Linux中國榮譽推出

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!


請您繼續閱讀更多來自 Linux中國 的精彩文章:

阿里巴巴開源的 Dragonfly 升級為 CNCF 孵化項目
使用 Traefik 引導 Kubernetes 流量