If you can't, for some reason, follow David Carlisle's excellent advice, you can use a strut:
\documentclass{article}
\usepackage{tabularx}
\begin{document}
\noindent
\begin{tabularx}{\linewidth}{|X|X|X|X|}
\hline
\rule{0.0pt}{\linewidth}
& \rule{0.0pt}{\linewidth}
& \rule{0.0pt}{\linewidth}
& \rule{0.0pt}{\linewidth}\\
\hline
\rule{0.0pt}{\linewidth}
& \rule{0.0pt}{\linewidth}
& \rule{0.0pt}{\linewidth}
& \rule{0.0pt}{\linewidth}\\
\hline
\end{tabularx}
\end{document}
with this result:
Note that this doesn't solve any problems you may encounter trying to position text in these boxes. TikZ would probably give you a better answer for that.
Alternatively, following Stephan Lemke's much better suggestion, you can use a parbox:
\documentclass{article}
\usepackage{tabularx}
\begin{document}
\noindent
\begin{tabularx}{\linewidth}{|X|X|X|}
\hline
\parbox[b][\linewidth][t]{\linewidth}{Top Top Top Top Top Top Top Top}
& \parbox[b][\linewidth][c]{\linewidth}{Middle Middle Middle Middle }
& \parbox[b][\linewidth][b]{\linewidth}{Bottom Bottom Bottom Bottom }\\
\hline
\parbox[b][\linewidth][t]{\linewidth}{Top}
& \parbox[b][\linewidth][c]{\linewidth}{Middle}
& \parbox[b][\linewidth][b]{\linewidth}{Bottom}\\
\hline
\end{tabularx}
\end{document}
with this result: