Yep, Greek Railways lately tend to have trouble with international connections, and as of now all the international trains are canceled, thus it makes it a bit difficult to organize the whole trip in terms 'only by rail'.
Probably your best option simply to catch local train from Athens to Patras via Kiato, it will cost you 15,3 EUR. While from Patras you can catch one of the multiple
ferries to Italy. (NB: make sure you check all the available ferry companies, since fares tend to differ, thus it makes sense to find the most suitable one). Then from either Bari, Brindisi or Ancona you can easily reach Florence by train. For Italian train timetable and fares check
TrenItalia website. If you purchase your train ticket in advance you can actually get a pretty good deal with offer called 'Mini'
Also, in case you really in a mood for a long trip, then we can advise you on 'by land' itinerary (something like Athens-Thessaloniki-Sofia-Belgrade-Zagreb-Ljubljana-Venice), but, as you probably understand, it take much more time in total.