PROJET AUTOBLOG


Planet-Libre

source: Planet-Libre

⇐ retour index

Framablog : Remarquable intervention d'Isabelle Attard aux États Généraux de l’Open Source

jeudi 13 mars 2014 à 09:29

Les États Généraux de l’Open Source étaient réunis le 6 mars dernier pour une convention de synthèse. Nous avons choisi d’en reproduire ci-dessous la remarquable conclusion de la députée Isabelle Attard.

Si tous nos parlementaires partageaient en la matière ses compétences et son état d’esprit, nous n’en sérions pas là mais beaucoup plus loin.

À qui la faute ? À eux, bien sûr, mais également à nous. Alors continuons notre travail pour que sa « proposition 0 » infuse toujours plus la société. Et merci au passage pour la précieuse et pertinente analogie de l’école publique construite par une entreprise privée.

Remarque : Nous avons déjà évoqué Isabelle Attard lors de la triste histoire législative du DRM dans les livres numérique ainsi que sur la question du domaine public sur Romaine Lubrique.


Isabelle Attard


Isabelle Attard - Conférence de clôture - États Généraux de l’Open Source

URL d’origine du document

Merci Michel Isnard et Alexandre Zapolsky de m’avoir invitée à cette après-midi consacrée à l’open source.

Bravo pour tout ce qui a été accompli au sein des groupes de travail durant l’année. Juste un petit bémol : je constate qu’aucune femme n’est venue s’exprimer sur scène mais je compte sur vous pour faire mieux l’année prochaine.

Vous savez que le logiciel libre me tient à cœur. Pas pour des raisons idéologiques ou parce que « c’est à la mode », mais parce que c’est un vrai enjeu de société. Oui, je sais que je conclus les États Généraux de l’Open Source. Je sais aussi que la distinction entre logiciels Open Source et logiciels Libres est un débat virulent entre les partisans de chaque dénomination. Ces distinctions me paraissent trop peu importantes pour faire l’objet d’une argumentation. D’ailleurs, le deuxième groupe de travail aujourd’hui utilise « Open Source », et le quatrième « logiciel libre ».

Mais au quotidien, à l’Assemblée nationale, ce sont les mots « logiciel libre » qui ont ma préférence. Déjà parce qu’ils sont français. C’est un premier critère d’acceptabilité important pour être entendus de mes collègues députés. Ensuite, parce qu’ils mettent en avant la liberté, et c’est bien ce qui caractérise ces logiciels : les libertés offertes à leurs usagers. Enfin, parce que ces libertés aboutissent aux trois grands avantages majeurs des logiciels libres : coût, sécurité, pérennité.

Le premier ministre Jean-Marc Ayrault a insisté sur ces avantages dans sa fameuse circulaire sur l’usage du logiciel libre dans l’administration.

Et pourtant, pourtant, toutes mes tentatives de favoriser le logiciel libre dans la loi se sont heurtées à de grandes résistances. Lors du projet de loi refondation de l’école. Lors du projet de loi enseignement supérieur et recherche. Lors du projet de loi de finances 2014.

Mes collègues députés, je suis gênée de le dire, ont pour beaucoup fait preuve d’ignorance. Ces sujets sont complexes, et tous les parlementaires ne font pas le choix de s’y intéresser. Ils ont aussi, pour certains, cédé aux lobbies du logiciel propriétaire. Le chantage à l’emploi des grands éditeurs est une réalité.

Pourtant, je suis confiante dans l’avenir. La prise de conscience des donneurs d’ordre est une réalité, qu’ils soient des secteurs publics ou privés. De mon côté, j’ai utilisé les questions écrites aux ministères pour leur faire réaliser le bilan de leurs actions, suite à la circulaire sur le logiciel libre. Les premières réponses ont montré qu’il y avait de bons élèves, et de moins bons. Voire des silencieux.

C’est pourquoi je renverrai cette année la même série de questions. L’évolution des réponses nous permettra, à vous comme à moi, de mesurer la réalité du changement de pratique au sein de l’administration publique. Un problème récurrent au sein des ministères est l’absence d’outils de contrôle de gestion distinguant entre les dépenses liées aux logiciels libres et celles liées aux logiciels propriétaires. Je déposerai donc une autre série de question sur la mise en place de cette distinction dans la comptabilité publique.

En parallèle, je continuerai à promouvoir les nombreux avantages du logiciel libre auprès des ministres et lors des débats parlementaires.

