Use low sodium or no added sodium stock and beans for this recipe if possible. The ham will probably add more than enough salt and once it is too salty there isn't much you can do to fix it. You can also soak the ham bone in water in the fridge overnight to help remove some salt.
Pour the vegetable broth into a large soup pot. Add the ham bone and bring to a boil. Reduce the heat and simmer for 2-3 hours on low. Melt butter in a frying pan and saute the onion and jalapeno pepper until the onion is translucent. Remove the onion to a small bowl, leaving as much of the butter in the frying pan as you can. This will be used to make the roux to thicken the soup.
Remove the ham bone and any meat that has fallen off from the broth. Allow to cool. While the ham is cooling add the onion and jalapeno to the broth and simmer. Remove as much meat as you can from the ham bone and cut into bite sized pieces. Discard the bone. Add the meat back to the broth. Open the cans of beans then rinse and drain them. Add the drained beans to the soup and continue simmering.
Heat the butter in the frying pan again and add the flour, whisking continuously. If it is too dry, add more butter. Continue cooking the roux but do not let it brown. After 2-3 minutes, pour the roux into the soup as it is simmering. Stir frequently as the soup thickens. Season with freshly ground black pepper. Serve hot.