Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 25/11/2020, à 15:03

abbhector

open classroom

Bonjour a tous
Je me forme sur du linux et la jai un soucis
voici l'etape ou je bloque

Gérez votre serveur Linux et ses services


Sécurisez votre serveur web
restreignez l’accès aux ressources sensibles
Apache permet de restreindre l’accès à des ressources en fonction d’un grand nombre de critères. Les modes d’authentification les plus courants sont certainement par IP et par login/mot de passe.

Commencez par créer les données à protéger :

$ sudo mkdir /var/www/html/www.example.com/top_secret

$ echo “voici mon secret” > /var/www/html/www.example.com/top_secret/index.html

voici ce que repond la commande:

bash: echo “voici mon secret” > /var/www/html/www.example.com/top_secret/index.html: Permission non accordée

J'ai essayé avec sudo mais reponse identique !

Pouvez vous m'aider (dsl, je debute sur linux)  ?

Hors ligne

#2 Le 25/11/2020, à 15:15

bruno

Re : open classroom

Bonjour,

Modération :
Merci de modifier ton message pour mettre les commandes et leur retour dans des balises [ code ] comme ceci :

1369358014.gif

De plus c'est une question pour la rubrique « Terminal, scripts et ligne de commande » pas pour la rubrique « Serveurs ». Je déplace le sujet en conséquence.

--



Quand tu fais :

sudo echo “voici mon secret” > /var/www/html/www.example.com/top_secret/index.html

la commande echo est exécutée par root (sudo) mais la redirection vers index.html est effectuée par l'utilisateur courant qui n'a pas le droit d'écrire dans un dossier appartenant à root.

Je laisse d'autres intervenants corriger et compléter mon message.

Dernière modification par bruno (Le 25/11/2020, à 15:16)

En ligne

#3 Le 25/11/2020, à 15:17

abelthorne

Re : open classroom

Tu n'as pas les permissions pour écrire dans le fichier index.html parce qu'il est dans un dossier système que seul l'admin peut manipuler. Il faut effectivement utiliser sudo pour obtenir les droits nécessaires mais ça ne te permettra pas de faire la redirection dans le fichier. Une possible solution est d'utiliser la commande tee :

echo "voici mon secret" | sudo tee /var/www/html/www.example.com/top_secret/index.html

On écrit "voici mon secret" avec echo, la sortie est interceptée par le pipe (|) et passée à tee (avec sudo pour les permissions) qui va se charger de l'écrire dans le fichier en question.

EDIT : et attention à un détail : les guillemets qu'il y a dans les exemples de ton message ne sont pas des double quotes (") standard mais des guillemets anglais (“ et ”). C'est possible que ce soit l'interpréteur du forum qui les ait remplacés mais j'en doute. Et je ne pense pas qu'ils puissent être interprétés correctement par le shell, donc sois sûr de bien mettre des guillemets normaux (ceux de la touche 3 sur un clavier AZERTY français). Tu peux aussi utiliser des single quotes ('), le signe sur la touche 4 qui est généralement utilisé pour une apostrophe.

Dernière modification par abelthorne (Le 25/11/2020, à 15:24)

Hors ligne