LinuxQuestions.org
Share your knowledge at the LQ Wiki.
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Networking
User Name
Password
Linux - Networking This forum is for any issue related to networks or networking.
Routing, network cards, OSI, etc. Anything is fair game.

Notices


Reply
  Search this Thread
Old 05-10-2005, 07:01 AM   #1
harshnoise
Member
 
Registered: Feb 2005
Location: Newcastle, England
Distribution: SuSE Pro 9.2
Posts: 35

Rep: Reputation: 15
How do I access my server content from outside my network?


I've just set up my Apache server and it works fine- on my own machine accessing from localhost/~anth/ which displays the pages from my public_html folder.

Now I tried accessing that content on my router IP (I think its that anyway): 192.168.2.3, it gives me "Access Fobidden!". Not helpful. This also happens when I try this from another machine on my network which is a Windows machine (but that shouldn't really matter though). I've set the permissions on public_html so that everyone can view the content but its still being cocky. I'd love it if someone could explain what I should be doing.

Also, how would I access my pages from outside my home network? I don't understand how it would work because I'm set a dynamic IP every time I connect I think... I'm using a wireless router with PPPoA routing so I assume thats what happens.

Thanks in advance guys.
 
Old 05-10-2005, 07:59 AM   #2
Donboy
Member
 
Registered: Aug 2003
Location: Little Rock, Arkansas
Distribution: RH, Fedora, Suse, AIX
Posts: 736

Rep: Reputation: 31
Probably just an apache configuration you need to change. You can post your httpd.conf here and I'm sure we can help you adjust it so you can view pages from your LAN.

If you use "port forwarding" on your router, you should be able to forward all requests for pages (on port 80) to your computer that is running apache. That will allow you to put in your external IP (even if its dynamic) and it should display the pages on your web server.

Since you are on dynamic IP, you will not be able to use www.somedomain.com and map it to a dynamic ip address. This would only be possible if you were on Cable or some dynamic address that doesn't change very often. In that case, you can use www.zoneedit.com and use it to manage your DNS so you can map a domain name to your dynamic ip.

But if you're on dialup and your IP changes everytime you logon, then you're screwed... probably no way to map a domain name to a temporary ip. I mean, you COULD... but why bother? It would change so much you'd get sick of updating it everytime you logged on.
 
Old 05-10-2005, 08:55 AM   #3
harshnoise
Member
 
Registered: Feb 2005
Location: Newcastle, England
Distribution: SuSE Pro 9.2
Posts: 35

Original Poster
Rep: Reputation: 15
Thanks man, when you say port forwarding, my router doesn't specifically say port forwarding, but it does have vitual servers, so if I had an entry for a virual server:

LAN IP: 192.168.2.3
Protocol Type: TCP
LAN Port: 80
Public Port: 80

would that be along the right lines?

And heres the file:

#
# /etc/apache2/httpd.conf
#
# This is the main Apache server configuration file. It contains the
# configuration directives that give the server its instructions.
# See <URL:http://httpd.apache.org/docs-2.0/> for detailed information about
# the directives.

# Based upon the default apache configuration file that ships with apache,
# which is based upon the NCSA server configuration files originally by Rob
# McCool. This file was knocked together by Peter Poeml <poeml+apache@suse.de>.

# If possible, avoid changes to this file. It does mainly contain Include
# statements and global settings that can/should be overridden in the
# configuration of your virtual hosts.


# Overview of include files, chronologically:
#
# httpd.conf
# |
# |-- uid.conf . . . . . . . . . . . . . . UserID/GroupID to run under
# |-- server-tuning.conf . . . . . . . . . sizing of the server (how many processes to start, ...)
# |-- sysconfig.d/loadmodule.conf . . . . .[*] load these modules
# |-- listen.conf . . . . . . . . . . . . . IP adresses / ports to listen on
# |-- mod_log_config.conf . . . . . . . . . define logging formats
# |-- sysconfig.d/global.conf . . . . . . .[*] server-wide general settings
# |-- mod_status.conf . . . . . . . . . . . restrict access to mod_status (server monitoring)
# |-- mod_info.conf . . . . . . . . . . . . restrict access to mod_info
# |-- mod_usertrack.conf . . . . . . . . . defaults for cookie-based user tracking
# |-- mod_autoindex-defaults.conf . . . . . defaults for displaying of server-generated directory listings
# |-- mod_mime-defaults.conf . . . . . . . defaults for mod_mime configuration
# |-- errors.conf . . . . . . . . . . . . . customize error responses
# |-- ssl-global.conf . . . . . . . . . . . SSL conf that applies to default server _and all_ virtual hosts
# |
# |-- default-server.conf . . . . . . . . . set up the default server that replies to non-virtual-host requests
# | |--mod_userdir.conf . . . . . . . . enable UserDir (if mod_userdir is loaded)
# | `--conf.d/apache2-manual?conf . . . add the docs ('?' = if installed)
# |
# |-- sysconfig.d/include.conf . . . . . .[*] your include files
# | (for each file to be included here, put its name
# | into APACHE_INCLUDE_* in /etc/sysconfig/apache2)
# |
# `-- vhosts.d/ . . . . . . . . . . . . . . for each virtual host, place one file here
# `-- *.conf . . . . . . . . . . . . . (*.conf is automatically included)
#
#
# Files marked[*] are created from sysconfig upon server restart: instead of
# these files, you edit /etc/sysconfig/apache2



# Filesystem layout:
#
# /etc/apache2/
# |-- conf.d/
# | |-- apache2-manual.conf . . . . . . . conf that comes with apache2-doc
# | |-- mod_php4.conf . . . . . . . . . . (example) conf that comes with apache2-mod_php4
# | `-- ... . . . . . . . . . . . . . . . other configuration added by packages
# |-- default-server.conf
# |-- errors.conf
# |-- httpd.conf . . . . . . . . . . . . . top level configuration file
# |-- listen.conf
# |-- magic
# |-- mime.types -> ../mime.types
# |-- mod_autoindex-defaults.conf
# |-- mod_info.conf
# |-- mod_log_config.conf
# |-- mod_mime-defaults.conf
# |-- mod_perl-startup.pl
# |-- mod_status.conf
# |-- mod_userdir.conf
# |-- mod_usertrack.conf
# |-- server-tuning.conf
# |-- ssl-global.conf
# |-- ssl.crl/ . . . . . . . . . . . . . . PEM-encoded X.509 Certificate Revocation Lists (CRL)
# |-- ssl.crt/ . . . . . . . . . . . . . . PEM-encoded X.509 Certificates
# |-- ssl.csr/ . . . . . . . . . . . . . . PEM-encoded X.509 Certificate Signing Requests
# |-- ssl.key/ . . . . . . . . . . . . . . PEM-encoded RSA Private Keys
# |-- ssl.prm/ . . . . . . . . . . . . . . public DSA Parameter Files
# |-- sysconfig.d/ . . . . . . . . . . . . files that are created from /etc/sysconfig/apache2
# | |-- global.conf
# | |-- include.conf
# | `-- loadmodule.conf
# |-- uid.conf
# `-- vhosts.d/ . . . . . . . . . . . . . . put your virtual host configuration (*.conf) here
# |-- vhost-ssl.template
# `-- vhost.template



### Global Environment ######################################################
#
# The directives in this section affect the overall operation of Apache,
# such as the number of concurrent requests.

# run under this user/group id
Include /etc/apache2/uid.conf

# - how many server processes to start (server pool regulation)
# - usage of KeepAlive
Include /etc/apache2/server-tuning.conf

# ErrorLog: The location of the error log file.
# If you do not specify an ErrorLog directive within a <VirtualHost>
# container, error messages relating to that virtual host will be
# logged here. If you *do* define an error logfile for a <VirtualHost>
# container, that host's errors will be logged there and not here.
ErrorLog /var/log/apache2/error_log

# generated from APACHE_MODULES in /etc/sysconfig/apache2
Include /etc/apache2/sysconfig.d/loadmodule.conf

# IP addresses / ports to listen on
Include /etc/apache2/listen.conf

# predefined logging formats
Include /etc/apache2/mod_log_config.conf

# generated from global settings in /etc/sysconfig/apache2
Include /etc/apache2/sysconfig.d/global.conf

# optional mod_status, mod_info
Include /etc/apache2/mod_status.conf
Include /etc/apache2/mod_info.conf

# optional cookie-based user tracking
# read the documentation before using it!!
Include /etc/apache2/mod_usertrack.conf

# configuration of server-generated directory listings
Include /etc/apache2/mod_autoindex-defaults.conf

# associate MIME types with filename extensions
TypesConfig /etc/apache2/mime.types
DefaultType text/plain
Include /etc/apache2/mod_mime-defaults.conf

# set up (customizable) error responses
Include /etc/apache2/errors.conf

# global (server-wide) SSL configuration, that is not specific to
# any virtual host
Include /etc/apache2/ssl-global.conf

# forbid access to the entire filesystem by default
<Directory />
Options None
AllowOverride None
Order deny,allow
Deny from all
</Directory>

# use .htaccess files for overriding,
AccessFileName .htaccess
# and never show them
<Files ~ "^\.ht">
Order allow,deny
Deny from all
</Files>

# List of resources to look for when the client requests a directory
DirectoryIndex index.html index.html.var

### 'Main' server configuration #############################################
#
# The directives in this section set up the values used by the 'main'
# server, which responds to any requests that aren't handled by a
# <VirtualHost> definition. These values also provide defaults for
# any <VirtualHost> containers you may define later in the file.
#
# All of these directives may appear inside <VirtualHost> containers,
# in which case these default settings will be overridden for the
# virtual host being defined.
#
Include /etc/apache2/default-server.conf


# Another way to include your own files
#
# The file below is generated from /etc/sysconfig/apache2,
# include arbitrary files as named in APACHE_CONF_INCLUDE_FILES and
# APACHE_CONF_INCLUDE_DIRS
Include /etc/apache2/sysconfig.d/include.conf


### Virtual server configuration ############################################
#
# VirtualHost: If you want to maintain multiple domains/hostnames on your
# machine you can setup VirtualHost containers for them. Most configurations
# use only name-based virtual hosts so the server doesn't need to worry about
# IP addresses. This is indicated by the asterisks in the directives below.
#
# Please see the documentation at
# <URL:http://httpd.apache.org/docs-2.0/vhosts/>
# for further details before you try to setup virtual hosts.
#
# You may use the command line option '-S' to verify your virtual host
# configuration.
#
Include /etc/apache2/vhosts.d/*.conf


# Note: instead of adding your own configuration here, consider
# adding it in your own file (/etc/apache2/httpd.conf.local)
# putting its name into APACHE_CONF_INCLUDE_FILES in
# /etc/sysconfig/apache2 -- this will make system updates
# easier

Last edited by harshnoise; 05-10-2005 at 10:00 AM.
 
Old 05-10-2005, 10:04 AM   #4
Donboy
Member
 
Registered: Aug 2003
Location: Little Rock, Arkansas
Distribution: RH, Fedora, Suse, AIX
Posts: 736

Rep: Reputation: 31
Oh boy.... this kinda sucks. It seems they have the config broken down into a bunch of *.conf files. I was looking for the "NameVirtualHost" directive... and also what virtual hosts you have created, if any. It will be a little harder to troubleshoot this because you have everything broken down into conf files.

Try posting...

/etc/apache2/default-server.conf
/etc/apache2/vhosts.d/*
/etc/apache2/sysconfig.d/global.conf

Maybe what we need is located in one of these.

I also strongly recommend getting a decent book on Apache, or just plan to spend some time reading the documentation on apache.org. There are soooo many config options for apache you really need to spend some time learning some of these things so you can get the best possible server setup.
 
Old 05-10-2005, 10:20 AM   #5
harshnoise
Member
 
Registered: Feb 2005
Location: Newcastle, England
Distribution: SuSE Pro 9.2
Posts: 35

Original Poster
Rep: Reputation: 15
I removed this message because we don't need it anymore and was getting annoying.

Last edited by harshnoise; 05-11-2005 at 02:03 PM.
 
Old 05-10-2005, 11:45 AM   #6
Donboy
Member
 
Registered: Aug 2003
Location: Little Rock, Arkansas
Distribution: RH, Fedora, Suse, AIX
Posts: 736

Rep: Reputation: 31
Hmmm, maybe we need to be looking at your /etc/apache2/mod_userdir.conf, since you're using userdir's to accomplish this. Sorry I ddin't realize this sooner... would be easier if they had included everythign in the same file instead of spreading it out over multiple conf files.
 
Old 05-10-2005, 01:10 PM   #7
harshnoise
Member
 
Registered: Feb 2005
Location: Newcastle, England
Distribution: SuSE Pro 9.2
Posts: 35

Original Poster
Rep: Reputation: 15
I wonder why mine is organised like that, I wonder if its just a new thing theyve included recently. Anyway heres that file, I've already tampered with it a bit, I changed it so that localhost/~anth displays the content of /home/anth/public_html/.

/etc/apache2/mod_userdir.conf

#
# UserDir: The name of the directory that is appended onto a user's home
# directory if a ~user request is received.
#

<IfModule mod_userdir.c>
# Note that the name of the user directory ("public_html") cannot easily be
# changed here, since it is a compile time setting. The apache package
# would have to be rebuilt. You could work around by deleting
# /usr/sbin/suexec, but then all scripts from the directories would be
# executed with the UID of the webserver.
#
# To rebuild apache with another setting you need to change the
# %userdir define in the spec file.

# not every user's directory should be visible:
#UserDir disabled root

# to enable UserDir only for a certain set of users, use this instead:
#UserDir disabled
#UserDir enabled user1 user2


# the UserDir directive is actually used inside the virtual hosts, to
# have more control
UserDir public_html

<Directory /home/*/public_html>

AllowOverride FileInfo AuthConfig Limit Indexes
Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec

<Limit GET POST OPTIONS PROPFIND>
Order allow,deny
Allow from all
</Limit>

<LimitExcept GET POST OPTIONS PROPFIND>
Order deny,allow
Deny from all
</LimitExcept>

</Directory>

</IfModule>
 
Old 05-11-2005, 01:58 PM   #8
harshnoise
Member
 
Registered: Feb 2005
Location: Newcastle, England
Distribution: SuSE Pro 9.2
Posts: 35

Original Poster
Rep: Reputation: 15
OK, well I've just discovered I can access pages from http://192.168.2.3/~anth/ on my machine, but it still doesn't work on the other machine on the network or from my router's IP address with port forwarding on. Although I've heard Belkin routers are a bit dodgy for port forwarding...
 
Old 05-11-2005, 03:57 PM   #9
harshnoise
Member
 
Registered: Feb 2005
Location: Newcastle, England
Distribution: SuSE Pro 9.2
Posts: 35

Original Poster
Rep: Reputation: 15
Thanks for your help man, I've managed to sort it, I just needed to turn of the firewall on my local computer. I still have the firewall on my router though so all security is not lost
 
  


Reply


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
Can't access external server from local network newuser455 Linux - Networking 4 11-26-2004 02:09 PM
Poptop server cannot access internal network LJ151 Linux - Software 3 08-05-2004 07:55 AM
access server from outside network? wza Linux - Networking 2 01-07-2004 10:13 AM
Network access OK but server cannot use internet gkhewitt Linux - Networking 6 08-04-2003 08:13 PM
leafnode can't access server from network vrillusions Linux - Software 1 05-22-2003 10:13 PM

LinuxQuestions.org > Forums > Linux Forums > Linux - Networking

All times are GMT -5. The time now is 11:23 PM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration