class SSHPoolConfig {

    /**
     * ssh连接池配置
     * @return
     */
    @Bean
    public GenericKeyedObjectPool<SSHMachineInfo, ClientSession> clientSessionPool() throws GeneralSecurityException, IOException {<FILL_FUNCTION_BODY>}
}

        GenericKeyedObjectPoolConfig genericKeyedObjectPoolConfig = new GenericKeyedObjectPoolConfig();
        genericKeyedObjectPoolConfig.setTestWhileIdle(true);
        genericKeyedObjectPoolConfig.setTestOnReturn(true);
        genericKeyedObjectPoolConfig.setMaxTotalPerKey(5);
        genericKeyedObjectPoolConfig.setMaxIdlePerKey(1);
        genericKeyedObjectPoolConfig.setMinIdlePerKey(1);
        genericKeyedObjectPoolConfig.setMaxWaitMillis(30000);
        genericKeyedObjectPoolConfig.setTimeBetweenEvictionRunsMillis(20000);
        genericKeyedObjectPoolConfig.setJmxEnabled(false);
        SSHSessionPooledObjectFactory factory = new SSHSessionPooledObjectFactory();
        GenericKeyedObjectPool<SSHMachineInfo, ClientSession> genericKeyedObjectPool = new GenericKeyedObjectPool<>(
                factory,
                genericKeyedObjectPoolConfig);
        return genericKeyedObjectPool;
    
<no_super_class>