The behavior you're describing is based on your shell.
The default shell in CentOS is bash: you can confirm this by typing the following:
$ echo $SHELL
/bin/bash
If it is, then you can get similar functionality to your FreeBSD shell (most likely ksh) by hitting CTRL-r. You'll see something like this:
(reverse-i-search)`':
Simply start typing and you'll get the commands you've previously run based on what you've typed.
For example, in this terminal, when I type CTRL-r s I get this:
(reverse-i-search)`s': sudo port install ruby
You can then scroll up or down with the arrow key to go through all the commands that match your search criteria (in this case, 's').