The docs specify the hardware requirements, quoting (as off 5/7/2018):
Stellar-Core
Instances of Stellar-Core are part of the network as a
node and therefore need to be large enough to support the volume on
the network.
Minimum
CPU: 4-Core (8-Thread) Intel i7/Xeon or equivalent (c5.xlarge
on AWS)
RAM: 8GB DDR4
SSD: 64GB
Recommended
CPU: 8-Core (16-Thread) Intel i7/Xeon or equivalent
(c5.2xlarge on AWS)
RAM: 16GB DDR4
SSD: 120GB
Horizon
Instances of Horizon ingest data from the network and
therefore need to be large enough to support ingesting all of the
latest transactions on the network.
There is a significant amount of computation that is done on the DB
side of Horizon, these requirements are only for the application side
of horizon. If you are going by these requirements then you will need
to account for using a larger machine if using the same machine for
the DB, or a separate machine for the DB altogether.
Minimum
CPU: 8-Core (16-Thread) Intel i7/Xeon or equivalent
(c5.2xlarge on AWS)
RAM: 16GB DDR4
SSD: 64GB
Recommended
CPU: 16-Core (32-Thread) Intel i7/Xeon or equivalent
(c5.4xlarge on AWS)
RAM: 32GB DDR4
SSD: 120GB
Stellar-Core and horizon are available as debian packages, you can check them out here.
You can install stellar-core and horizon using the following commands:
# update sources to include for stellar-core and horizon
echo "deb https://apt.stellar.org/public stable/" | sudo tee -a /etc/apt/sources.list.d/SDF.list
# install
apt-get update apt-get install stellar-core apt-get install stellar-horizon