macOS : Comment déterminer l’adresse IP de votre réseau (IP externe) ?

Comment déterminer l’adresse IP de votre réseau ?

Votre fournisseur d’adresse attribue à votre Box une adresse IP, celle-ci change régulièrement (quoi que j’ai noté que ce changement intervienne moins fréquemment).

Obtenir cette adresse IP n’est pas simple, un des moyens est de se connecter sur la borne depuis sa page d’administration et de récupérer l’information. Une autre approche consiste à consulter un site Web du type : http://www.myip.dk (il en existe de nombreux sur Internet).

Mais si vous avez besoin de cette information plus fréquemment, une solution existe en utilisant la commande Curl et le site ipecho.net

Saisissez cette commande dans le Terminal :

$ curl ipecho.net/plain

Vous obtiendrez en retour l’adresse ip qui vous a été attribuée. Pour placer la ligne de commande dans un flux Automator, voici comment faire :

Lancez Automator, ajoutez l’action Exécuter un script Shell, placez le texte de la commande. Il faut ensuite récupérer l’adresse IP pour la placer dans une notification (ou un email selon votre besoin) et pour terminer utiliser la variable dans la notification et voilà.

image-01 (écran Automator avec le flux complet)

Henri Dominique Rapin

Advertisements

macOS : Comment vérifier les fichiers exclus de Time Machine ?

Backup

Vous avez un doute sur la prise en charge d’un nouveau dossier ou vous souhaitez simplement vérifier les fichiers exclus de Time Machine ?

Ouvrez le Terminal et saisissez cette ligne :

 $ tmutil isexcluded (et le nom du fichier) 

Le plus simple est de glisser/déposer le fichier sur le Terminal.

Le résultat est le suivant :

tmutil_isexcluded

[included] signifiant que le fichier est bien sauvegardé.

Pour découvrir les autres options de la commande tmutil (Time Machine) :

https://developer.apple.com/library/mac/documentation/Darwin/Reference/ManPages/man8/tmutil.8.html

Henri Dominique Rapin


Applwe reasonably small Recevez toutes les semaines le résumé des publications : Abonnez-vous à la Newsletter !

Sécurité :: Comment fonctionne le Sandboxing sur Mac OS X ?

Finder

Le SandBoxing sur Mac OS X.

Le terme «SandBox» est particulièrement utilisé dans le monde Linux. Il se traduit par «bac à sable» et décrit un type de protection lors de l’exécution d’un logiciel.

Voir la page WIKI : http://fr.wikipedia.org/wiki/Sandbox_(sécurité_informatique) 

Imaginons un logiciel qui fonctionne sur un Mac, par défaut ce logiciel a les droits en écriture et lecture qui sont ceux de l’utilisateur qui a lancé le programme. Toujours par défaut, un utilisateur sur Mac peut écrire à volonté dans son dossier personnel (la petit maison blanche) mais dès qu’il veut modifier le contenu d’un répertoire hors de ce dossier il lui faut montrer pâte blanche et indiquer un mot de passe.

Cette approche par «compartiments» fait la force des systèmes Unix et participe à leur réputation. Dans le monde Windows les choses sont beaucoup moins claires.

Revenons sur notre exemple, notre application fonctionne sur votre Mac et un personnage mal intentionné a réussi à utiliser une faille de ce programme et le contrôle maintenant de l’extérieur. Il peut à cet instant détruire les fichiers auxquelles votre application et plus directement votre compte ont accès.

Ce genre d’attaque existe bien, certes elle ne s’applique pas en particulier aux applications lancées sur un ordinateur mais plutôt à des fonctions de» serveur» comme le serveur Internet Apache qui est livré avec Mac OS.

Une première réponse à ce type d’attaque est bien sur l’utilisation d’un «firewall», qui empêcherait l’accès de l’extérieur à ce programme. Mais quand vous mettez en place un serveur, c’est en général pour qu’il soit accessible de l’extérieur. Donc cette réponse n’est pas la plus appropriée.

Une autre solution consiste à «isoler» l’application, c’est à dire qu’elle s’exécute, mais n’a pas accès à certaines ressources de la machine. Prenons de nouveau notre exemple, cette fois imaginons que nous avons un moyen technique qui nous permet d’interdire à l’application toute écriture dans le dossier personnel de l’utilisateur ou dans une autre zone du système. Dans ce cas de figure, peut importe celui qui lance l’application, celle-ci ne peut plus écrire n’importe ou.

