проброс порта с адресом

Обсуждение настройки и работы сервисов, резервирования, сетевых настроек и вопросов безопасности ОС для молодых и начинающих системных администраторов.

Модератор: SLEDopit

Ответить
Аватара пользователя
demsl
Сообщения: 207
Статус: sl

проброс порта с адресом

Сообщение demsl »

научите плиз, как в убунте пробросить 80 порт с таким условием: некто с IP 1.2.3.4 стучится на мой внешний IP 5.6.7.8/folder и перенаправляется на машину в локалке 192.168.1.5/folder
и можно ли такое в принципе реализовать?
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 20794
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: проброс порта с адресом

Сообщение Bizdelnick »

Именно пробросить - нет. NAT'ами ведает netfilter, который имеет понятие только о сетевом и транспортном уровнях. "Путь" определяется уже на прикладном уровне.
Но можно поднять на 5.6.7.8 обратный прокси, например nginx.
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
Аватара пользователя
demsl
Сообщения: 207
Статус: sl

Re: проброс порта с адресом

Сообщение demsl »

жаль((
на 192.168.1.5 стоит апач, можно ли его средствами завернуть весь трафик на 80-й в нужную /folder? или ещё как-то добраться снаружи к 192.168.1.5/folder
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 20794
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: проброс порта с адресом

Сообщение Bizdelnick »

demsl писал(а):
12.08.2013 13:56
на 192.168.1.5 стоит апач, можно ли его средствами завернуть весь трафик на 80-й в нужную /folder?

Прописать соответствующий docroot, не?
Опишите задачу поподробнее, я не очень понимаю, чего Вы хотите добиться.
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
Аватара пользователя
demsl
Сообщения: 207
Статус: sl

Re: проброс порта с адресом

Сообщение demsl »

на машине 192.168.1.5 работает апач, есть вэб-приложение, доступное по 192.168.1.5/folder. хочу дать доступ к нему из мира
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 20794
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: проброс порта с адресом

Сообщение Bizdelnick »

demsl писал(а):
12.08.2013 14:34
есть вэб-приложение, доступное по 192.168.1.5/folder

Я правильно понимаю, что там есть что-то ещё, что должно быть доступно из локалки, но не извне?
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
Аватара пользователя
demsl
Сообщения: 207
Статус: sl

Re: проброс порта с адресом

Сообщение demsl »

нет, сугубо описанное выше вэб-приложение
Спасибо сказали:
lazhu
Сообщения: 70
ОС: FreeBSD 9-STABLE / clang 3.3
Контактная информация:

Re: проброс порта с адресом

Сообщение lazhu »

Можно пробросить 80 порт. В этом случае любой, кто наберет в броузере 5.6.7.8, попадет на 192.168.1.5.
А редиректить http-запросы из корня в какую-либо директорию можно разными способами, но силами уже самого веб-сервера.
Спасибо сказали:
Аватара пользователя
demsl
Сообщения: 207
Статус: sl

Re: проброс порта с адресом

Сообщение demsl »

lazhu писал(а):
12.08.2013 15:01
А редиректить http-запросы из корня в какую-либо директорию можно разными способами, но силами уже самого веб-сервера.

можно с примерами, пожалуйста?
Спасибо сказали:
lazhu
Сообщения: 70
ОС: FreeBSD 9-STABLE / clang 3.3
Контактная информация:

Re: проброс порта с адресом

Сообщение lazhu »

demsl писал(а):
12.08.2013 15:03
lazhu писал(а):
12.08.2013 15:01
А редиректить http-запросы из корня в какую-либо директорию можно разными способами, но силами уже самого веб-сервера.

можно с примерами, пожалуйста?

ну например, положить в корень такой вот index.php:

Код: Выделить всё

<?php
header("Location: /folder");
?>

и прописать его в DocumentRoot DirectoryIndex

или подключить mod_rewrite и прописать в DocumentRoot или .htaccess:

Код: Выделить всё

RewriteEngine on
RewriteRule   ^/$  /folder/  [R]
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 20794
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: проброс порта с адресом

Сообщение Bizdelnick »

demsl писал(а):
12.08.2013 14:51
нет, сугубо описанное выше вэб-приложение

Тогда к чему такие сложности? Или просто пробросьте 80 порт, или дополнительно прописать DocumentRoot, если нужно, чтобы путь к приложению не включал "/folder".
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
Аватара пользователя
demsl
Сообщения: 207
Статус: sl

Re: проброс порта с адресом

Сообщение demsl »

если просто пробросить 80-й, то будем попадать на 192.168.1.5, а нужно именно на 192.168.1.5/folder
DocumentRoot - спасибо, буду пробовать
Спасибо сказали:
Аватара пользователя
demsl
Сообщения: 207
Статус: sl

Re: проброс порта с адресом

Сообщение demsl »

подправил DocumentRoot, в итоге получил ошибки типа
Warning: main(/usr/home/www/docs/rrr/rrr/a/e/class.TemplatePower.inc.php): failed to open stream: No such file or directory in /usr/home/www/docs/rrr/index.php on line 0


:unsure:
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 20794
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: проброс порта с адресом

Сообщение Bizdelnick »

demsl писал(а):
12.08.2013 15:37
подправил DocumentRoot, в итоге получил ошибки типа

Ну так конфиг-то покажите.
Хотя не исключено, что проблема в первоначальной настройке CMS (у Вас там Drupal, что ли?). В таком случае надо в ней исправить базовый URL.
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
Аватара пользователя
demsl
Сообщения: 207
Статус: sl

Re: проброс порта с адресом

Сообщение demsl »

конфиг апача?
нет, там самописная система
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 20794
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: проброс порта с адресом

Сообщение Bizdelnick »

demsl писал(а):
12.08.2013 15:55
конфиг апача?

Да, который Вы правили.
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
Аватара пользователя
demsl
Сообщения: 207
Статус: sl

Re: проброс порта с адресом

Сообщение demsl »

Код:

ServerType standalone ServerRoot "/usr/local" PidFile /var/run/httpd.pid ScoreBoardFile /var/run/httpd.scoreboard Timeout 300 KeepAlive On MaxKeepAliveRequests 100 KeepAliveTimeout 15 MinSpareServers 5 MaxSpareServers 10 StartServers 5 MaxClients 150 MaxRequestsPerChild 0 BindAddress * LoadModule mmap_static_module libexec/apache/mod_mmap_static.so LoadModule vhost_alias_module libexec/apache/mod_vhost_alias.so LoadModule env_module libexec/apache/mod_env.so LoadModule config_log_module libexec/apache/mod_log_config.so LoadModule mime_magic_module libexec/apache/mod_mime_magic.so LoadModule mime_module libexec/apache/mod_mime.so LoadModule negotiation_module libexec/apache/mod_negotiation.so LoadModule status_module libexec/apache/mod_status.so LoadModule info_module libexec/apache/mod_info.so LoadModule includes_module libexec/apache/mod_include.so LoadModule autoindex_module libexec/apache/mod_autoindex.so LoadModule dir_module libexec/apache/mod_dir.so LoadModule cgi_module libexec/apache/mod_cgi.so LoadModule asis_module libexec/apache/mod_asis.so LoadModule imap_module libexec/apache/mod_imap.so LoadModule action_module libexec/apache/mod_actions.so LoadModule alias_module libexec/apache/mod_alias.so LoadModule rewrite_module libexec/apache/mod_rewrite.so LoadModule access_module libexec/apache/mod_access.so LoadModule auth_module libexec/apache/mod_auth.so LoadModule cern_meta_module libexec/apache/mod_cern_meta.so LoadModule expires_module libexec/apache/mod_expires.so LoadModule headers_module libexec/apache/mod_headers.so LoadModule usertrack_module libexec/apache/mod_usertrack.so LoadModule log_forensic_module libexec/apache/mod_log_forensic.so LoadModule unique_id_module libexec/apache/mod_unique_id.so LoadModule setenvif_module libexec/apache/mod_setenvif.so LoadModule php4_module libexec/apache/libphp4.so ClearModuleList AddModule mod_mmap_static.c AddModule mod_vhost_alias.c AddModule mod_env.c AddModule mod_log_config.c AddModule mod_mime_magic.c AddModule mod_mime.c AddModule mod_negotiation.c AddModule mod_status.c AddModule mod_info.c AddModule mod_include.c AddModule mod_autoindex.c AddModule mod_dir.c AddModule mod_cgi.c AddModule mod_asis.c AddModule mod_imap.c AddModule mod_actions.c AddModule mod_alias.c AddModule mod_rewrite.c AddModule mod_access.c AddModule mod_auth.c AddModule mod_cern_meta.c AddModule mod_expires.c AddModule mod_headers.c AddModule mod_usertrack.c AddModule mod_log_forensic.c AddModule mod_unique_id.c AddModule mod_so.c AddModule mod_setenvif.c AddModule mod_php4.c ExtendedStatus On Port 80 User www Group www ServerAdmin webmaster@site.ua ServerName site.ua DocumentRoot "/usr/home/www/docs" <Directory /> Options FollowSymLinks AllowOverride None </Directory> <Directory "/usr/home/www/docs"> Options All AllowOverride All Order allow,deny Allow from all </Directory> <IfModule mod_userdir.c> UserDir public_html </IfModule> <IfModule mod_dir.c> DirectoryIndex index.php index.phtml index.shtml index.php3 index.html index.htm </IfModule> AccessFileName .htaccess <Files ~ "^\.ht"> Order allow,deny Deny from all Satisfy All </Files> <Files ~ "\.(cfg|cf)$"> Order allow,deny Deny from all Satisfy All </Files> UseCanonicalName On <IfModule mod_mime.c> TypesConfig /usr/local/etc/apache/mime.types </IfModule> DefaultType text/plain <IfModule mod_mime_magic.c> MIMEMagicFile /usr/local/etc/apache/magic </IfModule> HostnameLookups Off ErrorLog /var/log/httpd-error.log LogLevel warn 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 CustomLog /var/log/httpd-access.log combined ServerSignature On <IfModule mod_alias.c> Alias /icons/ "/usr/local/www/icons/" <Directory "/usr/local/www/icons"> <Directory "/usr/local/www/icons"> Options Indexes MultiViews AllowOverride None Order allow,deny Allow from all </Directory> # This Alias will project the on-line documentation tree under /manual/ # even if you change the DocumentRoot. Comment it if you don't want to # provide access to the on-line documentation. # Alias /manual/ "/usr/local/share/doc/apache/" <Directory "/usr/local/share/doc/apache"> Options Indexes FollowSymlinks MultiViews AllowOverride None Order allow,deny Allow from all </Directory> # # ScriptAlias: This controls which directories contain server scripts. # ScriptAliases are essentially the same as Aliases, except that # documents in the realname directory are treated as applications and # run by the server when requested rather than as documents sent to the clien t. # The same rules about trailing "/" apply to ScriptAlias directives as to # Alias. # ScriptAlias /cgi-bin/ "/usr/local/www/cgi-bin/" # # "/usr/local/www/cgi-bin" should be changed to whatever your ScriptAliased # CGI directory exists, if you have that configured. # <Directory "/usr/local/www/cgi-bin"> AllowOverride None Options None Order allow,deny Allow from all </Directory> </IfModule> <IfModule mod_autoindex.c> # # FancyIndexing is whether you want fancy directory indexing or standard # IndexOptions FancyIndexing # # AddIcon* directives tell the server which icon to show for different # files or filename extensions. These are only displayed for # FancyIndexed directories. # AddIconByEncoding (CMP,/icons/compressed.gif) x-compress x-gzip AddIconByType (TXT,/icons/text.gif) text/* AddIconByType (IMG,/icons/image2.gif) image/* AddIconByType (SND,/icons/sound2.gif) audio/* AddIconByType (VID,/icons/movie.gif) video/* AddIcon /icons/binary.gif .bin .exe AddIcon /icons/binhex.gif .hqx AddIcon /icons/tar.gif .tar AddIcon /icons/world2.gif .wrl .wrl.gz .vrml .vrm .iv AddIcon /icons/compressed.gif .Z .z .tgz .gz .zip AddIcon /icons/a.gif .ps .ai .eps AddIcon /icons/layout.gif .html .shtml .htm .pdf AddIcon /icons/text.gif .txt AddIcon /icons/c.gif .c AddIcon /icons/p.gif .pl .py AddIcon /icons/f.gif .for AddIcon /icons/dvi.gif .dvi AddIcon /icons/uuencoded.gif .uu AddIcon /icons/script.gif .conf .sh .shar .csh .ksh .tcl AddIcon /icons/tex.gif .tex AddIcon /icons/bomb.gif core AddIcon /icons/back.gif .. AddIcon /icons/hand.right.gif README AddIcon /icons/folder.gif ^^DIRECTORY^^ AddIcon /icons/blank.gif ^^BLANKICON^^ # # DefaultIcon is which icon to show for files which do not have an icon # explicitly set. # DefaultIcon /icons/unknown.gif ReadmeName README.html HeaderName HEADER.html # # IndexIgnore is a set of filenames which directory indexing should ignore # and not include in the listing. Shell-style wildcarding is permitted. # IndexIgnore .??* *~ *# HEADER* README* RCS CVS *,v *,t </IfModule> AddType application/x-httpd-php .php .php3 .phtml # # AddType allows you to tweak mime.types without actually editing it, or to # make certain files to be certain types. # AddType application/x-tar .tgz # # AddEncoding allows you to have certain browsers uncompress # information on the fly. Note: Not all browsers support this. # Despite the name similarity, the following Add* directives have nothing # to do with the FancyIndexing customization directives above. # AddEncoding x-compress .Z AddEncoding x-gzip .gz .tgz # # If the AddEncoding directives above are commented-out, then you # probably should define those extensions to indicate media types: # #AddType application/x-compress .Z #AddType application/x-gzip .gz .tgz # # AddHandler allows you to map certain file extensions to "handlers", # actions unrelated to filetype. These can be either built into the server # or added with the Action command (see below) # # If you want to use server side includes, or CGI outside # ScriptAliased directories, uncomment the following lines. # # To use CGI scripts: # #AddHandler cgi-script .cgi # # To use server-parsed HTML files # AddType text/html .shtml AddHandler server-parsed .shtml # # Uncomment the following line to enable Apache's send-asis HTTP file # feature # #AddHandler send-as-is asis </IfModule> <IfModule mod_setenvif.c> # # The following directives modify normal HTTP response behavior. # The first directive disables keepalive for Netscape 2.x and browsers that # spoof it. There are known problems with these browser implementations. # The second directive is for Microsoft Internet Explorer 4.0b2 # which has a broken HTTP/1.1 implementation and does not properly # support keepalive when it is used on 301 or 302 (redirect) responses. # BrowserMatch "Mozilla/2" nokeepalive BrowserMatch "MSIE 4\.0b2;" nokeepalive downgrade-1.0 force-response-1.0 # # The following directive disables HTTP/1.1 responses to browsers which # are in violation of the HTTP/1.0 spec by not being able to grok a # basic 1.1 response. # BrowserMatch "RealPlayer 4\.0" force-response-1.0 BrowserMatch "Java/1\.0" force-response-1.0 BrowserMatch "JDK/1\.0" force-response-1.0 </IfModule> <Location /server-status> SetHandler server-status Order deny,allow Deny from all Allow from localhost </Location> <Location /server-info> SetHandler server-info Order deny,allow Deny from all Allow from localhost </Location> <VirtualHost _default_:*> </VirtualHost> <VirtualHost IP.IP.IP.IP> ServerAdmin webmaster@site.ua DocumentRoot /usr/home/www/docs ServerName www.site.ua ServerAlias site.ua </VirtualHost>
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 20794
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: проброс порта с адресом

Сообщение Bizdelnick »

В .htaccess ничего не правили?
Вы выложили, как я понимаю, исходный конфиг? А с правками он как выглядит?
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
Аватара пользователя
demsl
Сообщения: 207
Статус: sl

Re: проброс порта с адресом

Сообщение demsl »

это рабочий конфиг
.htaccess в корневой директории не используется
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 20794
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: проброс порта с адресом

Сообщение Bizdelnick »

demsl писал(а):
12.08.2013 16:31
это рабочий конфиг

И как по нему угадать ошибку, которую Вы могли допустить, превратив его в нерабочий?
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
Аватара пользователя
demsl
Сообщения: 207
Статус: sl

Re: проброс порта с адресом

Сообщение demsl »

DocumentRoot изменил с "/usr/home/www/docs" на "/usr/home/www/docs/rrr"
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 20794
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: проброс порта с адресом

Сообщение Bizdelnick »

Если это единственное изменение, и никаких RewriteRule не добавлялось, то причина в этой вашей самописной системе. Понятия не имею, где там хранится базовый URL (в файле или в БД), но надо его исправить.
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
Аватара пользователя
demsl
Сообщения: 207
Статус: sl

Re: проброс порта с адресом

Сообщение demsl »

ясно. спасибо и на этом!
и в доплнение, если разберусь с вэб-приложением - rinetd и iptables одновременно работать умеют? (на случай частых изменений во внешних IP)
Спасибо сказали:
lazhu
Сообщения: 70
ОС: FreeBSD 9-STABLE / clang 3.3
Контактная информация:

Re: проброс порта с адресом

Сообщение lazhu »

Bizdelnick писал(а):
12.08.2013 16:50
Если это единственное изменение, и никаких RewriteRule не добавлялось, то причина в этой вашей самописной системе. Понятия не имею, где там хранится базовый URL (в файле или в БД), но надо его исправить.

Судя по
/usr/home/www/docs/rrr/rrr/a/e/class.TemplatePower.inc.php
, так оно и есть
Спасибо сказали:
Аватара пользователя
demsl
Сообщения: 207
Статус: sl

Re: проброс порта с адресом

Сообщение demsl »

кстати, пробросил 80-й, и при обращении на внешний_IP/folder перенаправляет сразу на IP_в_локалке/folder ))
всем спасибо за обсуждение!
Спасибо сказали:
Ответить