Другими словами, я хочу видеть, как сервер выглядит снаружи, когда у меня нет доступа к другой машине для сканирования его. Позвольте мне дать пример:
Случай 1: Когда я - SSH, подключенный к моему VPS, который является Сервером Ubuntu, результат сканирования портов похож:
user@77.77.77.70:~$ nmap -p 1-20000 77.77.77.70
Nmap scan report for 77.77.77.70
PORT STATE SERVICE
25/tcp open smtp
80/tcp open http
111/tcp open rpcbind
443/tcp open https
8142/tcp open unknown
11273/tcp open unknown
18142/tcp open unknown
18143/tcp open unknown
18144/tcp open unknown
18145/tcp open unknown
18146/tcp open unknown
18147/tcp open unknown
Nmap done: 1 IP address (1 host up) scanned in 0.36 seconds
Случай 2: Когда я выполняю ту же команду от своей Настольной машины Ubuntu, результат фильтрован брандмауэром VPS, и это похоже:
user@Desktop:~$ sudo nmap -p 1-20000 77.77.77.70
Nmap scan report for 77.77.77.70
PORT STATE SERVICE
80/tcp open http
443/tcp open https
11273/tcp open unknown
Nmap done: 1 IP address (1 host up) scanned in 4298.23 seconds
Так, мой вопрос: существует ли способ достигнуть результата как в 'Случае 2' от самого VPS? Используя nmap
не обязательно.
Короткий ответ: нет, Вы не видите, как Ваш сервер выглядит с внешней стороны путем взгляда с внутренней части.
ответ Long: Как Вы записали себя, сканирование с внешней стороны затронуто брандмауэром и возможно другими прошедшими сетевыми компонентами. В теории Вы могли моделировать то влияние посредством виртуальной сети, которую Вы настраиваете на своем VPS. Но это - большая работа, и необходимо было бы знать точно, что те компоненты и как они настроены. Единственный выполнимый подход должен найти внешний хост, от которого можно сделать сканирование.
Если у Вас нет брандмауэра, можно работать netstat -ln --inet --inet6
для списка сокетов слушания. Это покажет то, что слушает который интерфейсы.
Быстрый образец:
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 0.0.0.0:5298 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:1080 0.0.0.0:* LISTEN
Здесь мы видим два типа:
первый вид, слушая 0.0.0.0 или:: (любой IP), будет доступно удаленно, если firewalled. Сокеты слушая только на localhost (127.0.0.1 или:: 1) только достижимо через петлевой интерфейс, и таким образом не удаленно.
, Кроме того, у Вас могут быть сокеты, связанные с определенным интерфейсом, в этом случае IP интерфейса покажут в столбце 3, например, 192.168.8.1 - значение, что они доступны только в том интерфейсе.
Это не то же как сканирование портов, поскольку оно не принимает брандмауэр во внимание, но объединенный с чтением конфигурации брандмауэра, которую это может быть хороший способ сделать установку и только проверить через сканирование портов после конфигурирования брандмауэра.