La moitié des propositions de vos groupes de travail requiert la bonne volonté du gouvernement et/ou du Parlement pour aboutir. Les voici :

Je partage assez largement ces propositions. Mais je pense qu’il en manque une, qui est un préalable à toutes celles-ci. Vous me permettrez, je l’espère, de suggérer une proposition 0. Elle s’intitulerait : « rendre le logiciel libre évident pour les décideurs politiques ». Par évident, j’entends à la fois l’aspect « solution à beaucoup de problèmes », et l’aspect « sujet simple dont je peux débattre sans passer d’abord un brevet d’aptitude ».

Aujourd’hui, à part quelques experts dans les administrations ministérielles, et une dizaine de députés, qui considère le logiciel libre comme une évidence ?

Le sujet est complexe, technique, c’est pourquoi nous devons tous faire un effort de vulgarisation. Je vous propose l’analogie suivante :

Imaginez une école publique, construite par une entreprise privée. Qui trouverait normal que l’entreprise ne fournisse par les plans à la mairie qui a payé la construction ? Qui trouverait normal que l’entreprise impose d’être la seule autorisée à réparer l’école ? Qui trouverait normal que l’entreprise interdise d’agrandir ou de modifier l’école sans son accord ?

C’est pourtant ce que les éditeurs des logiciels propriétaires payés par le secteur public imposent.

C’est, je le crois, avec des exemples simples, des analogies parlantes, que nous pourrons faire avancer la compréhension des enjeux du logiciel libre.

Le Conseil d’État l’a rappelé, le logiciel libre est un modèle de service. Ce n’est pas un choix technologique, contrairement à ce que prétendent les lobbyistes du logiciel propriétaire. Les collectivités locales ont donc parfaitement le droit d’imposer le libre dans leurs appels d’offre et dans leurs pratiques.

Il nous reste à le leur faire savoir, aussi souvent que nécessaire. Mais nous sommes tous d’accord à ce sujet, n’est-ce pas ?

Isabelle Attard

Gravatar de Framablog
Original post of Framablog.Votez pour ce billet sur Planet Libre.

Framablog : 25 ans du web : Tim Berners-Lee répond aux questions des internautes sur Reddit

jeudi 13 mars 2014 à 01:03

Le mythique site communautaire Reddit a une tradition, celle d’inviter régulièrement des personnalités pour une session AMA, acronyme de Ask Me Anything pour « demandez-moi ce que vous voulez ».

On a vu Bill Gates, Madonna et même Obama s’engager ainsi dans le jeu des questions/réponses. Ils donnent généralement une preuve de leur identité en publiant juste avant une photo d’eux contextualisée avec la date et/ou devant un ordinateur (cf image ci-dessous).

Quelle belle surprise de voir débarquer hier soir Tim Berners-Lee en personne, le jour-même de l’anniversaire des 25 ans du web !

Nous avons traduit les meilleurs échanges du « père du WWW ». Drôles parfois mais surtout très intéressants.


Tim Berners-Lee Reddit AMA


Tim Berners-Lee répond à la communauté Reddit

I am Tim Berners-Lee. I invented the WWW 25 years ago and I am concerned and excited about its future. AMA

12 mars 2014 - Tim Berners-Lee - Reddit (AMA)
(Traduction : Peekmo, s0r00t, François, r0u, toto, eve, Noon + anonyme)

Je suis Tim Berners-Lee (alias Timbl). J’ai inventé le WWW il y a 25 ans et je suis préoccupé autant qu’enthousiasmé par son avenir. AMA

Le 12 mars 1989 j’ai envoyé ma proposition pour le World Wide Web. 25 ans après, je suis surpris de voir que tant de grandes réalisations ont été menées à bien, transformant notre façon de parler, partager et créer. Comme nous célébrons aujourd’hui les 25 ans du web (voir webat25.org), je veux que nous tous pensions à son futur et que nous nous demandions comment nous pouvons aider à en faire une vraie plateforme ouverte, sécurisée et créative, disponible à tout le monde. L’idée d’un AMA est un autre grand exemple de la manière dont le Web permet de connecter et de transmettre ce pouvoir à des personnes autour du globe et je suis vraiment enthousiaste à l’idée de répondre à vos questions !

Preuve que c’est moi : http://imgur.com/o16DOPb. Rappelez-vous de parler du web que vous voulez en utilisant #web25.

