GNU/Linux >> Tutoriels Linux >  >> Debian

DÉPLOIEMENT DE F-DROID SUR DEBIAN AVEC I2P

Voici la procédure d'installation du serveur fdroid. Exécutez toutes les commandes avec l'utilisateur debian, utilisez sudo si nécessaire

INSTALLATION DE F-DROID

apt-get install software-properties-common

add-apt-repository "http://deb.debian.org/debian buster-backports main"

apt update

apt-get install fdroidserver/buster-backports

mkdir ~/android-sdk-linux

cd ~/android-sdk-linux

wget https://dl.google.com/android/repository/commandlinetools-linux-6858069_latest.zip

echo "87f6dcf41d4e642e37ba03cb2e387a542aa0bd73cb689a9e7152aad40a6e7a08  commandlinetools-linux-6858069_latest.zip" | sha256sum -c

commandlinetools-linux-6858069_latest.zip: OK

unzip commandlinetools-linux-6858069_latest.zip

export ANDROID_HOME="$HOME/android-sdk-linux"

./cmdline-tools/bin/sdkmanager --sdk_root="$ANDROID_HOME" platform-tools "build-tools;30.0.3"

echo export ANDROID_HOME=$ANDROID_HOME >> .bashrc

CONFIGURATION DU REPO F-DROID AVEC NGINX

sudo apt-get install nginx

sudo mkdir /usr/share/nginx/www

sudo mkdir /usr/share/nginx/www/fdroid

sudo chown -R $USER /usr/share/nginx/www/fdroid

cd /usr/share/nginx/www/fdroid

fdroid init

nano /etc/nginx/sites-enabled/default

(Faites ce qui suit) :

changé le répertoire racine en ajoutant la ligne suivante :

root /usr/share/nginx/www;

Supprimer ou commenter /var/www/html

sudo service ngnix restart

cd /usr/share/nginx/www/fdroid

Placez maintenant vos fichiers apk dans le répertoire repo