Ainsi donc un assaillant ayant pris possession du programme ne peut écrire et donc être nuisible. Cette technique est celle du «bac à sable» parce que l’application ou le serveur ne peut pas accéder au dehors de la zone de sécurité et ceci peu importe celui qui lance le service ou l’application.

Si les SandBox sont très communs sur Linux ou BSD, ils étaient très complexes à mettre en place sur Mac… Sauf depuis Leopard, Apple propose un solution qu’elle appelle ironiquement «SeatBelt» ou «ceinture de sécurité» (ils sont toujours très poétiques à cupertino).

Le problème de cette solution est qu’elle n’est pas documentée et Apple a raison sur ce sujet. Moins ils en diront et moins de personne tenteront de la contourner.

La solution d’Apple n’est pas inconnue des Unixiens, il s’agit de l’utilisation du framework de TrustedBSD et SELinux pour les distributions linux. A une époque Apple a essayé une version dite «SEDarwin» compatible SELinux mais a renoncé à ce projet pour se consacrer à «Seatbelt».

En pratique comment ça marche sur Mac OS X  :

les applications qu’Apple a placé dans un Bac à sable sont listées dans le dossier suivant :

/usr/share/sandbox. pour en explorer le contenu dans le terminal lancez cette commande :

$ cd /usr/share/sandbox

puis

$ ls

Une partie de la liste devrait être la suivante :

bsd.sb ntpd.sb
cvmsCompAgent.sb portmap.sb
cvmsServer.sb quicklookd-job-creation.sb
fontmover.sb quicklookd.sb
kadmind.sb sshd.sb
krb5kdc.sb syslogd.sb
mDNSResponder.sb xgridagentd.sb
mds.sb xgridagentd_task_nobody.sb
mdworker.sb xgridagentd_task_somebody.sb
named.sb xgridcontrollerd.sb

Tous les fichiers portent l’extension «.sb». SURTOUT ne modifiez ni ne supprimez ces fichiers. Pour en voir le contenu tapez la commande suivante :

$ cat fontmover.sb

Ce qui affichera le contenu du fichier «fontmover.sb». Ce fichier est divisé en sections :

Capture d écran 2012 05 07 à 18 03 59

Dont une section du nom de « (allo file-read* «, celle-ci détermine l’espace ou le chemin dans lequel l’application peut lire de fichiers. Une autre section du nom de « (allow file-write*» précise les dossiers où peuvent être écrits des informations par l’application «fontmover.» et ainsi de suite, le bac à sable est ainsi défini.

Vous pouvez vous interroger sur l’intérêt de cette technologie pour un utilisateur, prenons un programme qui voudrait communiquer avec l’extérieur (comme «Adobe»), il n’est pas possible de leur interdire l’accès au réseau. ( Pour être honnête, il existe une solution avec le firewall IPFW embarqué dans Mac OS, mais là n’est pas le sujet).

Il est possible grâce à ce mécanisme «SeatBelt» et de« SandBoxing » de lui interdire par exemple le réseau . Pour cela l’opération est simple, j’ai pris comme exemple d’interdire à l’Utilitaire Réseau » d’accéder au réseau :

Premièrement nous allons créer un profil, c’est un simple fichier texte. Dans un éditeur de texte «texedit» ou «Bean» tapez ces trois lignes :

(version 1)

(debug deny)
(deny network*)
(allow default)

La ligne (deny Network*) indique qu’aucun accès au réseau n’est permis à l’application. Vous pouvez ajouter une ligne (deny file-write*) qui interdit l’écriture de fichiers. Vous l’aurez compris l’astérixe signifie «tout».

Bean

Enregistrez le tout sous le nom «noreseau.sb» dans votre dossier personnel.

Lancez cette commande :

$ sudo

Puis après avoir saisi votre mot de passe :

$ sandbox-exec -f ~/noreseau.sb /Applications/Utilities/Network\ Utility.app/Contents/MacOS/Network\ Utility

Il faut, si vous souhaiter placer dans un sandbox une application, récupérer son exécutable qui se trouve dans le paquet de l’application. Dans le cas de l’utilitaire réseau le chemin ets : « /Applications/Utilities/Network\ Utility.app/Contents/MacOS/Network\ Utility » .

Utilitaire1

L’application sera ouverte automatique et ne pourra accéder au réseau. Vous avez là un moyen simple d’empêcher une application d’écrire dans des fichiers ou d’accéder au réseau comme par exemple «Adobe»…

Utilitaire2

Le fait d’être dans un bac à sable ne dure que le temps ou l’application est ouverte, après sa fermeture elle redémarre hors du « sandbox ».

Le principe du Sandbox n’est pas courant, mais il semble que Google Chrome l’utilise, ceci afin de prévenir des composants qui pourraient être néfastes pour les utilisateurs de ce Butineur.

Henri Dominique Rapin

Mac :: Comment identification des Processus sur Mac ?

Un grand nombre de processus fonctionnent dans votre Mac. Ils ont parfois des noms bizarres… héritage du monde Unix. Un site vous propose d’identifier ces processus. Il est en Anglais mais très accessible. Voici l’opération étape par étape. 1) ouvrez Safari avec l’adresse ci dessous : http://triviaware.com/macprocess/

Image_40.png

2) lancez le Terminal (vous le trouverez dans le dossier Applications puis Utilitaires). Dans la fenêtre saisissez :