Reddit : Pensez-vous que dans le (pas si lointain) avenir, nous allons regarder en arrière et qu’alors nous nous estimerons heureux d’avoir été témoins d’un world wide web neutre, libre et non censurée?



Timbl : Je pense que ce scénario est droit devant nous. Je ne le souhaite pas, j’ai espoir. Oui, je peux imaginer cela que trop facilement. Si les internautes ordinaires ne sont pas suffisamment conscients et impliqués face aux menaces, et si quand c’est nécessaire, ils ne descendent pas dans la rue comme pour SOPA, PIPA et ACTA. Tout compte fait, je suis optimiste.

Reddit : Quelle a été l’une des choses pour laquelle vous n’auriez jamais pensé que l’Internet serait utilisé, mais qui est devenue l’une des principales raisons pour laquelle les gens utilisent l’Internet ?

Timbl : Les chatons.

Reddit : Tim, quels autres noms avez-vous envisagé que World Wide Web ?

Timbl : Mine de l’information, la mine d’information, le maillage (NdT : Mine of Information, The Information Mine, The Mesh). Aucun ne sonnait bien. J’ai aimé WWW en partie parce que je pouvais commencer des noms de variables globales avec un W sans entrer en conflit avec d’autres (dans le monde du C) …en fait j’ai utilisé HT pour eux.

Reddit : Edward Snowden, Héros ou méchant ?

Timbl : Parce qu’il

Je pense qu’il doit être protégé, et nous devons avoir des moyens de protéger des personnes comme lui. Parce que nous pouvons essayer de concevoir des systèmes de gouvernement parfait, ils ne le seront jamais, et quand ils failliront, alors, un lanceur d’alerte pourrait être le seul moyen de sauver la société.

Reddit : Où pensez-vous que le web va finir dans les 25 prochaines années ?

Timbl : C’est à nous d’en convenir. C’est une création artificielle, comme le sont nos lois, et nos constitutions… on peut choisir comment elles fonctionnent. On peut en faire de nouvelles. C’est notre décision.

Reddit : Beaucoup de gens pensent que vos appels pour un web ouvert sont un peu hypocrites compte tenu de votre soutien pour le DRM dans le HTML5. Que leur diriez-vous?

Timbl : Je voudrais leur suggérer l’idée que la question des DRM n’est pas aussi simpliste. Les gens veulent voir de grands films. Les DRM sont pénibles à bien des égards, mais si vous avez utilisé Netflix ou acheté un DVD ou un Blu-Ray, alors les DRM font partie de votre vie. Je suis d’accord pour dire que les DRM sont pénibles à bien des égards, et ne devraient être utilisés que pour les flux à très « grande valeur ». Je voudrais également souligner que le copyright, DMCA et CFAA aux États-Unis sont gravement bancals, et cette question à besoin d’être réglée distinctement de la question des DRM. Répondre à cela m’engagerait dans une discussion très longue et très compliquée, comme je l’ai déjà eu avec de nombreuses personnes. Pas sûr que nous ayons le temps ici. D’autres points incluent la façon dont les navigateurs ont intégré des DRM, ils doivent garder leur part de marché, sans s’inquiéter de savoir si les spécifications HTML rendent la connexion au web plus standard.

Reddit: Que pensez-vous du supposé «Dark Net », les marchés noirs par exemple ? (Silk Road, etc.)

Timbl : C’est une question compliquée. Je ne suis pas un grand expert en la matière. Pour faire simple, il est évident que les activités illégales sont des crimes, sur le web comme en dehors. Mais l’anonymat est compliqué. Nous avons le droit à l’anonymat en tant que lanceur d’alerte ou en étant victime d’un régime d’oppression, mais pas quand on harcèle quelqu’un ? Comment pouvons-nous construire des systèmes techniques/sociaux/judiciaires pour déterminer pour chaque cas particulier quel droit est plus important. Concernant Tor

Reddit : Est-ce qu’il vous arrive de regarder le contenu sur le web aujourd’hui et de vous sentir comme Robert Oppenheimer et sa bombe atomique ?

Timbl : Non, pas vraiment. Le web est un outil pour l’humanité fondamentalement neutre . Quand vous regardez l’humanité vous voyez le bien et le mal, le magnifique et l’affreux. Un outil puissant peut être utilisé pour le bien ou le mal. Les choses qui sont vraiment mauvaises sont illégales sur le web comme elles sont en dehors. D’un autre coté, la communication est bonne chose, je pense que le pire trouve ses origines dans l’incompréhension.

