I’m happy

Really need SSH Tunneling

Any idea when SSH Tunneling is coming? My db is located behind a firewall and i can't use the app without it.
1 person has
this question
+1
Reply
  • Walter (Customer Support Representative) April 19, 2011 05:15
    We don't yet have any estimate for when we will have built-in SSH support, but note that other users have reported that they have been able to use DataGlass in conjunction with iSSH to provide a workaround. See http://getsatisfaction.com/dataglass/...
  • (some HTML allowed)
    How does this make you feel?
    Add Image
    I'm

    e.g. happy, confident, thankful, excited indifferent, undecided, unconcerned kidding, amused, unsure, silly sad, anxious, confused, frustrated

  • I’m unsure
    I don't understand how this would work. I run iSSH and connect to host A. If I run your MySQL app at that point, how does it know to go through the iSSH connection?
  • (some HTML allowed)
    How does this make you feel?
    Add Image
    I'm

    e.g. happy, confident, thankful, excited indifferent, undecided, unconcerned kidding, amused, unsure, silly sad, anxious, confused, frustrated

  • I’m frustrated
    That would not accomplish what I need.

    The MySQL servers for many shared hosting systems like those offered by GoDaddy or 1&1 Internet are normally not accessible AT ALL from the outside. You cannot SSH to them direcly from the outside.

    The only way these servers can be accessed is from code running on the web server. So, what you would have to do is SSH to the webserver, but then when you run the "mysql" command on the SSH connection, instead of talking to "localhost", you have to specify the REAL host address using the "-h" option.

    Another option that works but is somewhat slower is to have a PHP gateway script that runs on your webserver. The external program then sends requests through this script, including the DB host name and login, and sends back the results. It works, but like I said it's slower.

    May I strongly suggest that you guys try creating a GoDaddy or 1&1 Internet hosting account and take a little time to figure this out? There's a ton of potential customers using these and other hosting systems that work in a similar fashion.
    • Walter (Customer Support Representative) April 27, 2011 16:29
      I can't quite parse this response: it seems to me that the statements "You cannot SSH to them direcly from the outside" and "what you would have to do is SSH to the webserver" conflict.

      Either you can ssh into your host or you can't. If you can, then you might be able to use iSSH to connect. If you are able to use iSSH to obtain a login shell, then you should also be able to configure it as a tunnel from localhost:3306 to your firewalled MySQL server's address. If you can do that, then you should be able to just use DataGlass to connect to your SSH tunnel at localhost:3306 to get into your database.
  • (some HTML allowed)
    How does this make you feel?
    Add Image
    I'm

    e.g. happy, confident, thankful, excited indifferent, undecided, unconcerned kidding, amused, unsure, silly sad, anxious, confused, frustrated

  • I’m frustrated
    The statements do not conflict... let me try to explain it again.

    1) The web server and the MySQL server are not the same machine. They are on different host addresses. (Perhaps this is the part that was unclear before.)

    2) The MySQL servers are on the other side of a firewall and not directly connected to the internet. You cannot SSH into the MySQL servers.

    3) You *can* SSH into the webserver.

    4) Code running on the web server is capable of connecting to the MySQL Server.

    Thus, if you SSH to the webserver, you can then issue a command like this:

    mysql --host=mysql.perfora.net --user=dbuser --password=xyzpdq mydatabase

    and that will run the mysql program, connect to the database, and allow you to issue queries.

    I have tested this using PuTTY and it works fine. Using something like iSSH to make the connection and forward the port would work ONLY if you could specify the host address passed to the mysql command as shown above, rather than just using "localhost".
  • (some HTML allowed)
    How does this make you feel?
    Add Image
    I'm

    e.g. happy, confident, thankful, excited indifferent, undecided, unconcerned kidding, amused, unsure, silly sad, anxious, confused, frustrated

  • Walter (Customer Support Representative) April 27, 2011 22:04
    SSH tunneling can proxy through to any arbitrary host, not just to the machine to which your SSH connection is being made. So say your database is running on dbmachine.somehost.com, which is only accessible when you ssh into sshmachine.somehost.com. With the iSSH app, you would configure this by creating a new connection to sshmachine.somehost.com, and then under the "Tunnels" configuration section, you would create a tunnel:

    Local Port: 1234
    Dest Host: dbmachine.somehost.com
    Dest Port: 3306

    Once you have successfully connected via SSH, you can then launch DataGlass and configure a new database host at "localhost" with port "1234", and then it should be able to tunnel through using iSSH from localhost->sshmachine->dbmachine.

    I've just verified that this works as expected, so if you still have problems with it, let us know and we'll try to work out any kinks in the process.
  • (some HTML allowed)
    How does this make you feel?
    Add Image
    I'm

    e.g. happy, confident, thankful, excited indifferent, undecided, unconcerned kidding, amused, unsure, silly sad, anxious, confused, frustrated

  • That sounds like it might work. I think I'll look into it.

    Thanks!
  • (some HTML allowed)
    How does this make you feel?
    Add Image
    I'm

    e.g. happy, confident, thankful, excited indifferent, undecided, unconcerned kidding, amused, unsure, silly sad, anxious, confused, frustrated