@ -50,72 +50,71 @@ feature. Every backup to **Google Drive** will be encrypted with the same
algorithm used in the manual backup so it's quite easy to restore to a new
algorithm used in the manual backup so it's quite easy to restore to a new
installed machine.
installed machine.
After set-up, the backup feature will do first store of the OPNsense
After set-up, the backup feature will run a first backup of the OPNsense
config file and subsequently a daily new backup of changed config
configuration file. Then, if the configuration is subsequently changed, a new backup will be run. Only one backup is run per day after configuration changes.
content.
----------------------
----------------------
Setup Google API usage
Setup Google API usage
----------------------
----------------------
The instructions below apply to a standard Google account. Some of the settings appear slightly differently for G Suite accounts.
The instructions below apply to a standard Google account. Some of the settings appear slightly differently for Google Workspace (formerly G Suite) accounts.
A standard Google account can be created at https://accounts.google.com.
A standard Google account can be created `here <https://accounts.google.com/signup?hl=en>`__.
1. Set up a Google Project
1. Set up a Google Project
==========================
==========================
First you need to set up a project in the Google developer console:
First you need to set up a project in the Google developer console.
- Go to https://console.developers.google.com/project and log into your Google account.
- Go to the `developer console <https://console.developers.google.com/project>`__ and log into your Google account.
- On the "Manage resources" page that appears, click on the **+ CREATE PROJECT** button:
- On the "Manage resources" page that appears, click on the **+ CREATE PROJECT** button:
.. image:: ./images/google_manage_resources.png
.. image:: ./images/google_manage_resources.png
- On the next page enter a name for your project, for example "OPNsense Backups". You may leave it as the default name ("My Project #####"), as it does not really matter. Then click on the **CREATE** button:
- On the next page enter a name for your project, for example "OPNsense Backups". You may leave it as the default name ("My Project #####"), as it does not really matter. Then click on the **CREATE** button:
.. image:: ./images/google_create_project.png
.. image:: ./images/google_create_project.png
- Now enable the Google Drive API for your project. In the search bar at the top of the page, search for "Google Drive API" and click on the corresponding search result:
- Now enable the Google Drive API for your project. In the search bar at the top of the page, search for "Google Drive API" and click on the corresponding search result:
.. image:: ./images/google_drive_api.png
.. image:: ./images/google_drive_api.png
- On the next page, make sure your project name (for example "OPNsense Backups") is displayed at the top of the page - if not, select it in the dropdown. Then click the **ENABLE** button:
- On the next page, make sure your project name (for example "OPNsense Backups") is displayed at the top of the page - if not, select it in the dropdown. Then click the **ENABLE** button:
.. image:: ./images/google_drive_enable.png
.. image:: ./images/google_drive_enable.png
- On the next page that appears, click the **CREATE CREDENTIALS** button:
- On the next page that appears, click the **CREATE CREDENTIALS** button:
.. image:: ./images/google_create_credentials.png
.. image:: ./images/google_create_credentials.png
- The Credentials Wizard will then appear. Click on the **service account** hyperlink that appears on the page:
- The Credentials Wizard will then appear. Click on the **service account** hyperlink that appears on the page:
- On the next page, take a note of the email address for your new service account - you will need it later. Then click on the three vertical dots under the **Actions** heading for your service account, then click on **Create key**:
- On the next page, take a note of the email address for your new service account - you will need it later. Then click on the three vertical dots under the **Actions** heading for your service account, then click on **Create key**:
- You will be prompted to download the key. Do so, and then click **CLOSE** in the popup screen.
- You will be prompted to download the key. Do so, and then click **CLOSE** in the popup screen.
@ -128,43 +127,43 @@ The next thing is to create a folder in Google Drive and share it to the service
- Go to https://drive.google.com. You should be still logged into your Google account, otherwise log in.
- Go to https://drive.google.com. You should be still logged into your Google account, otherwise log in.
- Click **+ New** (upper left of the screen) and select **Folder** in the dropdown menu that appears:
- Click **+ New** (upper left of the screen) and select **Folder** in the dropdown menu that appears:
.. image:: ./images/google_drive_new.png
.. image:: ./images/google_drive_new.png
- Enter a name for the folder (for example "OPNsense Backups", it doesn't really matter) and then click the **CREATE** button:
- Enter a name for the folder (for example "OPNsense Backups", it doesn't really matter) and then click the **CREATE** button:
.. image:: ./images/google_drive_folder.png
.. image:: ./images/google_drive_folder.png
- Right-click the newly created folder and click **Share** in the dropdown menu that appears:
- Right-click the newly created folder and click **Share** in the dropdown menu that appears:
.. image:: ./images/google_drive_share.png
.. image:: ./images/google_drive_share.png
- Paste the email address for the service account into the "Add people and groups" box, press Enter and then click the **Send** button that appears:
- Paste the email address for the service account into the "Add people and groups" box, press Enter and then click the **Send** button that appears:
.. image:: ./images/google_drive_send.png
.. image:: ./images/google_drive_send.png
- Now double-click on the folder to open it and take a note of the folder ID from the url - you will need it later. The folder ID is the last piece of the URL after ``/folders/``:
- Now double-click on the folder to open it and take a note of the folder ID from the URL - you will need it later. The folder ID is the last piece of the URL after ``/folders/``:
.. image:: ./images/google_drive_folder_id.png
.. image:: ./images/google_drive_folder_id.png
3. Set up the account in OPNsense
3. Set up the account in OPNsense
=================================
=================================
Now we can put it all together in OPNsense.
Now put it all together in OPNsense.
- Log into your OPNsense firewall and go to the backup feature. It is located at :menuselection:`System --> Configuration --> Backups`.
- Log into your OPNsense firewall and go to the backup feature. It is located at :menuselection:`System --> Configuration --> Backups`.
- Scroll down to the Google Drive section and and enter the following values:
- Scroll down to the Google Drive section and and enter the following values:
- Then click the **Setup/Test Google Drive** button. OPNsense will automatically save and test your settings and you will receive either an error (connectivity issues) or a message saying "Backup successful" with a list of files currently in the backup.
- Then click the **Setup/Test Google Drive** button. OPNsense will automatically save and test your settings and you will receive either an error (connectivity issues) or a message saying "Backup successful" with a list of files currently in the backup.