Reddit : Qui étaient vos modèles étant enfant ?

Timbl : Mes parents, qui se sont rencontrés durant la construction du premier ordinateur commercialisé au Royaume-Unis : Le Ferranti Mk 1, et certaines personnes qui travaillaient avec eux, mon professeur de math Frank Grundy, mon professeur de chimie Daffy…

Reddit : quel a été votre premier ordinateur ?

Timbl : J’ai reçu un kit d’évaluation de M6800 en 1976, et construit un groupe de cartes d’extentions 3U. Je les ai mises dans un rack avec une batterie de voiture en fond de panier comme UPS. Le tout soudé à la main sur platine d’essai et programmé en hexadécimal. 7E XX XX était un bond, et 20 XX un saut IIRC relatif. L’affichage était une vieille télé associé à un peu d’électronique et un tas de touches de vieilles calculatrices amoureusement refaites avec des lettres de transfert. Le temps des fleurs…

Reddit : Quelle est votre opinion sur l’augmentation de la surveillance au cœur même du réseau tels que la surveillance de toutes les conversations chats vidéo Yahoo par le GCHQ (quartier-général des communications du gouvernement britannique) ?



Timbl : Je pense que certains cas de surveillance du réseau par des organismes gouvernementaux sont rendu nécessaires pour lutter contre la criminalité. Nous devons inventer un nouveau système de contrôle des pouvoirs qui serait doté de moyen sans précédent pour enquêter et contraindre les organismes qui le font à rendre des comptes au public.

Reddit : Compte tenu de votre travail au WWW Consortium et votre appui à la décentralisation d’Internet, quelle est votre opinion sur le groupe de travail W3C Web Paiements Group et leurs efforts pour normaliser les paiements web en utilisant Bitcoin et d’autres formats numériques ? Quel impact pensez-vous, le cas échéant, que pourrait avoir ces monnaies numériques sur la façon dont la valeur circule sur l’Internet ?

Timbl : Je pense qu’il est important d’avoir plein de façons différentes de faire parvenir de l’argent à des gens créatifs sur le net. Donc, si nous pouvons avoir des interfaces utilisateur de micropaiement qui font qu’il est facile pour moi de payer les gens pour des trucs qu’ils écrivent, qu’ils jouent, qu’ils créent, etc, sur des petits montants, alors j’espère que cela pourrait être un moyen qui permettrait aux gens de réellement faire des affaires sérieusement. Je trouve que Flattr est une démarche intéressante dans cette direction.

Reddit : Auriez-vous imaginé qu’Internet devienne aussi gigantesque ?

Timbl : Oui, j’ai plus ou moins établi la courbe de croissance. Je n’avais pas complètement raison. Il y a 25 ans, j’avais prédit que j’allais être interrogé pour faire cette entrevue sur Reddit la semaine prochaine, mais finalement c’est cette semaine. Bon nous faisons tous des erreurs. (Plus sérieusement, non)

Reddit : Alors que le web a beaucoup avancé au cours de ces 25 dernières années, la plupart des interfaces homme-machines sont restées les mêmes. Mon navigateur web, par exemple, est plus rapide et possède des fonctionnalités différentes, mais il ressemble toujours beaucoup à Netscape Navigator (1994). Avez-vous une idée de la manière dont une interface web pourrait changer d’une façon réellement nouvelle ?

Timbl : C’est une très bonne question. Je n’ai pas de réponse comme ça. Mais pensez à comment, quand vous êtes entouré de pixels si petits que vous ne pouvez pas les voir, une interface puissante pourrait nous permettre d’être créatif ensemble, de ne pas simplement regarder. J’ai appellé cela l’inter-créativité dès le début. Je ne l’ai toujours pas.

Reddit : Pourquoi est-ce que personne ne parle de Robert Cailliau quand on parle du World Wide Web ? Vous ne l’avez pas inventé tous les deux  ?

Timbl : Robert ne l’a pas inventé. Je l’ai inventé tout seul, et l’ai codé sur un NeXT, mais Robert a été le premier converti, et un grand supporter. Il a rassemblé des ressources au CERN, aidé à trouver des étudiants, a donné des conférences. Plus tard, il a aussi écrit du code pour un navigateur pour Mac appelé Samba. De plus, il a déployé beaucoup d’énergie pour convaincre les instances dirigeantes du CERN de ne pas faire payer de droits pour le WWW, ce qui fut adopté en avril 1993.

