Rails sur Openbsd

5 views
Skip to first unread message

Nicolas G

unread,
Sep 21, 2016, 8:49:31 AM9/21/16
to rails...@googlegroups.com
Bonjour

Sur une nouvelle "boite" openbsd j'ai commencé à installer ruby, puis ROR (pas sans mal) et j'ai mon serveur qui tourne bien, mais en local.
Au sens où le serveur de dev puma se lance bien avec l'adresse localhost:3000

Sur le même réseau interne j'accède au port 80 (serveur httpd de openbsd) mais le port 3000 ne fonctionne pas (port ssh ok etc.).
Sur la machine accès ssh je lance le serveur lynx avec l'adresse localhost:3000 et la page habituelle s'affiche (enfin sur lynx ... :-) )
Le firewall est désactivé (pfctl -d  => pf not enabled) mais impossible d'accéder à mon port 3000 d'une autre machine sur le réseau. Est-ce une erreur connue ?

Merci de votre éventuel éclairage.

Cyril ROHR

unread,
Sep 21, 2016, 8:56:28 AM9/21/16
to rails...@googlegroups.com
Salut,

Si tu veux accéder à ton puma depuis l'extérieur il faut faire un bind sur 0.0.0.0 et pas localhost qui est le défaut. Ou alors je n'ai pas compris ta question ?

Cyril
--
--
Vous avez reçu ce message, car vous êtes abonné au groupe "Railsfrance" de Google Groups.
Pour transmettre des messages à ce groupe, envoyez un e-mail à l'adresse rails...@googlegroups.com
Pour résilier votre abonnement envoyez un e-mail à l'adresse railsfrance...@googlegroups.com
---
Vous recevez ce message, car vous êtes abonné au groupe Google Groupes "Railsfrance".
Pour vous désabonner de ce groupe et ne plus recevoir d'e-mails le concernant, envoyez un e-mail à l'adresse railsfrance...@googlegroups.com.
Pour obtenir davantage d'options, consultez la page https://groups.google.com/d/optout.

Nicolas G

unread,
Sep 21, 2016, 9:09:31 AM9/21/16
to rails...@googlegroups.com
Euh je n'ai pas compris la réponse :-)
Donc quand à savoir si la question est la bonne :-( .
 Sur du debian si je lance en dev puma via rails s -d j'arrive à me connecter sur le serveur à partir du navigateur d'une autre machine du réseau local...
Bizarre.
Merci

Le 21 septembre 2016 à 14:56, Cyril ROHR <cyril...@gmail.com> a écrit :
Salut,

Si tu veux accéder à ton puma depuis l'extérieur il faut faire un bind sur 0.0.0.0 et pas localhost qui est le défaut. Ou alors je n'ai pas compris ta question ?

Cyril

On 21 Sep 2016, at 13:49, Nicolas G <sab...@gmail.com> wrote:

Bonjour

Sur une nouvelle "boite" openbsd j'ai commencé à installer ruby, puis ROR (pas sans mal) et j'ai mon serveur qui tourne bien, mais en local.
Au sens où le serveur de dev puma se lance bien avec l'adresse localhost:3000

Sur le même réseau interne j'accède au port 80 (serveur httpd de openbsd) mais le port 3000 ne fonctionne pas (port ssh ok etc.).
Sur la machine accès ssh je lance le serveur lynx avec l'adresse localhost:3000 et la page habituelle s'affiche (enfin sur lynx ... :-) )
Le firewall est désactivé (pfctl -d  => pf not enabled) mais impossible d'accéder à mon port 3000 d'une autre machine sur le réseau. Est-ce une erreur connue ?

Merci de votre éventuel éclairage.

--
--
Vous avez reçu ce message, car vous êtes abonné au groupe "Railsfrance" de Google Groups.
Pour transmettre des messages à ce groupe, envoyez un e-mail à l'adresse rails...@googlegroups.com
Pour résilier votre abonnement envoyez un e-mail à l'adresse railsfrance-unsubscribe@googlegroups.com

