Your question is a bit vague to give a clear answer.
Option 1: Port forwarding with different ports. You have 80,22 going to your linux web server, you could have 8080 and 8022 going to your OS X server. Pro: trivially easy. Con: to access them, you would have to specify http://home.example.org:8080/ every time which could get annoying. Also not secured.
Option 2: VPN terminating on your router. There are many common kinds of VPNs (PPTP, L2TP, IPSEC, OpenVPN) and which router model and which computers need to access it, and how secure you need it to be will affect how you can set this up. That said, most home routers will not have this as an option at all. But typically you would configure the VPN, connect to it (Windows and Macs have built in PPTP clients, for example), and then you can access anything on your internal network.
Option 3: Use SSH as if it was a VPN, which is one of it's lesser known features. You connect to SSH on your Linux server, and relay all traffic through that out onto your home network. Pro: cheap, easy-ish, effective, works with any kind of traffic, traffic is encrypted. e.g. https://calomel.org/firefox_ssh_proxy.html Con: not all that easy if you're not familiar with that kind of thing, requires more work to connect to (SSH with port forwarding, then changing how you connect things).
Option 4: VPN terminating on your Linux or OS-X computer. Can be very difficult to setup, but the most configurable option. E.g. Linux IPSEC, OpenVPN. Pro: configurable. Con: needs a client install, complex.