Назад | Перейти на главную страницу

как защитить свой сервер от хакеров

сервер нашего веб-сайта в последнее время часто взламывали. как я могу его защитить

  • Получите грамотного админа. Наемный, то есть.

  • Увольняйте своих некомпетентных разработчиков и нанимайте компетентных.

Что это за сервер? (Windows / Unix?) Размещается ли он удаленно? Какие приложения запущены? Вы используете дурацкие пароли? Вы используете брандмауэр?

Сейчас достаточно информации, чтобы даже начать вам помогать!

Платите кому-нибудь, кто сделает это за вас.

Я могу дать три предложения: 1. По возможности используйте нестандартные порты. Например, пусть ssh использует порт 3456, а удаленный рабочий стол - 4567. 2. Используйте длинные пароли. 3. Пусть программа прослушивает стандартный порт, такой как порт 80 или порт 21. Когда кто-то подключается к этому порту, запишите IP-адрес и запретите им доступ ко всему серверу.

Вот пример веб-страницы raspberry pi php, прослушивающей порт 80 и запрещающей любому, кто подключается к нему с помощью iptables:

Чтобы запустить iptables с php, добавьте в / etc / sudoers www-data ALL = (ALL) NOPASSWD следующее: / sbin / iptables

<?php
// Get the ip address of the client.
$remote_addr = $_SERVER['REMOTE_ADDR'];
// Ban them.
if (is_ip($remote_addr)) {
    ban_ip($remote_addr);
    // Save the banned IP address.
    $logfile = '/run/shm/banned.txt';
    file_put_contents($logfile,$remote_addr."\n",FILE_APPEND);
}
// Returns true if $ip is a valid ip address.
function is_ip($ip)
{
    $count = strlen($ip);
    $valid = '0123456789.:';
    for($loop=0;$loop<$count;$loop++) {
        if (strpos($valid,substr($ip,$loop,1))===false) {
            return false;
        }
    }
    return true;
}
// Bans an ip address.
function ban_ip($ip)
{
    $cmd = 'sudo /sbin/iptables -A INPUT -s ' . $ip . ' -j DROP';
    exec($cmd);
    return;
}
?>