Способы и уловки, чтобы обезопасить веб-сайт / сделать его частным? [закрыто]

Я скоро запускаю веб-сайт, но я хочу, чтобы он был защищенным / закрытым для тестирования. Сейчас он находится в его реальном владении; Я уже добавил аутентификацию htaccess (с htpasswd). Я использую apache2 / Ubuntu 16.04

Я подумал об использовании a2dissite всякий раз, когда я закончу работу над ним в конце дня, так что даже невозможно получить доступ к домену / отобразить страница.

Я включил их в своем конфигурационном файле apache2:

ServerTokens Prod
ServerSignature Off 
TraceEnable off

и:

<Directory /var/www/html>
    Options -Indexes
</Directory>

Что еще можно сделать для повышения безопасности и даже сделать сайт полностью закрытым?

edit - Мне требовалась аутентификация через htaccess + htpasswd Кроме того, я забыл сказать, что это было сделано в первую очередь.

0
задан 26 July 2020 в 17:13
3 ответа

Я бы не стал a2dissite , поскольку он сделает VirtualHost по умолчанию для замены вашего доменного имени, которое уже указано на сервер в DNS, возможно влияет на ваше SEO. В дополнение к базовой аутентификации HTTP :

  • Вы можете ограничить доступ к IP-адресам или блокам, которые используются для создания сайта.
  • Я бы также принудительно использовал TLS с HSTS даже во время разработки .

Например,

<VirtualHost *:80>
    ServerName example.com
    Redirect permanent / https://example.com/
</VirtualHost>

<VirtualHost *:443>
    ServerName example.com

    SSLCertificateFile /etc/letsencrypt/live/example.com/fullchain.pem
    SSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pem

    <IfModule mod_headers.c>
        Header always set Strict-Transport-Security "max-age=63072000; includeSubDomains"
    </IfModule>

    <Location />
        <RequireAny>
            Require ip 192.0.2.100
            Require ip 198.51.100.0/24
        </RequireAny>
    </Location>
</VirtualHost>
1
ответ дан 4 January 2021 в 09:24

Из множества способов ограничения доступа, вот пример, который позволяет любому из

  • аутентифицированных пользователей, которые являются членами группы «my_valid_group»

  • ИЛИ с localhost : IP-адрес клиента 127.0.0.0/8 или :: 1 или тот же IP-адрес, что и у сервера

  • , ИЛИ от конкретного имени хоста (например, хоста динамического DNS), без необходимости в соответствующем обратном поиске, как описано в forward-dns

<Location />
  AuthType      Basic
  AuthName      "This requires user name and password"
  AuthUserFile  /etc/apache2/.htpasswd
  AuthGroupFile /etc/apache2/.htgroup

  # <RequireAny> # this is not needed: it's the default

  # users listed in AuthUserFile + in the group in AuthGroupFile
  Require group my_valid_group                   

  Require local                                  

  Require forward-dns myhost.dynamic.example.com

  # </RequireAny>
</Location>

Другие возможности:

1
ответ дан 4 January 2021 в 09:24

используйте netsparker , чтобы проверить некоторые основы, или вы можете просто нанять пентестера (дороже). Но есть бесплатные программы по борьбе с ошибками, вы можете просто разместить там свой веб-сайт и позволить пентестерам сообщать об уязвимостях. (Я думаю, что это немного рискованно, потому что вы не знаете, кто будет видеть вашу программу. Этичный хакер или просто ребенок, пытающийся нанести вред вашей системе).

0
ответ дан 4 January 2021 в 09:24

Теги

Похожие вопросы