Thoughts in no particular order:

1. Network locally.

Tech meetups in your area will help you meet local people who speak tech, and you can let them know what you're capable of.

Business-oriented meetups - find local chamber of commerce events (or similar) and let people know what you're capable of from a business/value standpoint.

Industry-oriented conferences - if you have a passion/interest in a specific industry, consider attending their events (education, ecommerce, finance, govt, retail, manufacturing, etc).

2. Look at focusing on a niche or two - service or tech (or both). More people (and higher-value people in most cases) will find you if you're "the text search guy" or "the php guy" or "the database guy" or "the css guy" vs "a web developer". This is from a tech standpoint, of course. But you may end up being "the wordpress guy" in your town (or the drupal guy, or the magento guy, or the sharepoint guy).

Whether you take that work or not is almost immaterial - it's about people seeking out a solution and finding you vs someone else. Tech people don't go searching for "a web developer" - they look for someone to meet a tech need they have - someone found my site the other day looking for "php postgres raleigh resume", then came to the local PHP meetup that I run (nominally - I share mgt with others now). They didn't search for "web developer".

3. From a marketing standpoint, you don't really have to focus on just one niche, but you need to be able to be associated with those niches, and you can possibly successfully serve multiple niches (some of this is just what you're comfortable with).

Have multiple 'landing pages' on your site (you do have a site for yourself or your business, right?) that are focused on the different niches/industries you want to serve. A drupal-focused page describing all your drupal work will be what people visit when they search for "drupal expert freelance <your town>", for example.

4. Get involved in a local tech meetup - don't just attend; present. Present at multiple groups - find multiple tech groups, whether you do that tech or not. I do not do much .net, but I go to the .net group in the area. I'm likely the only real PHP person some of these people know. When they get PHP requests, they fwd to me. I pass around my .net referrals to them when I get them.

5. Get involved in a local business group or two - chamber of commerce or something else - offer to do presentations on the basics of using the web for their business goals (setting up a blog, CRM overviews, whatever you think you want to focus on).

6. Contact larger local dev shops and ask for any overflow work they may have.

7. Blogging/podcasting can help establish your reputation and reach a wider audience, but it generally takes a lot of time to establish credibility that way (my own experience, anyway). Meeting people face to face is a harder thing for many people to do, but you can react much more quickly to what they're saying, picking up on body language, etc.

8. Establish a mailing list on your site and ask people to sign up when they visit. Send out regular monthly mailings.

9. Focus on local/regional markets first, unless you're very focused on a particular industry and willing to travel - for higher value gigs, people generally want you on site at least some of the time. I know there's counter examples to this, but it's been my experience, and the experience of many independents that I know.

10. Ack - one more addition here - yes, you'd like to work with node/js right now - that will probably change. Don't get too hung up on the tech, really. You're working for yourself, and your priority really is solving the client's needs. You can often do that very well by being a master at certain tech, but don't let that dominate your view of things. If you really want to just be a node master, go find a job where people will give you node work.

11. Ack 2 - another point - from your local networking, build up a network of people you can bring in on projects as needed - even if you can do it all yourself, it's good to have people you can call/meet for an extra pair of hands (and likewise, you do that for them when called on). Being able to confidently say to a client "I've got experts to fill in the gaps on things I'm not strong in (or when the time deadlines are pressing)" will give you access to larger projects.

Subtle plug #1
Come to indieconf this fall - http://indieconf.com - signup at the top for announcements - we're happening this fall. (my conference)

Subtle plug #2
Consider signing up for matchist.com - they'll try to introduce you to vetted projects that match your skills, but leave the rest up to you. (not my service, but I'm a member, and I interviewed the core team on my podcast - http://webdevradio.com)