логин php с SSL - PullRequest
       1

логин php с SSL

1 голос
/ 04 февраля 2012

Я прочитал много вопросов о том, как войти в систему с помощью SSL и т. Д., Но идея все еще не ясна. Исходя из того, что я прочитал, мне нужно настроить SSL и установить его на своем веб-сервере, чтобы я мог использовать защищенное соединение https на странице, где будет использоваться логин. Хорошо, я выполнил эту часть, но все еще задаюсь вопросом, что включить в код входа в систему, чтобы весь сеанс должен быть через https. на некоторых сайтах упоминается, что я должен добавить этот код tep_href_link(FILENAME_ACCOUNT, '', 'SSL'), чтобы страница логина php или код были безопасными.

любые комментарии будут оценены.

Большое спасибо.

Обновление: Я считаю, что этот код очень важно добавить, чтобы страница входа в систему шла по https. if(!isset($_SERVER['HTTPS'])) { header("location: https://" . $_SERVER['SERVER_NAME'] . $_SERVER['REQUEST_URI']);<br> }

Ответы [ 2 ]

3 голосов
/ 04 февраля 2012

HTTPS представляет собой использование алгоритма для защиты транспортного уровня связи, который шифрует то, что браузер и сервер отправляют друг другу.Зашифрованная форма, отправляемая по сети, стоит дорого в вычислительном отношении, чтобы вернуться в исходное содержимое, если только тот, кто расшифровывает зашифрованный текст , не имеет парного закрытого ключа (или ... a «слабый в вычислительном отношении» алгоритм ).

Это точка-точка (клиент отправляет запрос на сервер, сервер принимает, определяет ответ, отправляет ответ), поэтому браузер и сервер сначала обмениваться открытыми ключами , которые представляют то, против чего данные, которые вы отправляете или получаете, будут "зашифрованы".Закрытый ключ хранится у эмитента открытого ключа, что позволяет этому компьютеру «расшифровывать» и получать исходное содержимое, которое было отправлено получателю.

Таким образом, при создании пары секретный / открытый ключ закрытый ключхранится (конфиденциально и в тайне) на сервере, а соответствующий открытый ключ отправляется в браузер.Кроме того, браузер делает то же самое и передает открытый ключ на сервер.

«Защита» конфиденциальной информации - это еще не все;Вы также можете использовать SSL / TLS, например, для предотвращения подделки данных или даже в качестве дополнительного шага проверки.

Чтобы настроить HTTPS и сделать его доступным для использования, вам необходимо:

  1. Получить открытый / закрытый ключ (подпись с помощью центра сертификации или CA потенциально необязательна в зависимости отна ваших конечных пользователей).
  2. Установите его в хранилище ключей на сервере, доступном для вашего веб-сервера.OpenSSL используется для обоих этих шагов во многих случаях.
  3. Настройте вашу систему на использование URL-адресов HTTPS (для всех ресурсов, а не только для <form action="https://..."> s).

Парапримечания:

  • Браузеры имеют свои собственные сертификаты, так что не беспокойтесь об этом.
  • Многие CMS и инфраструктуры позволяют указывать HTTPS на уровне приложений

Вы можете использовать WireShark , чтобы проверить, что ваш компьютер на самом деле отправляет и получает.Это может быть очень полезным, особенно в сочетании с просмотром запроса / ответа на консолях Firebug или Chrome Net.

В онлайновом руководстве по PHP есть OpenSSL «книга».Вот пример того, как CodeIgniter обрабатывает настройку HTTPS на уровне приложения .

Существуют различные учебные пособия по настройке SSL в стеке LAMP.Вот руководство по WAMP2 HTTPS и настройке SSL , если вам просто нужна среда разработки.

Если у вас есть среда общего хостинга, вы не сможете самостоятельно выполнить настройку SSL на сервере;это может быть обработано администратором сервера.Посоветуйтесь с вашим хозяином.DreamHost, например, имеет расширенные документы .

1 голос
/ 04 февраля 2012

Хм, в быстром Google, эта функция (tep_href_link), кажется, является частью osCommerce. Если на вашем сайте правильно настроен SSL-сертификат, подгонка пользователей по URL-адресу https должна быть в порядке. Если вы не знаете, как это сделать, посмотрите заголовки Location или mod_rewrite.

Кроме того, кроме того, вам нужно будет убедиться, что все ссылки на странице проходят через https. Это увеличит вероятность получения зеленой блокировки или w / e, когда пользователь заходит на страницу, предполагая, что сертификат не является самоподписанным.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...