cp /path/to/*.apk /usr/share/nginx/www/fdroid/repo/

fdroid update --create-metadata

fdroid update

adduser android

Password set: android

nano /usr/share/nginx/www/fdroid/config.yml

(ajouter la ligne suivante)

serverwebroot: android@localhost:/usr/share/nginx/www/fdroid

ÉTAPES D'INSTALLATION ET DE CONFIGURATION I2P (Y COMPRIS LES RÈGLES IPTABLES ET I2P AS SYSTEM SERVICE)

INSTALLATION I2P :

sudo apt-get update

sudo apt-get install apt-transport-https curl

sudo apt-get install i2p

CONFIGURATION IPTABLES POUR I2P :

iptables -I INPUT -p tcp -m tcp --dport 7657 -j ACCEPT

iptables -I INPUT -p tcp -m tcp --dport 7658 -j ACCEPT

vi /etc/sysctl.conf

(Ajouter la ligne suivante en bas de sysctl.conf)

net.ipv4.conf.eth0.route_localnet=1

(Enregistrer et quitter)

(Exécutez les commandes suivantes) :

sysctl –p

iptables -t nat -I PREROUTING -p tcp -d 0.0.0.0/0 --dport 7657 -j DNAT --to-destination 127.0.0.1:7657

iptables -t nat -I PREROUTING -p tcp -d 0.0.0.0/0 --dport 7658 -j DNAT --to-destination 127.0.0.1:7658

iptables-save > /etc/iptables.rules

crontab  -e

@reboot sudo  iptables-restore -n </etc/iptables.rules

RÉGLER LE SERVICE I2P POUR DÉMARRER AU REDÉMARRAGE :

systemctl enable i2p

systemctl start i2p

Accès dans le navigateur http://195.15.218.162:7657/config et cliquez sur Hidden Service Manager

Cliquez sur l'assistant de tunnel

Sélectionnez Tunnel de serveur et cliquez sur suivant

Sélectionnez le tunnel HTTP et cliquez sur suivant

Tapez le nom de n'importe quel tunnel dans notre cas "F-DROID"

Type Hôte :127.0.0.1, port :80

Cocher Démarrer automatiquement le tunnel au démarrage du routeur et cliquer sur Terminer

Maintenant, le tunnel sera disponible comme indiqué dans l'image ci-dessous, et le lien i2p est disponible avec le tunnel F-Droid comme destination :nkymfwaye5okwsygtihhghvn5ocsxau6ln6dayjmc5rieabeuooq.b32.i2p

Accessible en tant que :

 http://nkymfwaye5okwsygtihhghvn5ocsxau6ln6dayjmc5rieabeuooq.b32.i2p/fdroid/repo

CONFIGURER I2P POUR UTILISER 90 % DE LA BANDE PASSANTE
Accès dans le navigateur http://195.15.218.162:7657/config et cliquez sur Bande passante et sélectionnez 90 % comme indiqué ci-dessous

CONFIGURATION NGINX POUR I2P

Comme nous avons déjà défini iptables lors de l'installation d'I2P, il ne nous reste plus qu'à faire la configuration suivante dans nginx.

cd /etc/nginx/sites-enabled

nano default

commentez "écoutez 80 default_server ;" et "écoutez [::]:80 default_server ;" et ajouter les lignes suivantes

        listen 127.0.0.1:80;

        server_name 127.0.0.1;

Enregistrez et quittez, puis redémarrez le service nginx comme suit

systemctl restart nginx

MÉTHODE D'ACCÈS AU RÉFÉRENTIEL F-DROID À L'AIDE DE L'URL I2P

ÉTAPE 1 :

Téléchargez et installez F-Droid.apk sur votre mobile à partir du lien suivant

https://f-droid.org/F-Droid.apk

ÉTAPE 2 :

Puisque nous utilisons l'URL I2P, pour accéder à l'URL i2p, nous devrons installer l'application pro invisible de Google Store :

Ouvrez l'application Invizible Pro, cochez les 3 cases et cliquez sur Démarrer

ÉTAPE 3 :

Ouvrez maintenant l'application F-droid installée à l'ÉTAPE 1 et accédez aux paramètres comme indiqué ci-dessous

Maintenant, cliquez sur les dépôts et désactivez tout si un dépôt est ouvert

Cliquez maintenant sur le signe + pour ajouter vos propres référentiels

Dans l'adresse des référentiels, entrez l'adresse suivante Adresse I2P

http://nkymfwaye5okwsygtihhghvn5ocsxau6ln6dayjmc5rieabeuooq.b32.i2p/fdroid/repo

Activez le référentiel nouvellement ajouté, la synchronisation prendra un certain temps

Nous avons terminé, nous pouvons télécharger nos APK et les installer sur nos appareils Android.

PROCÉDURE DE TÉLÉCHARGEMENT ET DE MISE À JOUR DES FICHIERS APK VERS F-DROID REPO

Téléchargez vos APK sur votre système local

Connectez-vous au serveur en utilisant WinSCP comme indiqué ci-dessous

Faites glisser et déposez ComboApp (dossier(s) d'applications) vers le répertoire d'accueil de Debian

Accédez maintenant au shell du serveur F-Droid en utilisant SSH avec l'utilisateur debian comme vous le faites normalement et exécutez les commandes suivantes

cd /usr/share/nginx/www/fdroid

cp ~/ComboApp/*.apk repo/

sudo fdroid update –c

sudo fdroid update

C'est ça. Ouvrez maintenant l'application client F-Droid sur votre appareil Android et toutes les applications que vous avez téléchargées/mises à jour devraient y être affichées.

CONFIGUREZ SSH ET SÉCURISEZ-LE POUR ACCEPTER LA COMMANDE FDROID DEPLOY -V

nano /etc/ssh/sshd_config

(Ajoutez la ligne suivante à la fin de sshd_config, ainsi l'utilisateur Android ne pourra pas ssh depuis n'importe quel emplacement distant)

Autoriser les utilisateurs [email protected] debian

(enregistrer et quitter)

service sshd restart

fdroid deploy –v

CONFIGURER LA SÉCURITÉ HABITUELLE DU SYSTÈME FAIL2BAN POUR PROTÉGER LE SERVEUR

apt install fail2ban -y

vi /etc/fail2ban/jail.d/jail-debian.local

[sshd]

port = 22

maxretry = 3

service fail2ban restart

CONFIGURE AUTOMATIC SECURITY UPDATES
 
sudo apt install unattended-upgrades
 

nano /etc/apt/apt.conf.d/50unattended-upgrades

(Uncomment following lines by removing forward slashes)

"origin=Debian,codename=${distro_codename}-updates";

"origin=Debian,codename=${distro_codename},label=Debian";

"origin=Debian,codename=${distro_codename},label=Debian-Security";

DÉFINIR LE NOM D'HÔTE I2P FDROID.DEV.I2P

vi /etc/hostname

(remplacez le nom d'hôte existant par ce qui suit)

fdroid.dev.i2p

(enregistrer et quitter)

Nano /etc/hosts

(ajouter la ligne suivante)

127.0.0.1 fdroid.dev.i2p

RECOMMANDATIONS POUR LA SÉCURITÉ, LA MAINTENANCE DU SERVEUR ET LES SAUVEGARDES :

Bien que j'aie déjà audité et appliqué tous les correctifs de sécurité, etc. et que notre serveur soit entièrement sécurisé, voici quelques recommandations utiles

– La clé privée existante peut être modifiée ultérieurement

– La sauvegarde hors site/à distance doit être configurée pour les données/applications, etc.

– Un instantané hebdomadaire du VPS doit être pris via le fournisseur d'hébergement.

-La sauvegarde de tout fichier de configuration doit être effectuée avant d'y apporter des modifications, comme cp abc.conf à abc.conf-backup - Une vérification de l'état du serveur peut être effectuée tous les 3 à 4 mois juste pour s'assurer que tout fonctionne correctement et que le serveur est en bonne santé


Debian
  1. Sécurisez Apache avec Lets Encrypt sur Debian 9

  2. Sécurisez Nginx avec Lets Encrypt sur Debian 9

  3. Sécurisez Nginx avec Lets Encrypt sur Debian 10 Linux

  4. Installer WordPress avec Nginx sur Debian 10/11

  5. Démarrer avec Magento sur Debian 10

Comment installer NextCloud sur Debian 9 Stretch avec LAMP

Comment installer Nginx avec PHP-FPM sur Debian 10

Configuration initiale du serveur avec Debian 10/9/8

Configuration initiale du serveur avec Debian 11

Installer Fail2ban sur Debian 11

Comment installer Joomla avec LAMP sur Debian 10