---
Vous recevez ce message, car vous êtes abonné au groupe Google Groupes "Railsfrance".
Pour vous désabonner de ce groupe et ne plus recevoir d'e-mails le concernant, envoyez un e-mail à l'adresse railsfrance+unsubscribe@googlegroups.com.

Pour obtenir davantage d'options, consultez la page https://groups.google.com/d/optout.

--
--
Vous avez reçu ce message, car vous êtes abonné au groupe "Railsfrance" de Google Groups.
Pour transmettre des messages à ce groupe, envoyez un e-mail à l'adresse rails...@googlegroups.com
Pour résilier votre abonnement envoyez un e-mail à l'adresse railsfrance-unsubscribe@googlegroups.com

---
Vous recevez ce message, car vous êtes abonné au groupe Google Groupes "Railsfrance".
Pour vous désabonner de ce groupe et ne plus recevoir d'e-mails le concernant, envoyez un e-mail à l'adresse railsfrance+unsubscribe@googlegroups.com.

Julien Grillot

unread,
Sep 21, 2016, 9:16:52 AM9/21/16
to rails...@googlegroups.com
Essaye avec « rails s -d -b 0.0.0.0 » (c'est le bind dont parle Cyril)

Nicolas G

unread,
Sep 21, 2016, 10:41:29 AM9/21/16
to rails...@googlegroups.com
OK
je vais essayé (je ne connaissais pas l'option bind au démarrage).
C'est sur une VM de test pour l'instant à laquelle je n'ai pas accès. j'essaierai demain. Merci et je vous tient au courant.



Le 21 septembre 2016 à 15:16, Julien Grillot <julien....@gmail.com> a écrit :
Essaye avec « rails s -d -b 0.0.0.0 » (c'est le bind dont parle Cyril)

--

Nicolas G

unread,
Sep 21, 2016, 1:21:55 PM9/21/16
to rails...@googlegroups.com
Ok donc finalement la curiosité étant trop forte je suis passé et avec l'option bind 0.0.0.0 cela fonctionne...
 \o/
Quand à comprendre pourquoi ?

Merci beaucoup en tout cas

Nicolas G

unread,
Sep 21, 2016, 4:06:07 PM9/21/16
to rails...@googlegroups.com
Si cela intéresse quelqu'un, dans le genre config exotique :-) (quoique il manque l'install sur une carte ARM...)

Florian Dutey

unread,
Sep 21, 2016, 9:29:24 PM9/21/16
to rails...@googlegroups.com

Binding to 0.0.0.0 tells the service to bind to all IP addresses on your machine. Rails server used to do this by default, but with 4.2 changed to binding only to localhost.

Basically if it's only bound to localhost then it will only respond locally to either localhost or 127.0.0.1 which can't work through a DNS service because it's not a public IP address.

When you use 0.0.0.0 it will bind to localhost and to your routable IP address.

http://stackoverflow.com/questions/29083885/what-does-binding-a-rails-server-to-0-0-0-0-buy-you

Nicolas G

unread,
Sep 22, 2016, 1:55:34 PM9/22/16
to rails...@googlegroups.com
Ok thanks a lot :-)

Florian Dutey

unread,
Sep 23, 2016, 2:13:32 AM9/23/16
to rails...@googlegroups.com
De rien.
 
J'avoue que ce comportement m'avait bien perturbe aussi quand rails 4.2 etait sorti et introduisait ce mecanisme (plutot pas mal pour les devs) sans crier gare et que c'est pas trivial.
J'imagine que c'est principalement pour eviter le patron un peu con qui utilise ton instance de dev via le reseau local et qui te vire 50% de ton salaire le jour ou ton linux crash et que tu formattes (histoire vecue). Ou alors pour eviter par defaut une passerelle mal configuree qui rend ta machine accessible sur le net alors que l'appli est privee (genre quand tu bosses de chez toi).



Julien Grillot

unread,
Sep 23, 2016, 5:39:10 AM9/23/16
to rails...@googlegroups.com
Le binding sur 0.0.0.0 expose l'application à un scan de port. Pratique pour tester mais à ne pas laisser ouvert en continue.
Reply all
Reply to author
Forward
0 new messages