I'd say explicitly pass the data back with a subroutine call.
package Config;
require Exporter;
our @ISA=qw(Exporter);
our @EXPORT_OK=qw(read_config);
sub read_config {
my %data;
# read configuration file in and
# put values into a hash
return \%data;
}
In the modules that use Config:
package One;
use Config qw(read_config);
my $conf = read_config();
Granted, you then have your configuration data in a hash and need to call it with e.g. $conf->{logfile} instead of $logfile but IMO that's cleaner anyway.
There are ten types of people: those that understand binary and those that don't.