Недавно я установил узел на свой VPS и попытался пройти обучение. Я сохранил этот код в server.js и нажал node server.js в замазке. Я получил мгновенный «бан» с моего VPS, я не могу получить к нему доступ, но на других компьютерах могу.
var net = require('net');
var server = net.createServer(function (socket) {
console.log("Connection from " + socket.remoteAddress);
socket.end("Hello World\n");
});
server.listen(7000, "localhost");
console.log("TCP server listening on port 7000 at localhost.");
Связана ли эта проблема с брандмауэром серверов? Что я могу сделать, чтобы решить эту проблему?
Без дополнительной информации о вашей платформе рассуждать сложно. Однако, если вы можете подключиться по SSH с другого компьютера, проверьте правила iptables с помощью iptables -L
как корень. Вы можете увидеть правила в цепочке fail2ban или что-то в этом роде, которые относятся к IP-адресу вашего компьютера. Они заканчиваются на DROP или REJECT, и это будут правила, которые вам нужно удалить, чтобы восстановить доступ к вашему ящику.
Чтобы очистить их, сначала вам понадобится номер строки правила, которое вы хотите удалить; проходить iptables -L --line-numbers
чтобы увидеть это. Вы увидите что-то вроде этого:
Chain INPUT (policy ACCEPT)
num target prot opt source destination
1 REJECT all -- <some-ip> anywhere
Тогда ты можешь сделать iptables --delete INPUT 1
, что удалит правило в моем примере.