PrivateBin is an open-source web application for secure and anonymous sharing of text-based data. It provides end-to-end encryption for data privacy and offers various settings that allow users to adjust the level of security and anonymity of their shared data. In this tutorial, we will guide you through the installation process of PrivateBin on Fedora Server Latest.
Before installing PrivateBin, we need to install some required dependencies. Connect to your Fedora Server and run the following command to update the system packages:
sudo dnf update -y
Next, install the required packages using the following command:
sudo dnf install -y git composer php php-pdo php-mysqlnd php-opcache php-gd php-mbstring php-xml php-curl php-json php-zip
Next, we need to clone the PrivateBin repository from GitHub. Run the following command to clone the repository to your web server's document root:
sudo git clone https://github.com/PrivateBin/PrivateBin.git /var/www/html/PrivateBin
This will download the PrivateBin source code from its official repository to the /var/www/html/PrivateBin
folder on your Fedora Server.
Navigate to the PrivateBin folder:
cd /var/www/html/PrivateBin
and run the following command to install the application's dependencies:
sudo composer install --no-dev
Next, we need to configure PrivateBin. Copy the config.sample.php
file to config.php
using the following command:
sudo cp config.sample.php config.php
Then, edit the config.php
file and add your desired configuration. You can start with the following settings:
sudo nano config.php
<?php
// Database settings
$dbEngine = 'mysql'; // Database engine (mysql, postgresql, sqlite, etc.)
$dbName = 'privatebin'; // Database name
$dbUser = 'privatebin'; // Database username
$dbPass = 'password'; // Database password
$dbHost = 'localhost'; // Database host
$dbPort = '3306'; // Database port
// Base settings
$base_url = 'https://example.com/PrivateBin/'; // Base URL of the application
// Security settings
$forceTor = false; // Force .onion URLs
$useSecureLinks = false; // Use HTTPS for all links
$zeroBinCompat = false; // Enable ZeroBin compatibility mode
$debug = false; // Enable debug mode
Save and close the file once you are done.
Now, it's time to configure your web server to serve PrivateBin.
If you're using Apache web server, create a new virtual host configuration file under the /etc/httpd/conf.d/
directory:
sudo nano /etc/httpd/conf.d/privatebin.conf
with the following content:
<VirtualHost *:80>
ServerName example.com
ServerAlias www.example.com
DocumentRoot /var/www/html/PrivateBin/public/
<Directory "/var/www/html/PrivateBin/public/">
AllowOverride All
Options FollowSymLinks
Require all granted
</Directory>
</VirtualHost>
Save and close the file. Then, enable the new virtual host and start Apache:
sudo apachectl configtest
sudo systemctl enable httpd
sudo systemctl start httpd
If you're using Nginx web server, create a new server block configuration file under the /etc/nginx/conf.d/
directory:
sudo nano /etc/nginx/conf.d/privatebin.conf
with the following content:
server {
listen 80;
listen [::]:80;
server_name example.com;
root /var/www/html/PrivateBin/public;
index index.php;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php-fpm/www.sock;
}
}
Save and close the file. Then, enable the new server block and start Nginx:
sudo nginx -t
sudo systemctl enable nginx
sudo systemctl start nginx
Create a new database and user for PrivateBin:
sudo mysql -u root -p
Enter your MySQL root password when prompted. Then, run the following MySQL commands:
CREATE DATABASE privatebin;
GRANT ALL PRIVILEGES ON privatebin.* TO 'privatebin'@'localhost' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;
EXIT;
Remember to replace password
with a strong password.
Next, we need to migrate the database schema. Run the following command from the PrivateBin folder:
sudo php bin/migrate --no-interaction
This will create the necessary tables and fields in your PrivateBin database.
Finally, open your web browser and navigate to your PrivateBin site's URL, which should be http://example.com/
or http://server-ip-address/
. You should see the PrivateBin welcome page, where you can create a new paste or configure the application's settings.
Congratulations! You have successfully installed PrivateBin on your Fedora Server latest.
In this tutorial, we have shown you how to install PrivateBin on Fedora Server latest. PrivateBin is now ready to be used for secure and anonymous sharing of text-based data. You can further customize and tweak the application to meet your specific needs.
If you want to self-host in an easy, hands free way, need an external IP address, or simply want your data in your own hands, give IPv6.rs a try!
Alternatively, for the best virtual desktop, try Shells!