I apparently have no idea what I am doing. I am running Ubuntu Server 7.10 with Apache 2 web server and ProFTPd FTP server. I have two domain names registered with 1&1 Internet. Using this setup, I can server one of the domains if I configure Apache manually. I want to serve both domains locally, though, so I installed ISPConfig. I have added myself as a client and added one site. All I get when I try to access the web page with it's domain address, all I get is a page that tells me: This IP address is shared. For access to the web site which you look for, enter its address instead of its IP. I have tried setting 1&1 redirection to frame-based or HTTP-based, with no difference. I assume that 1&1 is simply using the numerical IP address in place of the domain address. Can someone please tell me a way around this. Please bear in mind that I am new to Linux and web servers. What little I do know has been learned by tutorials on this site and by trial-and-error. I will appreciate any advise that anyone can offer. If any of this helps, here is the data that I think is pertinent - software: Ubuntu Server 7.10, Apache 2, ProFTPd tutorial: The Perfect Server - Ubuntu Gutsy Gibbon (Ubuntu 7.10) domain registrar: 1&1 Internet domain: www.Computer-Graveyard.com public IP address: 72.149.151.xxx local IP address: 192.168.1.13 If I have missed anything else that would help, please let me know.
Ok.. I think I fixed it... Under ISPConfig Server/Settings, I had IP Address set to the local IP - 192.168.1.13, instead of the public IP. That field could have a little more specific description, but.... Thanks, anyway. ________ XR75 ________ Spice weed
You must use the local IP and not the external IP if your server is behind a router. If the server is directly connected to the internet, it normally does not have a local IP address (except 127.0.0.1).
1:30 in the morning and I am about aggravated! The local IP address of the computer I am using as a server is 192.168.1.13. My public static IP address is 72.149.151.22. I have an IPMap set in my Netopia router to forward 72.149.151.22 to 192.168.1.13. I have RobotsAndComputers.com and Computer-Graveyard.com (both registered through 1&1 Internet) forwarded to 72.149.151.22 using frame-based forwarding. When I set Server/Settings in ISPConfig to 192.168.1.13 (which I saw elsewhere in this forum was what it SHOULD be) as well as the IP address under ISP Site/Basis, I get a Shared IP Address error page when attempting to connect to either domain. If I set those addresses to 72.149.151.22, then I no longer get the Shared IP Address error page, but instead of loading the web pages index.htm file, I am presented with a directory listing of /var/www. I have even tried using 72.149.151.22 in Server/Settings and 192.168.1.13 in the ISP Site/Basis fields. I still get the Shared IP error page. I am going to bed! If anyone can help, I will be EXTREMELY grateful! I am going to include my apache2.conf, proftpd.conf, proftpd_ispconf.conf and Vhosts_ispconfig.conf (in another message due to length limits) files. If you need anything else, please let me know.
apache2.conf Code: # ### Section 1: Global Environment # ServerRoot "/etc/apache2" # # The accept serialization lock file MUST BE STORED ON A LOCAL DISK. # #<IfModule !mpm_winnt.c> #<IfModule !mpm_netware.c> LockFile /var/lock/apache2/accept.lock #</IfModule> #</IfModule> # # PidFile: The file in which the server should record its process # identification number when it starts. # PidFile /var/run/apache2.pid # # Timeout: The number of seconds before receives and sends time out. # Timeout 300 # # KeepAlive: Whether or not to allow persistent connections (more than # one request per connection). Set to "Off" to deactivate. # KeepAlive On # # MaxKeepAliveRequests: The maximum number of requests to allow # during a persistent connection. Set to 0 to allow an unlimited amount. # We recommend you leave this number high, for maximum performance. # MaxKeepAliveRequests 100 # # KeepAliveTimeout: Number of seconds to wait for the next request from the # same client on the same connection. # KeepAliveTimeout 15 ## ## Server-Pool Size Regulation (MPM specific) ## # prefork MPM # StartServers: number of server processes to start # MinSpareServers: minimum number of server processes which are kept spare # MaxSpareServers: maximum number of server processes which are kept spare # MaxClients: maximum number of server processes allowed to start # MaxRequestsPerChild: maximum number of requests a server process serves <IfModule mpm_prefork_module> StartServers 5 MinSpareServers 5 MaxSpareServers 10 MaxClients 150 MaxRequestsPerChild 0 </IfModule> # worker MPM # StartServers: initial number of server processes to start # MaxClients: maximum number of simultaneous client connections # MinSpareThreads: minimum number of worker threads which are kept spare # MaxSpareThreads: maximum number of worker threads which are kept spare # ThreadsPerChild: constant number of worker threads in each server process # MaxRequestsPerChild: maximum number of requests a server process serves <IfModule mpm_worker_module> StartServers 2 MaxClients 150 MinSpareThreads 25 MaxSpareThreads 75 ThreadsPerChild 25 MaxRequestsPerChild 0 </IfModule> User www-data Group www-data # # AccessFileName: The name of the file to look for in each directory # for additional configuration directives. See also the AllowOverride # directive. # AccessFileName .htaccess # # The following lines prevent .htaccess and .htpasswd files from being # viewed by Web clients. # <Files ~ "^\.ht"> Order allow,deny Deny from all </Files> # # DefaultType text/plain # # HostnameLookups Off # 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 # # LogLevel: Control the number of messages logged to the error_log. # Possible values include: debug, info, notice, warn, error, crit, # alert, emerg. # LogLevel warn # Include module configuration: Include /etc/apache2/mods-enabled/*.load Include /etc/apache2/mods-enabled/*.conf # Include all the user configurations: Include /etc/apache2/httpd.conf # Include ports listing Include /etc/apache2/ports.conf # # The following directives define some format nicknames for use with # a CustomLog directive (see below). # LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined LogFormat "%h %l %u %t \"%r\" %>s %b" common LogFormat "%{Referer}i -> %U" referer LogFormat "%{User-agent}i" agent # # ServerTokens # This directive configures what you return as the Server HTTP response # Header. The default is 'Full' which sends information about the OS-Type # and compiled in modules. # Set to one of: Full | OS | Minor | Minimal | Major | Prod # where Full conveys the most information, and Prod the least. # ServerTokens Full # # Optionally add a line containing the server version and virtual host # name to server-generated pages (internal error documents, FTP directory # listings, mod_status and mod_info output etc., but not CGI generated # documents or custom error documents). # Set to "EMail" to also include a mailto: link to the ServerAdmin. # Set to one of: On | Off | EMail # ServerSignature On # # Customizable error responses come in three flavors: # 1) plain text 2) local redirects 3) external redirects # # Some examples: #ErrorDocument 500 "The server made a boo boo." #ErrorDocument 404 /missing.html #ErrorDocument 404 "/cgi-bin/missing_handler.pl" #ErrorDocument 402 http://www.example.com/subscription_info.html # # # Putting this all together, we can internationalize error responses. # # We use Alias to redirect any /error/HTTP_<error>.html.var response to # our collection of by-error message multi-language collections. We use # includes to substitute the appropriate text. # # You can modify the messages' appearance without changing any of the # default HTTP_<error>.html.var files by adding the line: # # Alias /error/include/ "/your/include/path/" # # which allows you to create your own set of files by starting with the # /usr/share/apache2/error/include/ files and copying them to /your/include/path/, # even on a per-VirtualHost basis. The default include files will display # your Apache version number and your ServerAdmin email address regardless # of the setting of ServerSignature. # # The internationalized error documents require mod_alias, mod_include # and mod_negotiation. To activate them, uncomment the following 30 lines. # Alias /error/ "/usr/share/apache2/error/" # # <Directory "/usr/share/apache2/error"> # AllowOverride None # Options IncludesNoExec # AddOutputFilter Includes html # AddHandler type-map var # Order allow,deny # Allow from all # LanguagePriority en cs de es fr it nl sv pt-br ro # ForceLanguagePriority Prefer Fallback # </Directory> # # ErrorDocument 400 /error/HTTP_BAD_REQUEST.html.var # ErrorDocument 401 /error/HTTP_UNAUTHORIZED.html.var # ErrorDocument 403 /error/HTTP_FORBIDDEN.html.var # ErrorDocument 404 /error/HTTP_NOT_FOUND.html.var # ErrorDocument 405 /error/HTTP_METHOD_NOT_ALLOWED.html.var # ErrorDocument 408 /error/HTTP_REQUEST_TIME_OUT.html.var # ErrorDocument 410 /error/HTTP_GONE.html.var # ErrorDocument 411 /error/HTTP_LENGTH_REQUIRED.html.var # ErrorDocument 412 /error/HTTP_PRECONDITION_FAILED.html.var # ErrorDocument 413 /error/HTTP_REQUEST_ENTITY_TOO_LARGE.html.var # ErrorDocument 414 /error/HTTP_REQUEST_URI_TOO_LARGE.html.var # ErrorDocument 415 /error/HTTP_UNSUPPORTED_MEDIA_TYPE.html.var # ErrorDocument 500 /error/HTTP_INTERNAL_SERVER_ERROR.html.var # ErrorDocument 501 /error/HTTP_NOT_IMPLEMENTED.html.var # ErrorDocument 502 /error/HTTP_BAD_GATEWAY.html.var # ErrorDocument 503 /error/HTTP_SERVICE_UNAVAILABLE.html.var # ErrorDocument 506 /error/HTTP_VARIANT_ALSO_VARIES.html.var # Include of directories ignores editors' and dpkg's backup files, # see README.Debian for details. # Include generic snippets of statements Include /etc/apache2/conf.d/ # Include the virtual host configurations: Include /etc/apache2/sites-enabled/ <Directory /var/www/sharedip> Options +Includes -Indexes AllowOverride None AllowOverride Indexes AuthConfig Limit FileInfo Order allow,deny Allow from all <Files ~ "^\.ht"> Deny from all </Files> </Directory> ##############ispconfig_log############### LogFormat "%v||||%b||||%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined_ispconfig CustomLog "|/root/ispconfig/cronolog --symlink=/var/log/httpd/ispconfig_access_log /var/log/httpd/ispconfig_access_log_%Y_%m_%d" combined_ispconfig <Directory /var/www/*/web> Options +Includes -Indexes AllowOverride None AllowOverride Indexes AuthConfig Limit FileInfo Order allow,deny Allow from all <Files ~ "^\.ht"> Deny from all </Files> </Directory> <Directory /var/www/*/user/*/web> Options +Includes -Indexes AllowOverride None AllowOverride Indexes AuthConfig Limit FileInfo Order allow,deny Allow from all <Files ~ "^\.ht"> Deny from all </Files> </Directory> <Directory /var/www/*/cgi-bin> Options ExecCGI -Indexes AllowOverride None AllowOverride Indexes AuthConfig Limit FileInfo Order allow,deny Allow from all <Files ~ "^\.ht"> Deny from all </Files> </Directory> Include /etc/apache2/vhosts/Vhosts_ispconfig.conf
proftpd.conf Code: # # /etc/proftpd/proftpd.conf -- This is a basic ProFTPD configuration file. # To really apply changes reload proftpd after modifications. # # Includes DSO modules Include /etc/proftpd/modules.conf # Set off to disable IPv6 support which is annoying on IPv4 only boxes. UseIPv6 off ServerName "Debian" ServerType standalone DeferWelcome off MultilineRFC2228 on DefaultServer on ShowSymlinks on TimeoutNoTransfer 600 TimeoutStalled 600 TimeoutIdle 1200 DisplayLogin welcome.msg DisplayFirstChdir .message ListOptions "-l" DenyFilter \*.*/ # Use this to jail all users in their homes # DefaultRoot ~ # Users require a valid shell listed in /etc/shells to login. # Use this directive to release that constrain. # RequireValidShell off # Port 21 is the standard FTP port. Port 21 # In some cases you have to specify passive ports range to by-pass # firewall limitations. Ephemeral ports can be used for that, but # feel free to use a more narrow range. # PassivePorts 49152 65534 # If your host was NATted, this option is useful in order to # allow passive tranfers to work. You have to use your public # address and opening the passive ports used on your firewall as well. # MasqueradeAddress 1.2.3.4 # To prevent DoS attacks, set the maximum number of child processes # to 30. If you need to allow more than 30 concurrent connections # at once, simply increase this value. Note that this ONLY works # in standalone mode, in inetd mode you should use an inetd server # that allows you to limit maximum number of processes per service # (such as xinetd) MaxInstances 30 # Set the user and group that the server normally runs at. User proftpd Group nogroup # Umask 022 is a good standard umask to prevent new files and dirs # (second parm) from being group and world writable. Umask 022 022 # Normally, we want files to be overwriteable. AllowOverwrite on # Uncomment this if you are using NIS or LDAP to retrieve passwords: # PersistentPasswd off # Be warned: use of this directive impacts CPU average load! # Uncomment this if you like to see progress and transfer rate with ftpwho # in downloads. That is not needed for uploads rates. # # UseSendFile off # Choose a SQL backend among MySQL or PostgreSQL. # Both modules are loaded in default configuration, so you have to specify the backend # or comment out the unused module in /etc/proftpd/modules.conf. # Use 'mysql' or 'postgres' as possible values. # #<IfModule mod_sql.c> # SQLBackend mysql #</IfModule> TransferLog /var/log/proftpd/xferlog SystemLog /var/log/proftpd/proftpd.log <IfModule mod_tls.c> TLSEngine off </IfModule> <IfModule mod_quota.c> QuotaEngine on </IfModule> <IfModule mod_ratio.c> Ratios on </IfModule> # Delay engine reduces impact of the so-called Timing Attack described in # http://security.lss.hr/index.php?page=details&ID=LSS-2004-10-02 # It is on by default. <IfModule mod_delay.c> DelayEngine on </IfModule> <IfModule mod_ctrls.c> ControlsEngine on ControlsMaxClients 2 ControlsLog /var/log/proftpd/controls.log ControlsInterval 5 ControlsSocket /var/run/proftpd/proftpd.sock </IfModule> <IfModule mod_ctrls_admin.c> AdminControlsEngine on </IfModule> # A basic anonymous configuration, no upload directories. # <Anonymous ~ftp> # User ftp # Group nogroup # # We want clients to be able to login with "anonymous" as well as "ftp" # UserAlias anonymous ftp # # Cosmetic changes, all files belongs to ftp user # DirFakeUser on ftp # DirFakeGroup on ftp # # RequireValidShell off # # # Limit the maximum number of anonymous logins # MaxClients 10 # # # We want 'welcome.msg' displayed at login, and '.message' displayed # # in each newly chdired directory. # DisplayLogin welcome.msg # DisplayFirstChdir .message # # # Limit WRITE everywhere in the anonymous chroot # <Directory *> # <Limit WRITE> # DenyAll # </Limit> # </Directory> # # # Uncomment this if you're brave. # # <Directory incoming> # # # Umask 022 is a good standard umask to prevent new files and dirs # # # (second parm) from being group and world writable. # # Umask 022 022 # # <Limit READ WRITE> # # DenyAll # # </Limit> # # <Limit STOR> # # AllowAll # # </Limit> # # </Directory> # # </Anonymous> DefaultRoot ~ Include /etc/proftpd_ispconfig.conf proftpd_ispconfig.cong Code: ################################### # # ISPConfig proftpd Configuration File # Version 1.0 # ################################### DefaultAddress 127.0.0.1 <VirtualHost 72.149.151.22> DefaultRoot ~ AllowOverwrite on Umask 002 </VirtualHost> Vhosts_ispconfig.conf Code: ################################### # # ISPConfig vHost Configuration File # Version 1.0 # ################################### # NameVirtualHost 72.149.151.22:80 <VirtualHost 72.149.151.22:80> ServerName localhost ServerAdmin root@localhost DocumentRoot /var/www/sharedip </VirtualHost> # # ###################################### # Vhost: www.Computer-Graveyard.com:80 ###################################### # # <VirtualHost 72.149.151.22:80> ServerName www.Computer-Graveyard.com:80 ServerAdmin [email protected] DocumentRoot /var/www/web6/web ServerAlias Computer-Graveyard.com DirectoryIndex index.html index.htm index.php index.php5 index.php4 index.php3 index.shtml index.cgi index.pl index.jsp Default.htm default.htm ErrorLog /var/www/web6/log/error.log Alias /error/ "/var/www/web6/web/error/" ErrorDocument 400 /error/invalidSyntax.html ErrorDocument 401 /error/authorizationRequired.html ErrorDocument 403 /error/forbidden.html ErrorDocument 404 /error/fileNotFound.html ErrorDocument 405 /error/methodNotAllowed.html ErrorDocument 500 /error/internalServerError.html ErrorDocument 503 /error/overloaded.html AliasMatch ^/~([^/]+)(/(.*))? /var/www/web6/user/$1/web/$3 AliasMatch ^/users/([^/]+)(/(.*))? /var/www/web6/user/$1/web/$3 </VirtualHost> # # # ###################################### # Vhost: www.robotsandcomputers.com:80 ###################################### # # <VirtualHost 72.149.151.22:80> ServerName www.robotsandcomputers.com:80 ServerAdmin [email protected] DocumentRoot /var/www/web8/web ServerAlias RobotsandComputers.com DirectoryIndex index.html index.htm index.php index.php5 index.php4 index.php3 index.shtml index.cgi index.pl index.jsp Default.htm default.htm ErrorLog /var/www/web8/log/error.log Alias /error/ "/var/www/web8/web/error/" ErrorDocument 400 /error/invalidSyntax.html ErrorDocument 401 /error/authorizationRequired.html ErrorDocument 403 /error/forbidden.html ErrorDocument 404 /error/fileNotFound.html ErrorDocument 405 /error/methodNotAllowed.html ErrorDocument 500 /error/internalServerError.html ErrorDocument 503 /error/overloaded.html AliasMatch ^/~([^/]+)(/(.*))? /var/www/web8/user/$1/web/$3 AliasMatch ^/users/([^/]+)(/(.*))? /var/www/web8/user/$1/web/$3 </VirtualHost> # # #
Ok, please read my post above. There is nothing more to say and no other possible answer. If you still get the shared IP address, then you misconfigured DNS or your router. You must configure your router to foward port 80 to the exact same internal IP address that you selected for the website. You can nnever use frame based forwarding as this is no forwarding at all, its just a browser trick and ignored by apache. You will have to set a A-Record in DNS that points to your router IP.
I cannot find anything on the router for "Port Forwarding." The closest thing I can find is IPMaps (Set up NAT one-to-one IP address mappings) which I have set to forward 72.149.151.22 (the public static IP address) to 192.168.1.13 (the local internal IP address of the server). I cannot find anything to forward ports specifically. Under 1&1 Internets domain management, I am only offered two choices (that I can find) - frame-based redirection and HTTP redirection. If I select HTTP redirection, then the address bar on the remote computer accessing the site shows http://72.149.151.22/www.Computer-Graveyard.com/web/ instead of the http://www.Computer-Graveyard.com/ that it is supposed to. I will email 1&1 to see if they allow the DNS records to be updated. I see in ISPConfig that you can elect to have ISPConfig create DNS and DNS-MX records. Is that what I need to send to 1&1, and if so, where does ISPConfig create them? Before I reinstalled the server system (Linux, Apache, ISPConfig) - I screwed it up and had to reinstall - I was able to type www.Computer-Graveyard.com into any browser in the world and pull up the web site just fine using the same router settings. I appreciate your help, but this is driving me mad. I swear I am about ready to give up un the whole Linux server idea and try using an older iMac.
I was able to create a Pinhole for TCP external port 80 to internal port 80 on 192.168.1.13 (rather than the IPMap that I was trying to use). I am still getting Shared IP errors. ________ electronic cigarettes ________ Portable Vaporizer Reviews
You can neither use http or frame based redirects. You will have to use a dns a-record as I described above.
OK... I got it working! After I created pinholes in my router for ports 80, 21 and 22 I went to 1&1 and found a link where I could edit the DNS settings. I added 72.149.151.22 as IP Address (A record)): Other and turned forwarding off (as you suggested). I was still getting the Shared IP errors. Just for the #### of it, I turned frame-based forwarding on on one site and HTTP forwarding on on the other. The one with frame-based worked while the HHTP forward did not, so I changed that one to frame-based and now they both work. I would like to ask another question, if you don't mind, though. There is a setting under 1&1s DNS page where I can change the nameserver from 1&1 name server to my own. I did try this (I assume that might take care of the forwarding problem), but I apparently need two different IP addresses - I only have one. There is an option where I can set 1&1 name server as the second server, so I used that as the secondary server and tried 72.149.151.22, both with and without the http:// prefix, as the primary name server. I was given an error saying that the address I gave it wasn't valid. Any ideas on that one? Both domains, www.Computer-Graveyard and www.RobotsAndComputers.com , are working, so I'm not REALLY worried about it, but I am curious if the way I have this working if it will effect CGI, SSI or PHP.