Невозможно получить доступ к порту (на котором запущен Spring boot jar) через его публичный ip
Я развернул свой jar для весенней загрузки на сервере centos с помощью этой команды:
nohup java -jar black-0.0.1-SNAPSHOT.jar > log_black.out &
В моем application.properties я установил порт сервера следующим образом:
server.port=8181
Вот моя таблица IP:
Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
128 10070 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:8181
1007M 69G ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:443
17M 1155M ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:80
Теперь я могу получить доступ к этому порту с локальным IP-адресом (10.1.90.45:8181). Но я не могу получить к нему доступ через публичный IP-адрес. Что я должен делать?
1 ответ
Предполагая, что общедоступный IP-адрес доступен на компьютере, на котором размещается служба, проблема, вероятно, связана с конфигурацией, вы упомянули опцию server.port, для чего настроен server.address? Вероятно, это должно быть 0.0.0.0.
Я должен также упомянуть, что ваш брандмауэр там не делает много брандмауэров, вы должны изменить свою политику цепочки INPUT на DROP, таким образом она будет отбрасывать пакеты, которые не разрешены специально, а также добавить правило, разрешающее пакеты ICMP.