Initially miners get their work directly from other peers on the network. The peer to peer network is publishing transactions constantly. It is through the process of mining that these transactions are distributed to the entire network. The tool that you need to help confirm transactions on the network is a mining application. Some examples are cgminer, bfgminer etc. If you are interested in solo mining and contributing to the network I do urge you to understand difficulty and the formula used to generate a block and why you are very unlikely to ever generate a block of Bitcoin thus confirming the transactions that your node has seen on the network (unless you are mining with many ASIC's and have several Tera-Hashes per second). As you requested I will not discuss profitability only the probability of this occurring.
From another thread I will reference an equation for how frequently a Bitcoin can be generated with a given hashing power:
Current difficulty = 908,350,862
Hashing power(based upon mining hardware) = 1000/Mhs or 1/Ghs
We will be solving for the approximate amount of time that it will take (on average to generate 1 block of BTC)
By solving for time we get roughly every 1083704 hours ~= 45154 days ~= 6450 weeks ~= 124 years. Sadly we know that the difficulty is continuing to grow exponentially and it gets recalculated every 14 days or so thus making the average time to generate a block increase. That being said if you would like to solo mine this is how you would do it.
Simply by launching either bitcoind or bitcoin-qt in server mode the application is ready to accept work from your mining application. You can then direct your mining application to obtain work from this service via IP (generally on port 8333) Mining pools run an application server such as a stratum or http service that helps to calculate how much work is accepted from each miner if you do not have such an application running you will not obtain statistics from the Bitcoin service unless a block is generated by your miner.