Yes, you will need a B1-B2 Visa if you intend to sail from
Canada to USA. Generally you need to get the visa in your country of residence, but perhaps you can get one at the closest consulate (perhaps Montreal? I've been in that consulate before).
It might be easier to enter the USA by land or airplane from Canada and then board the
boat - that can be done without a visa using ESTA.
The
boat will need to get a cruising
permit, this can be applied for upon arrival and clearing in. The
permit is valid for one year and while not officially necessary you can barely move without one, as you'd have to "clear in" personally at an office each time you move. With a cruising permit you can travel at will, but once you've arrived you have to call in and report your location. If you fail to do so you can be slapped with very stiff fines or worse. I usually get a recording where I leave the permit number, boat location, last port of call, and my telephone number in case there are any questions.