Reddit : Je n’ai vraiment rien à demander, je voudrais juste vous remercier. Bon… peut-être une question. Quel site faut-il visiter quotidiennement ?

Timbl: w3.org Depuis le début W3C a travaillé dans le web. « Si ce n’est pas sur le web, ça n’existe pas » quand il s’agit de discuter de choses dans les réunions, etc

Reddit : Je ne puis vous remercier assez pour ce que vous avez fait en inventant le web, en l’améliorant et en rendant le contenu et l’information accessibles et utilisables par tous ! Je voulais juste vous dire merci. Je consacre mon temps à concevoir et développer des interactions et des expériences qui soient simples, intuitives et agréables. Je ne sais pas ce que je ferais sans votre travail. Je ne sais pas où le monde en serait sans votre travail. Merci, merci beaucoup !

Timbl : Vous êtes les bienvenus ! Utilisez-le chaque fois que vous le souhaitez … :-)

EDIT : Je dois m’arrêter maintenant. Je n’ai plus le temps, je dois attraper un avion. Merci les 10e9 pour les questions et… poursuivez la discussion ici, partout avec #web25 et webat25.org.

Gravatar de Framablog
Original post of Framablog.Votez pour ce billet sur Planet Libre.

Thomas Bores : Apprende Python – Partie 5 – Création d’un extenseur d’url

mercredi 12 mars 2014 à 22:34
Logo de Twitonomy

Logo de Twitonomy

Cher lecteur, tu sais probablement déjà ce qu’est une URL réduite. Nous les utilisons tous les jours pour éviter de s’échanger des adresses complètes qui sont bien souvent trop longues pour tenir dans les tweets. Il existe plusieurs services qui permettent de réduire les urls, les plus connus sont: bit.ly et goo.gl

Dans le cadre de son doctorat, un ami étudie l’utilisation de Twitter faite par les journalistes. Pour cela, il génère des rapports d’utilisateurs de Twitter en utilisant le service Twitonomy. L’application Twitonomy permet de générer des fichiers Excel avec plusieurs Tweets d’une même personne. Bien sûr, les tweets contiennent des URLs qui sont réduites. Mais mon ami a besoin de remplacer les urls réduites par les urls réelles. Sachant qu’il a plus de 80 fichiers Excel à traiter et que chaque fichier peut contenir jusqu’à 5000 tweets, une approche manuelle est exclue. C’est alors que j’interviens.

Après une recherche rapide sur Google DuckDuckGo je trouve un service en ligne libre et gratuit qui permet, à partir d’une URL réduite, de retrouver l’URL originale. Ce dernier se nomme expandurl et met à disposition une API. Il suffit de passer l’url réduite comme paramètre à l’url du service. J’espère que vous arrivez toujours à me suivre :). Concrètement ça donne ça:

http://expandurl.me/expand?url=http://bit.ly/1lBjO6q

Le service répond ensuite ainsi:

{
"status": "OK",
"end_url": "http://blog.bores.fr/",
"redirects": 1,
"urls": [
	"http://bit.ly/1lBjO6q",
	"http://blog.bores.fr/"
],
"start_url": "http://bit.ly/1lBjO6q"
}

Il faut maintenant automatiser le tout. Résumons les librairies qui me sont nécessaires:

Pour compléter, je vais utiliser le module os, afin de pouvoir lire plusieurs fichiers E dans un même dossier et le module pickle pour enregistrer les urls déjà connues dans un fichier. Ce dernier point est important, il permet de créer un dictionnaire local de paires {url_réduite:url_réelle} et de l’enregistrer dans un fichier à la fermeture du programme. Ceci permet d’accélérer le traitement si l’on doit relancer le programme sur d’autres fichiers qui contiennent des urls réduites qui étaient déjà présentes dans les fichiers Excel précédents.

Il faut lier les briques ensemble et voilà ce que ça donne. Eh oui bien souvent, la programmation s’apparente au Lego!

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
#!/usr/bin/python2.7
# -*- coding: utf-8 -*-
 
"""
url_expander.py
 
This program enables user to parse excel files generated from twitony
and to convert shortened urls in expended urls.
It doesn't modify the input files but create new files instead.
 
Update the User configuration below for your usage.
"""
 
from xlrd import open_workbook
from xlutils.copy import copy
import urllib2
import ast
import pickle
import signal
import sys
import os
 
