В IIS 7 появилась замечательная фича, которая позволяет прямо в IIS создавать самоподписанные сертификаты.
Такие сертификаты имеют ряд ограничений:
1. Имя домена, на который они распространяются - всегда имя машины;
2. Сертификат действителен только неделю;
3. Никакой браузер не будет доверять такому сертификату, пока явно ему это не укажете.
Все эти ограничения можно при желании обойти (см. ссылку), но они, на мой взгляд, не очень существенны и локальным задачам не мешают.
Чтобы воспользоваться самоподписанными сертификатами, нужно посмотреть короткую видеоинструкцию. Видео показывает не только как работать с самоподписанными сертификатами, но и с сертификатами в целом. Поэтому если интересуют лишь самоподписанные, нужно просто проделать следующее:
1. Запустите IIS Manager;
2. В настройках на серверном уровне выбрать Server Certificates;
3. Нажать Create Self-Signed Certificate и создать сертификат;
4. В контекстном меню сайта выбрать Edit Bindings;
5. Задать созданный в п.3 сертификат для https запросов.
После выполнения этих действий может возникнуть ситуация, когда в IIS веб-сайт будет остановлен. При попытке его запуска IIS может ругаться: The process cannot access the file because it is being used by another process.
Причина этого в том, что при настройке Site Bindings, были указаны порты, которые уже используются другими программами.
Узнать какие порты какими программами используются можно с помощью команды netstat -ano, которая подскажет какой PID какой порт слушает. Затем, по PID можно узнать программу, которая занимает нужный порт.
В моем случае это был skype. Решил я эту проблему путем запрета skype работать с дефолтными http и https портами.