SyncTERM SSH support
+ Enabled all ssh2-streams supported KEX, ciphers, etc. for now. Will communicate with Deuce about this.
This commit is contained in:
parent
206312302a
commit
25560cb47a
|
@ -242,6 +242,57 @@ function getDefaultConfig() {
|
|||
privateKeyPem : paths.join(__dirname, './../config/ssh_private_key.pem'),
|
||||
firstMenu : 'sshConnected',
|
||||
firstMenuNewUser : 'sshConnectedNewUser',
|
||||
|
||||
//
|
||||
// SSH details that can affect security. Stronger ciphers are better for example,
|
||||
// but terminals such as SyncTERM require KEX diffie-hellman-group14-sha1,
|
||||
// cipher 3des-cbc, etc.
|
||||
//
|
||||
// See https://github.com/mscdex/ssh2-streams for the full list of supported
|
||||
// algorithms.
|
||||
//
|
||||
algorithms : {
|
||||
kex : [
|
||||
'ecdh-sha2-nistp256',
|
||||
'ecdh-sha2-nistp384',
|
||||
'ecdh-sha2-nistp521',
|
||||
'diffie-hellman-group-exchange-sha256',
|
||||
'diffie-hellman-group14-sha1',
|
||||
'diffie-hellman-group-exchange-sha1',
|
||||
'diffie-hellman-group1-sha1',
|
||||
],
|
||||
cipher : [
|
||||
'aes128-ctr',
|
||||
'aes192-ctr',
|
||||
'aes256-ctr',
|
||||
'aes128-gcm',
|
||||
'aes128-gcm@openssh.com',
|
||||
'aes256-gcm',
|
||||
'aes256-gcm@openssh.com',
|
||||
'aes256-cbc',
|
||||
'aes192-cbc',
|
||||
'aes128-cbc',
|
||||
'blowfish-cbc',
|
||||
'3des-cbc',
|
||||
'arcfour256',
|
||||
'arcfour128',
|
||||
'cast128-cbc',
|
||||
'arcfour',
|
||||
],
|
||||
hmac : [
|
||||
'hmac-sha2-256',
|
||||
'hmac-sha2-512',
|
||||
'hmac-sha1',
|
||||
'hmac-md5',
|
||||
'hmac-sha2-256-96',
|
||||
'hmac-sha2-512-96',
|
||||
'hmac-ripemd160',
|
||||
'hmac-sha1-96',
|
||||
'hmac-md5-96',
|
||||
],
|
||||
// note that we disable compression by default due to issues with many clients. YMMV.
|
||||
compress : [ 'none' ]
|
||||
},
|
||||
},
|
||||
webSocket : {
|
||||
ws : {
|
||||
|
|
|
@ -251,12 +251,13 @@ exports.getModule = class SSHServerModule extends LoginServerModule {
|
|||
ident : 'enigma-bbs-' + enigVersion + '-srv',
|
||||
|
||||
// Note that sending 'banner' breaks at least EtherTerm!
|
||||
|
||||
debug : (sshDebugLine) => {
|
||||
if(true === config.loginServers.ssh.traceConnections) {
|
||||
Log.trace(`SSH: ${sshDebugLine}`);
|
||||
}
|
||||
},
|
||||
algorithms: { compress: ['none'] },
|
||||
algorithms : config.loginServers.ssh.algorithms,
|
||||
};
|
||||
|
||||
this.server = ssh2.Server(serverConf);
|
||||
|
|
Loading…
Reference in New Issue