SSHD
Have you ever wished you could remotely access your server's admin console without having to setup a complex remote access system? Now you can with SSHD.
SSHD securely exposes your bukkit admin console using the SSH protocol - the same protocol that serves as the secure foundation for nearly all remote server administration.
- Compatible with all ssh clients, regardless of operating system.
- Remotely view your server log in real-time.
- Remotely issue commands from the server console, just as if you were on the server itself.
- Supports multiple concurrent remote connections.
- Strong identity support using public key authentication.
- Remotely script your server by issuing one-off console commands with ssh.
Why should I use SSHD?
- Your server runs on Windows.
- You are in a shared hosting environment that only gives you access to the log files.
- You want to share access to your server console, but don't want to give anybody access to the machine its running on.
- You always wanted to use RCON, but want to see the server log as well.
- You are tired of running your server in a Screen session.
- You just want to access your server console using SSH.
Configuration
- listenAddress - The network interface(s) SSHD should listen on. Default all
- port - Specify the port SSHD should listen on. Default 22
- username/password - The credentials used to log into the server console. Default blank
Note: By default, only public key authentication is enabled. This is the most secure authentication mode! Setting a username and password will make your server less secure.
Setting Up Public Key Authentication
Setting up public key authentication with SSH requires first generating a public and private key pair and then installing just the public key on your Bukkit server.
On Windows
1. Download PuttyGen
2. Use PuttyGen to create a new public/private key pair. Here is a tutorial video.
- Make sure to set a key passphrase
- Make sure your key type is SSH-2 RSA
- Save the public key with your login name
- Save the private key in a secure location
3. Copy the public key to the authorized_keys directory in the SSHD plugin directory.
- Make sure the public key file name matches the user name you want to log in with. Remove the file extension.
On Linux/OS X
1. Check to see if you have an existing ssh key
- $ ls -al /.ssh
- If you get a directory not found error or an empty list, go to step 2, otherwise go to step 3
2. Create your SSH public/private key pair.
- $ ssh-keygen -t rsa
- - Press Enter to accept the default path (.ssh\id_rsa)
- - Set a passphrase
- $ eval "$(ssh-agent -s)"
- $ ssh-add /.ssh/id_rsa
3. Export your SSH public key in PEM format.
- $ ssh-keygen -ef /.ssh/id_rsa > your_username
- replace your_username with your Minecraft login name
4. Copy the your_username file to the authorized_keys directory in the SSHD plugin directory.
Commands
None - just install and go.
Permissions
None - SSHD uses cryptographic certificates or a secure username and password to verify remote access.
Source Code
Metrics
This plugin utilizes Hidendra's plugin metrics system. the following information is collected and sent to mcstats.org unless opted out:
- A unique identifier
- The server's version of Java
- Whether the server is in offline or online mode
- Plugin's version
- Server's version
- OS version/name and architecture
- core count for the CPU
- Number of players online
- Metrics version
Opting out of this service can be done by editing plugins/Plugin Metrics/config.yml and changing opt-out to true.
Is there any plans for a later release that enables whitelisting IP's? I keep having some chinese "hacker" try to access my server (It's setup with a key pair, so not happening) and he keeps spamming the server logs and it gets overly annoying when it happens for hours at a time.
simple and secure!
@ddrichards
The one you setup in config.yml.
What password is it requesting when logging into the session?
@iVirusProo
It was a spam post. The post has been deleted.
Dafuq?
@J5lx
Thanks for using SSHD! I'm glad you like it. This is a rather niche plugin, but it was fun and challenging to make. I've added your Linux/OSX instructions to the project description.
Great plugin, even though none of the reasons listed at Why should I use SSHD? applys to me. It’s a lot more comfortable than switching to VT2 everytime I need to do something in the server console while not playing myself.
@other users wondering how to use their existing OpenSSH keys:
Use
to export the public key of the private key
~/.ssh/id_rsa
to/srv/craftbukkit/plugins/SSHD/authorized_keys/your_username
@deltahat, please consider adding this to the description so other people don’t have to figure this out themselves or read all the comments (since their count will certainly grow).
Nice title :| "SSHD"
This plugin is good but missing the entire entry from the console
This might be a better solution than using RCON, I'll have to try this out.