Можно подключить модем непосредственно к компьютеру и заставить маршрутизатор так отправить весь трафик через debian систему. В этом случае можно сделать что-либо, что Вы хотите с пакетами.
P.S.: Вам нужно что-то вроде этого?
Я использую Сквид в качестве прокси-сервера и Stunnel как обертка SSL. Это имеет очень хорошую производительность из-за кэширования.
После установки Сквида следуйте Документации Сквида и настройте его. Вот демонстрационная конфигурация:
http_port 3193 transparent cache_dir ufs /var/cache/squid 128 16 128 cache_mem 1 MB maximum_object_size_in_memory 512 KB maximum_object_size 1 MB visible_hostname hostname.com hierarchy_stoplist cgi-bin ? refresh_pattern ^ftp: 1440 20% 10080 refresh_pattern ^gopher: 1440 0% 1440 refresh_pattern -i (/cgi-bin/|\?) 0 0% 0 refresh_pattern . 0 20% 4320 acl manager proto cache_object acl localhost src 127.0.0.1/32 ::1 acl to_localhost dst 127.0.0.0/8 0.0.0.0/32 ::1 acl localnet src 10.0.0.0/8 # RFC 1918 possible internal network acl localnet src 172.16.0.0/12 # RFC 1918 possible internal network acl localnet src 192.168.0.0/16 # RFC 1918 possible internal network acl localnet src fc00::/7 # RFC 4193 local private network range acl localnet src fe80::/10 # RFC 4291 link-local (directly plugged) machines acl SSL_ports port 443 acl Safe_ports port 80 # http acl Safe_ports port 21 # ftp acl Safe_ports port 443 # https acl Safe_ports port 70 # gopher acl Safe_ports port 210 # wais acl Safe_ports port 1025-65535 # unregistered ports acl Safe_ports port 280 # http-mgmt acl Safe_ports port 488 # gss-http acl Safe_ports port 591 # filemaker acl Safe_ports port 777 # multiling http acl CONNECT method CONNECT auth_param basic program /usr/libexec/squid/pam_auth auth_param basic children 5 auth_param basic realm Squidy auth_param basic credentialsttl 4 hours acl password proxy_auth REQUIRED http_access allow manager http_access deny !Safe_ports http_access deny CONNECT !SSL_ports http_access allow password http_access allow localhost http_access allow localnet http_access deny all via off forwarded_for off request_header_access Allow allow all request_header_access Authorization allow all request_header_access WWW-Authenticate allow all request_header_access Proxy-Authorization allow all request_header_access Proxy-Authenticate allow all request_header_access Cache-Control allow all request_header_access Content-Encoding allow all request_header_access Content-Length allow all request_header_access Content-Type allow all request_header_access Date allow all request_header_access Expires allow all request_header_access Host allow all request_header_access If-Modified-Since allow all request_header_access Last-Modified allow all request_header_access Location allow all request_header_access Pragma allow all request_header_access Accept allow all request_header_access Accept-Charset allow all request_header_access Accept-Encoding allow all request_header_access Accept-Language allow all request_header_access Content-Language allow all request_header_access Mime-Version allow all request_header_access Retry-After allow all request_header_access Title allow all request_header_access Connection allow all request_header_access Proxy-Connection allow all request_header_access User-Agent allow all request_header_access Cookie allow all request_header_access All deny all
Это слушает порт 3193 tcp
. Затем кэширование опций происходит, Некоторые команды acl и auth_param
для аутентификации PAM (Вы, вероятно, не хотите открытый прокси и потеряли Ваш VPS для отчетов о спаме). request_header_access
строки не требуются. Они дают Вам лучшую анонимность.
Установите stunnel на сервере. Вот демонстрационная конфигурация:
setuid = stunnel setgid = stunnel CAfile = /etc/stunnel/certs.pem CRLfile = /etc/stunnel/crls.pem [proxy] accept = 8888 connect = 127.0.0.1:3193
Вероятно, файлы сертификации сделаны на stunnel установке. регистрируйте путь к файлу CAfile
. Это просто слушает порт 8888 tcp
и перенаправления дешифровали поток к Сквиду. Так позвольте быть уверенными, что это достижимо:
iptables -I INPUT 1 -p tcp --dport 8888 -j ACCEPT
Вам не нужно к порту прослушивания сквида быть миром, достижимым больше.
Установите stunnel на своей локальной машине и измените эту конфигурацию на Ваши потребности:
setuid = stunnel setgid = stunnel pid = /var/run/stunnel/stunnel.pid [poxy] accept = 8123 connect = server_ip:8888 client = yes libwrap = no
Замените server_ip соответствующим значением. затем запустите Сквид на сервере и Stunnel на клиенте и сервере. прокси набора как localhost:8123
в Вашем браузере. Если все работает, Вам нужно предложить имя пользователя и пароль.
Действительно ли https сервер является апачским? Я не полностью понимаю Вашей ситуации, но если у Вас есть mod_proxy, Вы могли бы способный сделать то, что Вы хотите.
Я ничего никогда не настраивал на виртуальном хосте, но вот некоторая информация об общем HTTPS:
HTTPS использует комбинацию HTTP и SSL (см. статью Википедии здесь: http://en.wikipedia.org/wiki/HTTP_Secure). HTTPS не является действительно своим собственным протоколом серовато-синий, а скорее нормальный HTTP, работающий на туннеле SSL.
HTTPS использует CA (Сертификат Authories) и PKI (Инфраструктура открытых ключей), чтобы гарантировать, что пользователи могут 'доверять' сайту. Необходимо создать сертификат открытых ключей для веб-сервера, и это должно быть подписано доверяемым CA (таким как VeriSign). Для получения доверяемого сертификата, это может стоить Вам ежегодной платы для поддержания.
Если Вы не пройдете доверяемый CA, то пользователи получат предупреждение, когда они попытаются соединиться с Вашим сайтом. Это часто может времена приводить пользователей отклоняться от Вашего сайта, потому что они могли бы рассматривать его как угрозу безопасности.
Кроме того, имейте в виду, что, в то время как HTTP использует порт 80 по умолчанию, HTTPS использует 443 поэтому, если у Вас есть какое-либо перенаправление портов/, порт, блокирующий Вас, должен будет гарантировать, что это открыто, чтобы Вы соединились. Для использования HTTPS, необходимо будет также удостовериться, чтобы Вы ввели его в URL, когда Вы перейдете на сайт, иначе он, вероятно, примет значение по умолчанию к использованию HTTP.
Править: Вот хорошее введение в то, как HTTPS работает: http://securityworkshop.blogspot.com/2009/01/how-httpsssl-works-part-1-basics.html
Я делаю что-то вроде этого использование OpenVPN. Мой ноутбук и сотовый телефон могут соединиться с моим сервером дома с помощью SSL по соединению TCP на порте 443. Это действительно полезно, когда я в тяжелых местах, которые не позволяют Вам использовать любые порты, кроме того, 80 и 443. Вот простая конфигурация, которая выполняет это на сервере:
port 443
proto tcp
dev tun
server 10.44.3.0 255.255.255.0
ca ca.crt
cert cloud.crt
key cloud.key
dh dh2048.pem
script-security 2
push "redirect-gateway"
Затем Вы говорите серверу выполнять NAT на пакетах, прибывающих из клиентов VPN:
iptables -t nat -A POSTROUTING -s 10.44.3.0/24 -o eth0 -j MASQUERADE
После того, как я подключусь, сетевой маршрут на моем портативном устройстве похож на это:
briankb@ubuntu:~$ route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 10.94.0.9 0.0.0.0 UG 0 0 0 tun0
192.79.68.0 0.0.0.0 255.255.255.128 U 1 0 0 eth0
10.94.0.1 10.94.0.9 255.255.255.255 UGH 0 0 0 tun0
10.94.0.9 0.0.0.0 255.255.255.255 UH 0 0 0 tun0
121.119.173.12 192.79.68.1 255.255.255.255 UGH 0 0 0 eth0
Первая строка говорит, что шлюз по умолчанию клиента является сервером VPN, таким образом, весь трафик отправляется по нему. Следующая строка является подсетью, которую я в настоящее время использую (Wi-Fi колледжа). Третья и четвертая строка является подсетью/маршрутом VPN, и последняя строка говорит, используют текущий интерфейс глобальной сети для отправки пакетов в сервер VPN.
Для получения инструкций относительно установки OpenVPN посмотрите, Как вести.
Мой магический кристалл говорит, что необходимо смотреть на http://www.stunnel.org/static/stunnel.html
В случае, если шар является неправильным, он не причинит боль так или иначе.
Просто включите HTTPS и mod_alias
в Apache, и добавляют правило перенаправления как следующее:
<VirtualHost *:80>
.
.
.
Redirect permanent / https://yoursite.com/
</VirtualHost>
Конфигурация по умолчанию варьируется между Ose/дистрибутивами, таким образом, я не могу быть более конкретным, чем это. Лучше указать Вашу ОС и версии программного обеспечения по вопросам, таким образом, можно получить лучшие ответы ;-).
Соединитесь со своим сервером через SSH и настройте перенаправление портов: ssh -L 80:localhost:80 username@hostname
. Удаленный порт 80 (Ваш веб-сервер) будет туннелирован по SSH Вам порт ПК 80. Теперь укажите на свой браузер на http://localhost/
Вам, вероятно, придется расширить строку в Вашем/etc/hosts файле: 127.0.0.1 имени хоста