Erlang distribution through firewalls
Thu Jan 15 03:54:04 CET 2004
Is this a trick question?
You (of course) create an XML based Erlang distribution protocol which
runs over HTTP, and is 10x more verbose than its actually necessary.
Then you send this data to a Yaws script running at the remote server,
and punch a hole through the firewall on port 80. :-)
I think the right answer is don't put distribution through a firewall,
as any node can execute any code they want on the other nodes. This
isn't exactly the most secure thing, so if a node outside the firewall
was commprimised so may be all nodes within the firewall.
So the way to do it would be to use UBF and connect up TCP sockets and
pass just UBF data between processes, where each endpoint process
filters the messages to make sure only valid things happen.
Vance Shipley <vances@REDACTED> wrote:
> How do you do Erlang distribution through firewalls?
Once there was a marine biologist who loved dolphins. He spent his
time trying to feed and protect his beloved creatures of the sea. One day,
in a fit of inventive genius, he came up with a serum that would make
dolphins live forever!
Of course he was ecstatic. But he soon realized that in order to mass
produce this serum he would need large amounts of a certain compound that was
only found in nature in the metabolism of a rare South American bird. Carried
away by his love for dolphins, he resolved that he would go to the zoo and
steal one of these birds.
Unbeknownst to him, as he was arriving at the zoo an elderly lion was
escaping from its cage. The zookeepers were alarmed and immediately began
combing the zoo for the escaped animal, unaware that it had simply lain down
on the sidewalk and had gone to sleep.
Meanwhile, the marine biologist arrived at the zoo and procured his
bird. He was so excited by the prospect of helping his dolphins that he
stepped absentmindedly stepped over the sleeping lion on his way back to his
car. Immediately, 1500 policemen converged on him and arrested him for
transporting a myna across a staid lion for immortal porpoises.
More information about the erlang-questions