Using the PhpStorm built-in SSH terminal and remote SSH external tools

We can already do a lot from within our IDE: develop our application, connect to database systems, work with source control, debug HTTP traffic and much, much more.

With the PhpStorm 7 EAP, we are introducing even more integrations. How about… a built-in SSH client?

This feature is also available in PyCharm.

From the Tools | Start SSH session… menu, we can connect to any SSH server, whether your local machine or a remote host. All we have to do is provide connection information such as username and password or keypair and we’re good to go!

Have a look at our tutorials page for some examples and on how to work with the SSH client and how remote SSH external tools can help your development process.

As always, let us hear your thoughts in the issue tracker, through the comments below or in our forums!

Develop with pleasure!
– JetBrains PhpStorm Team

This entry was posted in Cool Feature, Early Access Program and tagged , , , , . Bookmark the permalink.

40 Responses to Using the PhpStorm built-in SSH terminal and remote SSH external tools

  1. jp says:

    Hey, this is great. But please make background black by default, not only in dark theme… This is what most users are used to, I think.

    • Renato says:

      Background black please not only in darcula theme.

      • Adam Kopeć says:

        Yeah, or configurable. Or same as default system console settings. Yellow text on white background which I get at the moment is ugly and kills my eyes. I don’t use your dark themes.

        • Mikhail Vink says:

          It’s configurable in Settings | Editor | Colors & Fonts | Console Colors

          • kazes says:

            Yes and when you have made your changes in “console background” (at the bottom of the list), you have to close the terminal via the red cross on the left, then open the terminal again.

  2. Paul Redmond says:

    Anyone else seeing a giant flashing cursor? Using a MBP Retina.

    http://cl.ly/image/0G3e3r3f2P26

  3. B3at says:

    Great tool, only 2 problems so far
    I must type all the ssh details at every run , and I cant find what font is used inside the ssh termunal because is too thin/antialiased and some letters cant be deciphered.

    • Špringer says:

      Problem 1:
      Add new server to deployment in settings. Server type select SFTP and set the connection setting. In remote ssh External Tools -> connection settings can now select your server.

      I have one question too. I use this to run bash script and there are bash color markers. Will be supported in the future?

  4. Kieran Simpson says:

    Are there plans on having the functionality in IntelliJ?

  5. Philipp Gampe says:

    Please support the default SSH agent instead of using your own way to store the credentials.
    I really hate the fact that I cannot use my SSH key, but need to use the insecure password approach.

    • Maarten Balliauw says:

      The SSH client does support working with SSH keys.

      • Alex says:

        May I elaborate on what I think Gampe’s point may have been?

        Yes, the SSH client allows us to use a private key for authentication. But if we are protecting that key with a passphrase (as we should be), we are faced with a choice: do we allow PhpStorm to remember the password for us, or enter it ourselves every time we need to use it?

        Hitting the “Save passphrase” checkbox is insecure, since then the password is saved unencrypted on disk. This is easy to prove: tell PhpStorm to remember the passphrase for a key you don’t care about, then close it. When you reopen the IDE, it will happily load the key back up without asking for a decryption key. If we were okay with putting everything needed to log in to our server unencrypted on disk, why did we set a passphrase on that key in the first place?

        Even if we don’t check that box, how is PhpStorm’s secret management? Will it allow the password to be written to swap, et cetera? We don’t know. We can’t check, not without going full-blown red team.

        Truly secure authentication is an enormously difficult problem, which is why there are tools like ssh-agent whose entire raison d’être is to do it right. When other tools ignore those existing solutions in favor of their own home-grown implementations, they inevitably push their users to be less secure.

        We, as an industry, should strive to do better than that.

  6. Artem Kozhjemyakin says:

    I got the following error when trying to connect using new SSH feature: UnsatisfiedLinkError: Unable to load library ‘libwinpty’

  7. Anatooly says:

    Hi. And where I need install https://github.com/rprichard/winpty/downloads/ for correct work on Windows 7 Pro?

    UnsatisfiedLinkError
    Unable to load library ‘libwinpty’: No found module.
    : Unable to load library ‘libwinpty’: No found module.

  8. Stephane says:

    I’m having great trouble right now with the fact that SFTP appears to already use a custom ssh implementation. It’s not using the ssh tunnel I have set up, so I can’t use PHPStorm for a project when I’m away from the ip address registered in the company’s firewall. I can use TextWrangler and every other ssh-using service.

    Is there a way around this? Will this new version solve this in any way?

    • leneshka says:

      PhpStorm does not create ssh tunnels, and does not use settings other than provided in File | Settings | Deployment and File | Settings | Deployment | Options.
      But of you create ssh tunnel by some other means (I tested Putty), it successfully uses it.

    • Ian Ferguson says:

      I cannot bump the feature request enough. It’s so frustrating that I cannot connect to a host alias (defined in ~/.ssh/config). Every single application I have apart from PHPStorm is able to interpret and connect properly when tunnels are involved.

  9. Artur says:

    Hello!
    UnsatisfiedLinkError
    Unable to load library ‘libwinpty’: No found module.
    : Unable to load library ‘libwinpty’: No found module.

    http://clip2net.com/s/5Mwoit
    Bug isn’t fixed. Win 7 Max.

  10. Pingback: Built-in Local Terminal in PhpStorm 7 | JetBrains PhpStorm Blog

  11. Name says:

    No ssh tunnel -> no PHP Storm. Sorry.

  12. Peter says:

    Just tried the ssh tool in PHPStorm 7 – nice addition. Two things I have noticed so far:

    1. Closing the session closes PHPStorm – that is not right.
    2. Is there a way to save connection settings so that I can pick from a list instead of entering them everytime?

    Otherwise great work.

  13. Maarten Balliauw says:

    Closing session shouldn’t close PhpStorm. Can you reproduce this (and if so, report through http://youtrack.jetbrains.com/issues/WI ?)

    Connection settings can be stored: through Project Settings | Deployment, add a server which uses SFTP and configure from there. The build-in SSH client will show the configured host in a list.

  14. Anon says:

    Can the terminal be made to appear like a normal tab? (seen this in other ides)

  15. Anatoly says:

    How forward keys for git?
    I use keys for authorization ssh, but how forward git key for correct work? Now I use Pageant of Putty for this.

    • Mikhail Vink says:

      I’m sorry, but what do you mean as forwarding keys? Do you mean putting the key on the remote machine and using it from there? Or do your mean using a key to connect to ssh?

  16. daslicht says:

    It would be lovely if we could browse files on a remote server and edit them locally as it is possible with coda2

    How about saving user / login for SSH connections?

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">