How to install Self-Hosted Accounting Software on Debian 10 Buster


    This tutorial can be displaying you find out how to set up Akaunting on Debian 10 Buster with Apache or Nginx internet server. Akaunting is a free, open-source self-hostable accounting software program. You should utilize it for monitoring private finance or small enterprise accounting.

    Akaunting Options

    • Fully Free and open supply.
    • Simple-to-use web-based Interface. See your financials on-line anytime, anyplace in your Mac, PC, pill or cell phone.
    • Cellular & Pill Prepared Interface
    • Multilingual Admin & Consumer Panel
    • Designed For Small Companies
    • 100% Monetary Knowledge Possession
    • Lifetime FREE Updates
    • You may create purchasers and ship invoices to them. You can even set a password so they may to entry the shopper portal.
    • Ship skilled invoices to purchasers and begin accepting on-line funds, no fee/transaction payment.
    • Add deposits to and transfers between accounts and preserve the stability of your financial institution accounts energetic.
    • Create distributors so you possibly can assign payments and funds to them and later filter their transactions simply.
    • Create and handle payments so your funds are at all times correct and wholesome. Know what and when to pay.
    • Add non-billable bills as funds to be able to preserve your financial institution/money account balances up-to-date.
    • Allow stock monitoring and handle items as they arrive in and exit. Gadgets additionally pace up invoicing.
    • Create limitless financial institution and money accounts and observe their opening and present balances.
    • Ship invoices and add bills in any foreign money and let the system convert them in your principal foreign money.
    • Handle the funds of a number of corporations from one admin panel. Assign customers to completely different corporations.
    • Get detailed monetary reviews that will help you higher visualize all the data it’s worthwhile to enhance your corporation.
    • Prolong Akaunting by putting in apps from the app retailer, you may set up or buy something.
    • Configure permissions on a Position degree to guard and simplify their administration expertise.

    Prerequsites of Putting in Akaunting on Debian 10 Buster

    First, you want a Debian server with at the very least 512MB RAM. If you’re on the lookout for a VPS (digital personal server), then you may click on this particular hyperlink to create an account on Vultr to get $50 free credit score (for brand spanking new customers solely). After you have an account at Vultr, set up Debian 10 Buster in your server and observe the directions under.

    Akaunting requires PHP and MySQL/MariaDB. To observe this tutorial, it is best to have already arrange a LAMP stack or LEMP stack. Should you desire to make use of Apache internet server, then set up LAMP stack.

    Should you desire to make use of Nginx internet server, then set up LEMP stack.

    You additionally want a site title, so your purchasers can see the bill through your area title. I registered my area title at NameCheap as a result of the value is low and so they give whois privateness safety free for all times.

    Now let’s set up Akaunting.

    Step 1: Obtain Akaunting Set up Zip File on Debian 10 Buster Server

    Go to to obtain the Akaunting zip file. Then use scp command or FTP to add the zip file to your Debian 10 Buster server. After the file is uploaded, log into your Debian 10 Buster server through SSH, then create a listing beneath the online root for Akaunting.

    sudo mkdir /var/www/akaunting/

    Extract the zip archive with unzip.

    sudo apt set up unzip

    sudo unzip -d /var/www/akaunting/

    The -d choice specifies the goal listing. Akaunting internet recordsdata can be extracted to /var/www/akaunting/. Then we have to change the proprietor of this listing to www-data in order that the online server can write to this listing.

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

    Step 2: Create a Database and Consumer in MariaDB

    Log into MariaDB database server with the next command. Since MariaDB is now utilizing unix_socket plugin to authentication person login, there’s no must enter MariaDB root password. We simply must prefix the mysql command with sudo.

    sudo mysql

    Then create a database for Akaunting. This tutorial names the database akaunting. You should utilize no matter title you want.

    create database akaunting;

    Create the database person. Once more, you should utilize your most popular title for this person. Exchange your-password together with your most popular password.

    create person [email protected] recognized by ‘your-password’;

    Grant this person all privileges on the akaunting database.

    grant all privileges on akaunting.* to [email protected];

    Flush privileges and exit.

    flush privileges;


    Step 3: Set up PHP Modules

    Run the next instructions to put in PHP modules required or beneficial by Akaunting.

    sudo apt set up php-imagick php7.3-common php7.3-gd php7.3-json php7.3-curl php7.3-zip php7.3-xml php7.3-mbstring php7.3-bz2 php7.3-intl

    Then restart Apache. (Should you use Nginx, you don’t must restart Nginx.)

    sudo systemctl restart apache2

    Step 4: Setting Up Net Server

    We will use Apache or Nginx internet server.


    Should you desire Apache, create a digital host file for Akaunting with a command line textual content editor like Nano.

    sudo nano /and many others/apache2/sites-available/akaunting.conf

    Put the next textual content into the file. Exchange the red-colored textual content together with your precise knowledge. Don’t neglect to set DNS A document for the area title at your area registrar’s DNS supervisor.

    DocumentRoot /var/www/akaunting/

    DirectoryIndex index.php
    Choices +FollowSymLinks
    AllowOverride All
    Require all granted

    ErrorLog ${APACHE_LOG_DIR}/akaunting.error.log
    CustomLog ${APACHE_LOG_DIR}/akaunting.entry.log mixed


    Save and shut the file. Then allow this digital host.

    sudo a2ensite akaunting.conf

    We have to allow the rewrite module.

    sudo a2enmod rewrite

    Restart Apache for the modifications to take impact.

    sudo systemctl restart apache2

    Now go to and you may be redirected to the setup wizard web page ( up/language). Should you see the default Apache web page as a substitute of the setup wizard, then it’s worthwhile to disable the default digital host.

    sudo a2dissite 000-default.conf

    And restart Apache.

    Earlier than coming into any data within the setup wizard, we have to allow HTTPS.


    Should you desire Nginx, create a akaunting.conf file in /and many others/nginx/conf.d/ listing.

    sudo nano /and many others/nginx/conf.d/akaunting.conf

    Put the next textual content into the file. Exchange the red-colored textual content together with your precise knowledge. Don’t neglect to set DNS A document for the area title in your DNS supervisor.

    server {
    hear 80;

    root /var/www/akaunting/;
    index index.php index.html index.htm;
    charset utf-8;

    location / {
    try_files $uri $uri/ /index.php?$query_string;

    # Stop Direct Entry To Protected Recordsdata
    location ~ .(env|log) {
    deny all;

    # Stop Direct Entry To Protected Folders
    location ~ ^/(^app$|bootstrap|config|database|assets|routes|storage|exams|artisan) {
    deny all;

    # Stop Direct Entry To modules/vendor Folders Besides Belongings
    location ~ ^/(modules|vendor)/(.*).((?!ico|gif|jpg|jpeg|png|js|css|much less|sass|font|woff|woff2|eot|ttf|svg).)*$ {
    deny all;

    error_page 404 /index.php;

    access_log /var/log/nginx/akaunting.entry.log;
    error_log /var/log/nginx/akaunting.error.log;

    location ~ .php$
    fastcgi_split_path_info ^(.+.php)(/.+)$;
    fastcgi_pass unix:/run/php/php7.3-fpm.sock;
    fastcgi_index index.php;
    embrace fastcgi_params;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

    location ~ /.(?!well-known).* {
    deny all;


    Save and shut the file. Then check Nginx configuration.

    sudo nginx -t

    If the check is profitable, reload Nginx for the modifications to take impact.

    sudo systemctl reload nginx

    Now go to and you may be redirected to the setup wizard web page ( Earlier than coming into any data within the setup wizard, we have to allow HTTPS.

    Step 5: Enabling HTTPS

    To encrypt the HTTP site visitors, we will allow HTTPS by putting in a free TLS certificates issued from Let’s Encrypt. Run the next command to put in Let’s Encrypt shopper (certbot) on Debian 10 Buster server.

    sudo apt set up certbot

    Should you use Apache, you additionally want to put in the Certbot Apache plugin.

    sudo apt set up python3-certbot-apache

    And run this command to acquire and set up TLS certificates.

    sudo certbot –apache –agree-tos –redirect –hsts –staple-ocsp –email [email protected] -d

    Should you use Nginx, set up the Certbot Nginx plugin.

    sudo apt set up python3-certbot-nginx

    Subsequent, run the next command to acquire and set up TLS certificates.

    sudo certbot –nginx –agree-tos –redirect –hsts –staple-ocsp –email [email protected] -d

    The place

    • –nginx: Use the nginx plugin.
    • –apache: Use the Apache plugin.
    • –agree-tos: Conform to phrases of service.
    • –redirect: Pressure HTTPS by 301 redirect.
    • –hsts: Add the Strict-Transport-Safety header to each HTTP response. Forcing browser to at all times use TLS for the area. Defends towards SSL/TLS Stripping.
    • –staple-ocsp: Allows OCSP Stapling. A sound OCSP response is stapled to the certificates that the server presents throughout TLS.

    The certificates ought to now be obtained and mechanically put in.

    akaunting certbot https

    Step 6: End Set up with the Setup Wizard

    Now go to and the setup wizard will seem. Step one is to decide on your language.

    install akaunting debian 10 buster

    Then enter the database data. Use the database title and database person you created earlier.

    install akaunting with apache web server

    Subsequent, enter firm title and create an admin account.

    install akaunting with nginx web server

    As soon as that’s achieved, you may log into the admin panel.

    akaunting debian 10 buster

    After logging in, it’s worthwhile to observe the wizard to create your first firm.

    akaunting setup wizard

    Now you may handle your finance within the web-based admin panel.

    akaunting self-hosted accounting for small businesses

    Step 7: Configure SMTP

    To ship out emails (comparable to account registration, password reset, sending bill to purchasers, and many others), it’s worthwhile to configure a SMTP server. If you want to make use of your individual mail server to ship emails to purchasers, please take a look at the next article to arrange your individual mail server.

    If you want to make use of a SMTP relay service, I like to recommend Mailjet. You may observe the tutorial under to arrange SMTP relay in your Akaunting server and it is best to have the ability to ship bill to purchasers.

    Wrapping Up

    I hope this tutorial helped you put in Akaunting on Debian 10 Buster server. As at all times, in case you discovered this publish helpful, then subscribe to our free e-newsletter to get extra ideas and tips. Take care 🙂

    Fee this tutorial

    [Total: 2 Average: 5]

    akaunting installation,how to install akaunting on windows 10,akaunting tutorial,akaunting database setup,akaunting default login,akaunting default password,akkunting,akaunting download

    Recent Articles

    Arch Linux Based Distribution from A Beginner

      If you’re in search of an Arch-based newbie’s Linux distribution and simpler to make use of and set up, gives all attainable desktop environments...

    Zerologon: How Bitdefender protects consumers from this Post-Exploit No-Credential Technique

      Zerologon is a zero-credential vulnerability that exploits Home windows Netlogon to permit adversaries entry to the Lively Listing area controllers, first reported in August...

    Hackers gather intelligence on potential opponents of the regime in Iran

      Iranian Group Discovered Spying on Dissidents An Iran linked group, named Rampant Kitten by researchers, has been found focusing on anti-regime organizations in a marketing...

    NCSC warns of a surge in ransomware attacks on educational institutionsSecurity Affairs

      The U.Ok. Nationwide Cyber Safety Centre (NCSC) has issued an alert a couple of surge in ransomware assaults focusing on schooling establishments. The U.Ok. Nationwide...

    Helheim Hassle is a seriously funny adventure puzzle-platforming mix

      What may take the crown for the funniest Linux sport this yr, Helheim Trouble launched earlier in August and it is a real delight...

    Related Stories