Добрый день!
Cистема CentOs_6.5_x64.
Есть сайт который работает то на http то на https, это зависит от ряда причин.
Хотелось бы что бы при доступе на https://site.ru и на http://site.ru доступ всегда осуществлялся, как такое организовать при помощи iptables?
Само приложение запущенно на 8000 порту, но это не существенно, можно запустить на любом другом порту.
Сейчас попробовал так:
iptables -A PREROUTING -t nat -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 8000
iptables -A PREROUTING -t nat -i eth0 -p tcp --dport 443 -j REDIRECT --to-port 8000
iptables -t mangle -A PREROUTING -i eth0 -p tcp --dport 8000 -j MARK --set-mark 1
iptables -I INPUT -i eth0 -m mark --mark 1 -j DROP
iptables -A INPUT -i eth0 -p tcp --dport 8000 -j ACCEPT
При таком раскладе имею доступ на https, на 80 порт доступа нет.
как такое организовать при помощи iptables?Только при помощи iptables это организовать невозможно.
> как такое организовать при помощи iptables?
> Только при помощи iptables это организовать невозможно.А что еще для этого можно использовать?
Что-то я сильно сомневаюсь, что приложение может на одном сокете и HTTP и HTTPS одновременно обслуживать. Откуда ты взял такую идею?
> Что-то я сильно сомневаюсь, что приложение может на одном сокете и HTTP
> и HTTPS одновременно обслуживать. Откуда ты взял такую идею?Приложение пока работает в тестовом режиме и частенько с SSL.
В дальнейшем приложение будет работать на HTTPS но чтобы посетители не заморачивались с вводом адреса нужно с 80 порта и перенаправлять на https.
>> Что-то я сильно сомневаюсь, что приложение может на одном сокете и HTTP
>> и HTTPS одновременно обслуживать. Откуда ты взял такую идею?
> Приложение пока работает в тестовом режиме и частенько с SSL.
> В дальнейшем приложение будет работать на HTTPS но чтобы посетители не заморачивались
> с вводом адреса нужно с 80 порта и перенаправлять на https.Так это легко на апаче делается.
>>> Что-то я сильно сомневаюсь, что приложение может на одном сокете и HTTP
>>> и HTTPS одновременно обслуживать. Откуда ты взял такую идею?
>> Приложение пока работает в тестовом режиме и частенько с SSL.
>> В дальнейшем приложение будет работать на HTTPS но чтобы посетители не заморачивались
>> с вводом адреса нужно с 80 порта и перенаправлять на https.
> Так это легко на апаче делается.
<VirtualHost *:80>
ServerAdmin webmaster@dummy-host.example.com
RedirectMatch temp .* https://1.2.3.4/somepath
ServerAlias *
ServerName any.domain.ru
</VirtualHost>подробнее - смотри доки по апачу RedirectMatch, там можно всяко извращаться.
>
> <VirtualHost *:80>
> ServerAdmin webmaster@dummy-host.example.com
> RedirectMatch temp .* https://1.2.3.4/somepath
> ServerAlias *
> ServerName any.domain.ru
> </VirtualHost>
>Или
<VirtualHost *:80>
ServerName my_wellknown_public_name.com
Redirect permanent / https://my_new_secure_site.com/
</VirtualHost>