------------------------- POUR LA STRUCTURE PHYSIQUE, VOIR DIAGRAMME architecture.dia ------------------------- ARCHITECTURE DE PRIVACY MAISON SERVEUR XMPP Serveur Prosody xmpp Me creer une adresse xmpp sur mon propre serveur Les autres se creent une adresse xmpp n'importe ou et on chat / sms en crypté SERVEUR NEXTCLOUD : PARTAGE DATA EN LECTURE / ECRITURE INFORMATION sur NextCloud, Enlever tout ce qui ne me sert pas Contacts téléphone Zone de dépose de fichiers SERVEUR APACHE / NGINX : PARTAGE DATA EN LECTURE SEULE Apks android (fdroid) Images linux Des trucs téléchargés sur Internet et pas illégaux GIT Rapatrier Git chez moi ? FILMS / SERIES Partager des films et series Mon Openelec Laptop Mathilde Eventuellement un acces pratique et intuitif et stable pour les enfants Limiter l'acces aux dessins animés RPI OpenElec Résoudre les problemes récurrents d'acces réseau au nas Les noms des ressources ne sont pas clairs (publi/partage, etc..) Doit etre pilotable par la télécommande, avec suppression totale du clavier/mouse Lecteur multimedia dans la box probable Trop ouvert Lecteur multimedia dans le firmware de la Télé Avec blocage internet de la Télé (pas de la box, mais bien la télé) CONSOLE DE JEU Voir les distributions qui marchent sur RPI Doit etre bien intégré au systeme, memes exigences que le OpenElec s'il est retenu Verifier le nb d'entrées HDMI sur la télé PARAMETRAGE DES ROUTEURS GENERAL Blocage de tout sauf la Whitelist par Mac Address (une fois que le réseau est stable) Régles de Routage pour controler les routeurs sans toucher aux cables NECESSITE UNE RECHERCHE D'INFORMATIONS Mettre tous les niveaux inférieurs en DMZ du niveau supérieur Se rajoute aux protections Wan standards ? Voir les problemes que ca pose pour le routage et l'acces WIFI OFF pour tous sauf routeur WIFI BOX SFR Adresses Wan 192.168.1.1 STATIC 192.168.1.2 Routeur lvl 2 192.168.1.3 Télévision ROUTER LVL 2 Adresses 192.168.1.2 192.168.20.1 STATIC 192.168.20.2 Router Lvl 3 192.168.20.3 Server XMPP ROUTER LVL 3 Adresses 192.168.20.2 192.168.30.1 STATIC 192.168.30.2 Router Lvl 4 192.168.30.3 Router Lvl 3-1 ROUTER LVL 3-1 Adresses 192.168.30.3 192.168.31.1 STATIC 192.168.31.2 RPI Openelec 192.168.31.3 NAS Films PAS D'ACCES INTERNET ROUTER LVL 4 Adresses 192.168.30.2 192.168.40.1 STATIC 192.168.40.2 Router Lvl 5 192.168.40.3 Router Lvl 4-1 ROUTER LVL 4-1 Adresses 192.168.40.3 192.168.41.1 WIFI ON Non visible DHCP + Réservations dès qu'Historique Mac Addresses Laptop Mathilde Mobile Mathilde Ipad ROUTER LVL 5 toto a faire le pc + nas miroir + bbb externe, voir diagramme DEBIAN Passer a testing INFORMATION Voir ce qui existe en isolation des applis sans installer Qubes INFORMATION Hardening INFORMATION Cryptage de disque sans entrer de mot de passe (transparent) Avec double volume plausible dénégation DATA DIODE Probleme : La chaleur dégagée est énorme Ne peut pas etre en activité a 100% du temps puisque c'est trop chaud trop vite Bouton pour éteindre, et allumer quand j'ai besoin amener le matos au boulot pour faire ca la bas INFORMATION les adaptateurs ethernet fibre ont évolué ? MIROIRS : DEBIAN Testing amd et armhf EN INTERNE Nas Min 1 To : Repertoire de reception blindftp Miroir debian amd64, armel (armhf pour calculs en virgule floattante pas sur tous les proc arm) Rpi plein de drivers;proprietaires Beaglebone fonctionne avec du libre uniquement, mais pas de vpu (decodage video, mais gpu marche) tester installation noob a partir du miroir interne dev totalement separe. PAS Lazarus chercher langage pour communication inter process Prototyper avec langage simple et rapide a utiliser, donc de tres haut niveau installer tous les langages bibliotheques C c++ D Go python perl et extensions java javascript eclipse vim et emacs prologs tout le tintouin du protocole kali php5 dernier noyau tester dist-upgrade et install reseau et update securite depuis miroir VPN routeur vpn activer / désactiver réseau 7 est partagé avec la boite NOEUD MAITRE CLUSTER (openmosix ?, mpich ?) ---------------------------------------------------------------------------------- -----------------INSTALLATION SECURISEE - PRINCIPES --------- ---------------------------------------------------------------------------------- 2 sets de batteries. Les ordis ne fonctionnent que sur une batterie déconnectée et / ou sur energie panneaux solaires, separes du reseau EDF Cage de faraday + sas de faraday Data diode separe reseau externe et reseau securise ----------------------------------------------------------- EEEPC NOIR ----------------------------------------------------------- a faire eeepc comodo firewall mise a jour internet comodo + spybot + windows update outlook sur adresse mail speciale (transmission de trucs) utilisation de la 3G du portable enlever le tac ----------------------------------------------------------- PARAMETRAGE PASSERELLE OPENBSD ----------------------------------------------------------- regles pf voir : http://linux.developpez.com/secubook/node38.php#SECTION006202000000000000000 $lan_if = "nfe0" $wan_if = "rl0" scrub in all scrub out all nat on $wan_if from $lan_if:network to any -> rl0 block in all block out all pass in on $lan_if from 192.168.2.0/24 port {http,ftp} to any pass out on $wan_if from $wan_if to any ----------------------------------------------------------- STRUCTURE PROG ----------------------------------------------------------- Faire simple, minimal pistes : monter partage nfs sur les autres membres cluster 1 repertoire par item exemple N6320/val = valeur du neurone 6320 A-N6320-000100011001101000010010110001/fromx = abcisse du pt de depart de la portion d'axone (0 est l'extension standard, 1 si il y a separation en 2) 1 fichier par valeur partagée piste : tout est graphe comment communiquer ? piste : raf de la comm. on fait d'abord marcher sur un. trop dur, on aura bcp de mal a s'adapter si on a pas cette reflexion des le debut piste : messages udp ? 1 unite de passage de message par ordi ecrit en local ou sur la zone de recuperation de l'autre ordi lit sur sa propre zone de recup messages : Item + valeur a ajouter Contraintes algorithmiques générales format de sortie : flux de texte modularité un programme fait une seule chose NE PAS OPTIMISER !! ! ! ! ! ! ! ! ELEMENTS D'OPTIMISATION A PRENDRE EN COMPTE APRES générer des processii indépendants (pour openmosix -like) pour les groupes neuronaux independants process = groupes de neurones appartenant a - un seul groupe - plusieurs groupes(intersection) process = 1 neurone ou 1 bout d'axone utiliser gcc-(openMP?) pour paralleliser les calculs à l'intérieur d'un process (utilisation efficiente des processeurs de la machine executant le processus) // voisinage : ensemble des neurones et axones susceptibles d'entrer en relation avec moi. make it work, make it good, make it fast neurones fonctions communes : function recoit impulsion(t: time, axone origine : axone, puissance : réel) puissance courante = puissance courante + puissance if conditions de decharge then si axone fils n'existe pas axonefils = taxone.create(neurone moi, posx, posy, posz, groupes) emet impulsion (tempscourant +1, axone fils, puissance max (ou courante..)) function emet impulsion (t : time, axone dest : axone , puissance : reel); axone fils . recoit impulsion(tempscourant +1, self (moi neurone), puissance) puissancecourante = 0 (ou nombre negatif) function conditions de décharge() : booleen result = (puissance courante >= puissance max); Caractéristiques : id : entier 64 bits (long long) puissance courante : reel puissance max : reel axone fils : taxone; historique des réceptions d'impulsion (avec timestamp) : liste {[t: time, axone origine : axone, puissance : réel posx, posy, posz :reel; // position fixe groupes : tableau d'integer 32 bits; en général appartient a 1 seul groupe. les neurones en zone de rencontre appartiennent a plusieurs groupes (sens + concept...etc...) axone fonctions communes : function recoit impulsion (t:time, from axoneorneuron : Taxone ou TNeurone, puissance : reel) ; overload ?? gererles caracteristiques de l'axone : gerer longueur longueur, epaisseur, scission en 2, decouverte d'un neurone cible(verifier groupe), autres... // repartir puissance sur axonesfils faire sommeepaisseur des fils pour chaque axone fils emetimpulsion( temps+rapidite de transmission, to fils[i] , puissance(epaisseur fils / sommeepaisseurs) formule puissance(epaisseur fils / sommeepaisseurs) a mettre comme parametre génétique function emet impulsion (t:time, to axone : axone, puissance : puissance) function create(pere : taxone ou Tneurone, posdepartx,y,z, groupes) : taxone ;overload ?? direction = direction random en 3D (pas de retour sur ses pas) Caractéristiques : id : entier 64 bits (long long) puissance courante : reel; begx, begy, begz, endx, endy, endz : reel groupes : tableau d'integer 32 bits; en général appartient à 1 seul groupe. les neurones en zone de rencontre appartiennent a plusieurs groupes (sens + concept...etc...) liste des axones fils : [id axone] rapidite de transmission : reel; ---conductivite (taux de transfert de l'énergie) (proche de 100%) : reel ---epaisseuraxone : reel; parametres genetiques : gerer longueur, epaisseur, scission en n fils, repartition de la puissance entre axones fils architecture du "cerveau" groupes de neurones (rectangle longueur, largeur, hauteur) (definis par xfrom, xto, yfrom....etc) contrainte : les rectangles doivent avoir leurs aretes paralelles aux axes x y et z en effet pour l'instant, pas envie de me faire chier avec des paralepipedes de biais dans l'espace pour l'appartenance d'un point a ce paralepipede ou pas... A terme, est juste chiant pour la generation des neurones, ne change rien pour le fonctionnement, donc a faire... zone en 4D (x y z + groupe) createGroupe creer les parametres du groupe GroupIndex = 1 NbNeurons = GeneticManager.Get (GroupIndex, 'nbNeurons') (1000) xfrom, xto, yfrom, yto, zfrom, zto = GeneticManager.Get (GroupIndex, groupposxmin) (1000) -100,0,-50,50,-50,50 for i=1 nbNeuron do begin GeneticManager.Get (GroupIndex, '') neuron = TNeuron.create( GeneticManager.Get (GroupIndex, 'NeuronPosX') (renvoie un tirage aleatoire dans la zone choisie) GeneticManager.Get (GroupIndex, ''ScissionFonction) GeneticManager.Get (GroupIndex, ''baseConductivity) GeneticManager.Get (GroupIndex, ''PuissanceMax) etc.. ) groupe.ListeNeurons.add(newNeuron) end; 1 zone sensorielle par sens 1 zone moteur par moteur (stimulable a volonté si quelque chose ne va pas) n zones de traitement du sens avant le croisement avec d'autres sens conceptualisation doit etre suffisante auto croisement des données sensorielles pour abstractisation 1 zone concept par croisement chaine des zones de traitement avec en entree la zone concept, en sortie d'autres sorties de chaines concept paramètres croisables par algo gen dimension des rectangles groupes points de connexions entre reseaux position et taille des groupes intermédiaires (groupes doivent être connexes) extracteur d'info central extraction des ordres moteur on visualise les neurones actifs - gnuplot - matlab. recherche attracteurs étranges par visualisation injecteur d'info central injection des données sensorielles durée de la stimulation localisation de la stimulation basée sur les systemes sensoriels coupe rectangulaire avec projection directe en profondeur de la donnée stimuler la couche en profondeur, pas seulement sur une couche mince, eventuellement la profondeur peut etre fonction de l'intensité du noir au point. debuggage sens : a chaque sens, un ensemble de sens professeurs donnent simultanement les bonnes infos, comme un répétiteur sens CARACTERES (les lettres associéees a (un ? ) neurone(s) : le A, le B, etc... sens AUDIO : synthèse de la parole de mots, lettres, phrases sens IMAGES ALPHABET : images bruitées déformations diverses des mots/ lettres en meme temps, chercher outils genre gimp pour creer images de textes avec variations polices, couleurs, tailles, maj/min, bruitage, etirement, déformations aléatoires de tous types, bavage, contractions, placer en position aleatoire sur fond blanc ou varié pour repérage spatial sens IMAGE CONCEPT : images googleimage associées a un mot (carotte, etc..) liste de mots simples a chercher sur internet tests de melanges de 2 images (carotte a coté de velo?) Idée pour un sens sens + moteur : zoom sur un texte, de la lettre au mot. moteur fait droite gauche haut bas zoom dezoom chrono manager garbage collector manager ini manager string manager trace manager ----------------------------------------------------------- DISQUE DUR USB MULTIBOOT ----------------------------------------------------------- PARTITION DE DONNEES 1.- DATA - FAT32 32-8 = 24 Go 2.- DATA2 - NTFS (pour gros fichiers) LES LIVE UTILITAIRES 2.- Bart PE 350 Mo 3.- Ultimate Boot CD 150 Mo 4.- Grub 50 Mo 5.- GParted 150 Mo 6.- Live + install Kali 1400 Mo CLUSTERING a.- live clustering : clusterknoppix 650 Mo b.- live clustering : bccd 700 Mo c.- live clustering : dcc 700 Mo d.- live clustering : parallelknoppix 700 Mo e.- live clustering : clusterix 300 Mo LES INSTALLEURS Install Linux Debian stable Minimal 50 Mo Install Debian beowulf openmosix install mandriva linux one 700 Mo install Scientific Linux 5200 Mo Install Windows XP + SP2 700 Mo Install Windows Server 2003 700 Mo Install CHAOS Install PLAN9 Install INFERNO Install Instantgrid OPEN BSD (Bastion / serveur) (oliveBSD ?) diverses notes voir si Bastille linux (prog de securisation) peut etre interessant controle de code : yasca(aggregateur de plusieurs outils, rats, cppcheck)