<commit_before># FakeSSH

FakeSSH is an SSH server which denies all login requests sent its way. It's the result of literally minutes of work.

## Requirements

* python
* paramiko

# Use

1. Create an RSA key using `ssh_keygen`. Save it to data/rsa.
1. Copy data/config.sample.json to data/config.json
1. Edit if desired.
1. Run `server.py` with python.

# Future Plans

In the previous version of this (which was written in C++, but full of memory leaks), statistics about attempted logins were tracked. This made for an awesome MOTD on the real SSH port. At some point, it would be cool to re-add that functionality.<commit_msg>Update README with upstart script sample<commit_after># FakeSSH

FakeSSH is an SSH server which denies all login requests sent its way. It's the result of literally minutes of work.

## Requirements

* python
* paramiko

# Use

1. Create an RSA key using `ssh_keygen`. Save it to data/rsa.
1. Copy data/config.sample.json to data/config.json
1. Edit if desired.
1. Run `server.py` with python.

If you're on Ubuntu, you could create an upstart script at `/etc/init/fakessh.conf`:

    # fakessh
    description "A fake SSH server"
    author "<NAME> <<EMAIL>>"
    start on runlevel [2345]
    stop on runlevel [016]
    respawn
    exec python /opt/fakessh/server.py

# Future Plans

In the previous version of this (which was written in C++, but full of memory leaks), statistics about attempted logins were tracked. This made for an awesome MOTD on the real SSH port. At some point, it would be cool to re-add that functionality.
{'fraction_non_alphanumeric': 0.07293666026871401, 'fraction_numerical': 0.009596928982725527, 'mean_word_length': 3.6272189349112427, 'pattern_counts': {'":': 0, '<': 6, '<?xml version=': 0, '>': 6, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1302660', 'n_tokens_mistral': 494, 'n_tokens_neox': 458, 'n_words': 233}