$ ps -A > process.txt
Terminal — bash — 61×17.jpg

Le A est en majuscule et le signe supérieur bien séparé du texte par des espaces. Cela aura pour effet de créer un fichier texte du nom de « process.txt », vous le trouverez dans votre dossier personnel, la petite maison blanche. 3) Cliquez sur le bouton  » Choisir le Fichier » et sélectionnez le fichier « process.txt » et enfin cliquez sur le bouton « Upload File » . Après quelques secondes une page similaire apparaît.

triviaware.jpg

Les processus jaunes sont connus, ceux en bleu ne le sont pas, en cliquant sur la ligne « google process or application » le nom du process est envoyé à Google pour recherche. En théorie vous ne devriez pas avoir un grand nombre de processus inconnus, ce site peut vous permettre d’identifier un processus installé par un cheval de troie… en autre. HDR

TimeMachine :: Comment obtenir la liste des fichier non pris en compte par TimeMachine ?

image.jpg

Voici comme obtenir la liste des fichier non pris en compte par TimeMachine :

$ sudo mdfind "com_apple_backup_excludeItem = 'com.apple.backupd'"
Terminal — bash — 84×25.jpg

HDR

Mac :: Comment afficher des messages lors de connexion (Shell, FTP, SSH)

Terminal.png

Comment afficher des messages lors de connexion (Shell, FTP, SSH) ?

Ajouter du texte affiché à la connexion au Shell, SSH et FTP c’est souvent un bon point de départ en ce qui concerne la sécurité. Cela fait parti des bonnes pratiques, informez vos utilisateurs des conditions d’utilisations, cela évite souvent les abus.

Pour le Shell

Le fichier de configuration à éditer pour le Shell est : /etc/motd

« Motd » signifie « message of the day », et il contient généralement des messages destinés aux utilisateurs concernant l’administration du système. Ce fichier est affiché avant l’ouverture du Shell par le process login.

Pour ajouter simplement du texte à ce fichier :

$ sudo echo "Votre texte" >> /etc/motd

Pour lire le contenu du fichier :

$ sudo cat /etc/motd

Pour le serveur FTP :

Le fichier de configuration à éditer pour ftp est : /etc/ftpwelcome

Le fichier « ftpwelcome » verra son contenu affiché lors d’une connexion avant que soit affiché le login.

Pour ajouter simplement du texte à ce fichier :

$ sudo echo "Votre texte" >> /etc/ftpwelcome

Pour lire le contenu du fichier :

$ sudo cat /etc/ftpwelcome

Pour SSH :

Le fichier de configuration à éditer pour le SHELL est : /etc/sshd_config

SSH affiche le contenu du fichier Banner : « /etc/banner »

Pour obtenir le chemin vers le fichier

$ sudo cat /etc/sshd_config | grep Banner

Pour ajouter simplement du texte à ce fichier :

$ sudo echo "Votre texte" >> /etc/banner

Pour lire le contenu du fichier :

$ sudo cat /etc/banner

Henri Dominique Rapin

Mountain Lion :: Comment désactiver la fermeture automatique des applications ?

Saviez-vous que depuis Mac OS X Lion, le système ferme les applications non utilisées depuis un certain temps ? Et bien c’est une fonction qui permet à Mac OS X de libérer de la mémoire.

Et si vous craignez pour les documents ouverts et non enregistrés, sachez que grâce à la fonction « Auto Save »  (ou « enregistrement en continu » en français), ils sont continuellement enregistrés. Dès lors fermer autoritairement une application ne pose plus de problème.

Si toutefois vous craignez pour vos documents, il existe un moyen de désactiver cette fonctionalité, saisissez dans le Terminal la ligne de commandes suivante :

$ defaults write -g NSDisableAutomaticTermination -bool TRUE