# User configuration, should be updated
INPUT_EXCEL_DIR = './excels/'
OUTPUT_EXCEL_DIR = './expanded_urls_excels/'
 
# Program Configuration
VERSION = 'v2.0'
SOCKET_TIMEOUT = 30
DICT_PATH = 'urls.pkl'
 
# Functions
def load_already_known_urls():
    """
Load urls that were saved during previous passes.
 
Return:
a dict of urls with key is the shortened url and value
the expanded url
"""
    urls = dict()
    print 'Try to load list of already known URL from '+DICT_PATH+'.'
    try:
        urls_file = open(DICT_PATH, 'rb')
        urls = pickle.load(urls_file)
        urls_file.close()
        print 'Found '+str(len(urls.keys()))+' urls.'
    except IOError, error:
        print error
        print 'The '+DICT_PATH+' file doen\\'t exists?'
        print 'It is normal the first start.'
    return urls
 
def save_url_list(urls):
    """
Save the found urls in a pickle file
"""
    print 'Save urls in '+DICT_PATH+'.'
    try:
        urls_file = open(DICT_PATH, 'wb')
        pickle.dump(urls, urls_file)
        urls_file.close()
    except IOError, error:
        print error
        print 'Couldn\\'t save url list for future usage!'
 
def signal_handler():
    """
Catch the + keyboard keys for saving results before quitting
"""
    print 'You pressed Ctrl+C!'
    save_url_list(urls_dict)
    sys.exit(0)
 
# -------------------------
# ----- Program Start -----
# -------------------------
print 'Welcome in url_expander.py '+VERSION
print 'Coded by Thomas Bores'
 
# Load already known urls
urls_dict = load_already_known_urls()
 
# Catch CTRL+C
signal.signal(signal.SIGINT, signal_handler)
 
# Check if INPUT_EXCEL_DIR exists
if os.path.exists(INPUT_EXCEL_DIR) == False:
    os.makedirs(INPUT_EXCEL_DIR)
# Check if OUTPUT_EXCEL_DIR exists
if os.path.exists(OUTPUT_EXCEL_DIR) == False:
    os.makedirs(OUTPUT_EXCEL_DIR)
 
# Open all exels files in INPUT_EXCEL_DIR and parse them
for f_xls in os.listdir(INPUT_EXCEL_DIR):
    if f_xls.endswith('.xls'):
        try:
            rb = open_workbook(INPUT_EXCEL_DIR+f_xls,
                               formatting_info=True)
            r_sheet = rb.sheet_by_index(0)
 
            wb = copy(rb)
            ws = wb.get_sheet(0)
 
            for c_row in range(r_sheet.nrows):
                content = r_sheet.cell(c_row, 3).value
                if 'http://' in content:
                    try:
                        print '--------------------'
                        print 'Find short url at row '+str(c_row)
                        pos1 = content.find('http://')
                        sub1 = content[pos1:]
                        pos2 = len(sub1)
 
                        if ' ' in sub1:
                            pos2 = sub1.find(' ')
 
                        url = sub1[:pos2]
                        print 'short url = \\"'+url+'\\"'
 
                        # Get real url
                        real_url = url
                        if url in urls_dict:
                            # Check if we already have it
                            print 'URL already in dict :)'
                            real_url = urls_dict[url]
                        else:
                            # Otherwise expand it with online expandurl service
                            print """URL is unknown :(,
we connect to expandurl service"""
                            try:
                                res = urllib2.urlopen(
                                            'http://expandurl.me/expand?url='+\\
                                            url,
                                            timeout=SOCKET_TIMEOUT).read()
                                res_as_dict = ast.literal_eval(res)
                                real_url = res_as_dict['end_url']
                                urls_dict[url] = real_url
                            except IOError, error:
                                print error
                                print "Timeout error"
                        print 'real url = \\"'+real_url+'\\"'
                        new_content = content.replace(url, real_url)
                        ws.write(c_row, 3, new_content)
 
                    except UnicodeEncodeError, error:
                        print error
                        print 'Cannot read content of row '+str(c_row)+\\
                              ' in file '+f_xls
 
            wb.save(OUTPUT_EXCEL_DIR+'expanded_url_'+f_xls)
        except IOError, error:
            print error
            print "Cannot read excel file "+f_xls
 
save_url_list(urls_dict)

Gravatar de Thomas Bores
Original post of Thomas Bores.Votez pour ce billet sur Planet Libre.

