Потеря пропускной способности
Я установил Ubuntu Linux 11.10.
Моя пропускная способность израсходована.
С помощью nethogs eth0
показывает, что /usr/bin/python
отправляет и получает все время.
С помощью netstat -tup
показал, что адрес 48293.kwaimuk.canonical:https
использует мою пропускную способность.
Как я могу это остановить?
3 ответа
Это ubuntu-one
подключение к серверу Amazon компании canonical. kwaimuk.canonical.com
а также grape.canonical.com
Если вы не используете Ubuntu One, вы можете удалить его с помощью следующей команды
sudo apt-get remove ubuntuone-*
Источник: http://ubuntuforums.org/archive/index.php/t-1745621.html
Я на самом деле не знаю ответа на этот вопрос, но вот как я узнаю:
netstat
имеет -p
флаг, который покажет процесс / pid с открытым сетевым соединением. Так что ваши netstat -tup
Команда может быть улучшена до:
sudo netstat -tup | grep 48293.kwaimuk.canonical
(Вы должны быть пользователем root для работы -p). Последнее поле в строке должно быть PID. Если имя процесса просто говорит python, получите полное имя скрипта через:
ps auxw | grep PID
Теперь, надеюсь, у вас есть местоположение скрипта / программы, которая использует это соединение. Возможно что-то.
Найти какой пакет он находится через dpkg
:
dpkg -S /usr/local/bin/something.py
И теперь вы можете apt-get remove
оскорбительный пакет. Осторожно, как всегда, будьте осторожны, какие зависимости он также пытается удалить.
Проблема в том, что python может быть любым количеством приложений или даже фоновым скриптом. Например, если вы используете Screenlets, я считаю, что виджеты являются процессами Python. Вы не можете удалить Python, так как он отключил бы много важных приложений и скриптов. Если вы хотите остановить утечку трафика, попробуйте то, что я изложил в этом посте Google+: https://plus.google.com/118226948467140990198/posts/YZhZJCZmGgm
Версия TL;DR: блокировать весь трафик TCP/IP, за исключением трафика, создаваемого новой созданной вами группой. Затем откройте оболочку с доступом к этой группе, и доступ к Интернету получат только те приложения, которые вы запускаете из этой оболочки. Сначала создайте группу:
sudo groupadd internet
Теперь сохраните это в скрипт и запустите, когда вы хотите контролировать пропускную способность:
#!/bin/sh
# Firewall apps - only allow apps run from "internet" group to run
# clear previous rules
sudo iptables -F
# accept packets for internet group
sudo iptables -A OUTPUT -p tcp -m owner --gid-owner internet -j ACCEPT
# also allow local connections
sudo iptables -A OUTPUT -p tcp -d 127.0.0.1 -j ACCEPT
sudo iptables -A OUTPUT -p tcp -d 192.168.0.1/24 -j ACCEPT
# reject packets for other traffic
sudo iptables -A OUTPUT -p tcp -j REJECT
# open a shell with internet access
sudo -g internet -s
Возможно, вам придется изменить бит "192.68.0.1/24" в соответствии с вашей локальной сетью. Теперь вы получите оболочку, из которой у всех запускаемых вами приложений (например, Firefox) будет доступ в Интернет. Приложения по-прежнему будут работать под вашим именем пользователя. Все другие приложения будут заблокированы (если они не имеют постоянного соединения, в этом случае вам нужно будет убить эти процессы).