Tuxicoman : Dossier partagé entre utilisateurs sous Linux

mercredi 12 mars 2014 à 22:21

La problématique du jour est de faire un répertoire partagé entre les utilisateurs d’un même ordinateur sous linux.

Permissions Unix, la mauvaise solution

Les permissions Unix sont très performants pour restreindre les accès mais rendent la création d’un répertoire partagé impossible en pratique.

La solution classique serait de créer un groupe qui regroupe les utilisateurs et de faire en sorte que tous les fichiers partagés appartiennent à ce groupe. Ca fonctionne en théorie, mais dans la pratique, les utilisateurs créent/modifient/copient  des fichiers sans vouloir mettre à jour les permission groupes. Et seul le propriétaire du fichier peut modifier la permission de groupe du fichier, ce qui rend la chose ingérable.

Le SGID est également une fausse bonne idée pour propager les droits aux fichiers créés car il ne se propage pas aux fichiers copiés par l’utilisateur vers le dossier partagé.

ACL

La solution élégante et performante passe par les ACL ou Access Control List. Elle permet un contrôle bien plus fin et explicite.

Pour avoir accès aux droits ACL vous devez avoir ajouté l’option à votre /etc/fstab .
Ex :

/dev/hda6 /home ext3 options1,option2,option3,acl 0 0

Une fois fait, remontez le point de montage.

# mount -o remount,acl /home

Assignation des droits ACL

On crée un dossier en root /home/dossier_partage. Personne peut y accéder à part root. Jusqu’ici rien de spécial.

# cd /home
# mkdir dossier_partage
# chmod 770 dossier_partage

On ajoute des droits étendus pour que les utilisateurs alice et bob puisse tout faire dans ce dossier.

# setfacl -m u:alice:rwX dossier_partage
# setfacl -m u:bob:rwX dossier_partage

On ajoute des droits étendus pour que les fichiers/dossiers créés dans ce dossier aient par défaut les mêmes droits étendus.

# setfacl -m d:u:alice:rwX dossier_partage
# setfacl -m d:u:bob:rwX dossier_partage

On peut vérifier les droits finaux ainsi :

$ getfacl dossier_partage/

# file: dossier_partage/
# owner: root
# group: root
user::rwx
user:alice:rwx
user:bob:rwx
group::rwx
mask::rwx
other::—
default:user::rwx
default:user:alice:rwx
default:user:bob:rwx
default:group::rwx
default:mask::rwx
default:other::—

Astuce sécurité

Par défaut, le /home/user des utilisateurs n’est pas privé sous Debian ! Si bien que Alice peut lire les fichier dans /home/bob .

Je vous recommande la lecture de ce document sur comment sécuriser Debian, surtout ces 2 points

Le plus important : Pour tous vos utilisateurs existants, assurez que le dossier home bloque bien l’accès aux autres utilisateurs :

# chmod 750 /home/bob

Ensuite, vous pouvez faire en sorte que soit créé automatiquement comme ça quand vous créez un utilisateur:

# dpkg-reconfigure adduser

et choississez Non

Vous pouvez également faire en sorte que les utilisateurs créént par défaut des fichiers que seuls eux peuvent voir :

# echo session optional pam_umask.so umask=027 >> /etc/pam.d/common-session

Dans /etc/login.defs, changez la valeur à UMASK 027

Pour vérifier les droits de l’utilisateur courant :

$ umask

Related Posts:

Gravatar de Tuxicoman
Original post of Tuxicoman.Votez pour ce billet sur Planet Libre.

Xavier Chotard : Firefox Australis Windows VS Kubuntu

mercredi 12 mars 2014 à 21:19

Si vous souhaitez tester la nouvelle interface de Firefox, Australis, vous pouvez télécharger une version nightly sur le ftp mozilla. Pour Kubuntu j'ai pris la version firefox-30.0a1.en-US.linux-x86_64.tar.bz2 et pour Windows la firefox-30.0a1.en-US.win64-x86_64.zip. Voici un aperçu sur les deux systèmes.

Kubuntu

Je dois dire que je trouve l'interface plutôt bien intégrée à KDE, très flatteuse, un renouveau très appréciable ;)

Windows

Là aussi c'est plutôt joli, mais j'avoue avoir une préférence pour la version Linux...

Gravatar de Xavier Chotard
Original post of Xavier Chotard.Votez pour ce billet sur Planet Libre.