Под Ubuntu на launchpad.net есть готовые пакеты, гораздо свежее чем в дистрибутиве.
При установке под 16.04 сервер зависимостей не потребовалось, качаем и ставим (х64):
wget http://ppa.launchpad.net/dajhorn/dante/ubuntu/pool/main/d/dante/dante-server_1.4.1-1_amd64.deb
правим конфиг: sudo nano /etc/danted.conf

logoutput: syslog
user.privileged: root
user.unprivileged: nobody

# The listening network interface or address.
# указываем сетевой интерфейс типа venet0:0 либо IP-интерфейса, на котором слушаем, и соответственно порт
# если он не стандарный 1080 (тогда можно не указывать)
internal: 123.123.1.1 port = 8010

# The proxying network interface or address.
# отсюда уходят пакеты, аналогично internal вписываем устройство или адрес
external: 123.123.1.1

# socks-rules determine what is proxied through the external interface.
# The default of «none» permits anonymous access.
socksmethod: username

# client-rules determine who can connect to the internal interface.
# The default of «none» permits anonymous access.
clientmethod: none

client pass {
from: 0.0.0.0/0 to: 0.0.0.0/0
log: connect disconnect error
}

socks pass {
from: 0.0.0.0/0 to: 0.0.0.0/0
log: connect disconnect error
}

создадим пользователя без группы, домашней директории и прав, чисто для авторизации:
sudo useradd socks5_user -M -N -s /sbin/nologin -p password

Напоследок
sudo service danted restart
и можно пользоваться.

Для отправки сообщений в Telegram посредством curl с использоваанием вышеописанного прокси, можно добавить несколько параметров в файл ~/.curlrc:

socks5 = 123.123.1.1:8010
proxy-user = user:password
user-agent = «Mozilla/5.0 (X11; Linux i686; rv:7.0.1) Gecko/20100101 Firefox/7.0.1» # это надо ли?

Возможность создавать ботов и наличие вэб-интерфейса в Telegram дает возможность очень просто реализовать отправку сообщений из Ubuntu (и конечно любого основанного на линукс дистрибутива) например с помощью команды curl. В заметке будет описано создание бота, чата, группы для рассылки и примеры использования простых скриптов: для определения и передачи внешнего ip адреса из локальной сети, а так-же оповещения отсутствия ответа на ping какого-либо хоста.
Создание бота:

Нужно найти в строке поиска клиентского приложения Telegram «прародителя» ботов @BotFather и начать с ним чат.

@BotFather

читать дальше

Он расскажет о себе и выведет список доступных команд:

telegram2

Просто кликнем на /newbot и дальше следуем предложенному Ботом диалогу:
Valery, [10.12.15 22:19] /newbot
BotFather, [10.12.15 22:19] Alright, a new bot. How are we going to call it? Please choose a name for your bot.
Valery, [10.12.15 22:23] My home bot
BotFather, [10.12.15 22:23] Good. Now let’s choose a username for your bot. It must end in `bot`. Like this, for example: TetrisBot or tetris_bot.
Valery, [10.12.15 22:23] Kononvaler_bot
BotFather, [10.12.15 22:23] Done! Congratulations on your new bot. You will find it at telegram.me/Kononvaler_bot. You can now add a description, about section and profile picture for your bot, see /help for a list of commands.
Use this token to access the HTTP API:
123456789:ABBC*********************b
For a description of the Bot API, see this page: https://core.telegram.org/bots/api

Бот теперь у нас есть,  очень важно знать токен бота 123456789:ABBC*********************b и конечно никому его не показывать.

Теперь нужно создать с ним общий чат.
Создаем любую удобную группу, например Test (название потом можно изменить) и добавляем туда нашего бота.

telegram4

 

Нажимаем на квадратик в строке поиска

и откроется диалог добавления группы.

 

 

 

 

 

После создания группы добавляем участником бота,

его не будет в списке контактов, но находим его через

поиск по имени.

 

 

 

Теперь нужно выяснить id чата, куда будем посылать сообщения.

Для этого можно зайти в Telegram через вэб-интерфейс, зайти в созданную группу Test

telegram7

 

и в строке адреса браузера увидим нужный нам id.

 

Попробовал, уже не получилось. Другой способ:

Создаем ссылку вида https://api.telegram.org/bot<<токен бота>>/getUpdates?offset=0 и переходим по ней

откроется страница с несколькими строками служебной инфо, для нас в данном случае бесполезной. Идем через приложение в искомый чат и посылаем какое-нибудь сообщение, например «Get id», затем обновляем страницу в браузере и видим там новое сообщение с искомым идентификатором:

"channel_post":{"message_id":2199,"chat":{"id":-1234567890,"title":"My ip","type":"channel"},"date":1489116818,"text":"Get id"}}]}

Если вдруг появилась в сообщении ошибка 409 — не может использовать данный запрос пока активен вэбхук error_code»:409,»description»:»Conflict: can’t use getUpdates method while webhook is active» (а я его не включал вроде ???)
то чтобы его отключить отправляем вот такой пустой запрос (после setWebhook должно быть значение, в данном случае его нет) https://api.telegram.org/bot<<токен бота>>/setWebhook

Создаем команду отправки сообщения от бота в группу вида:

curl -X POST "https://api.telegram.org/bot<<токен бота>>/sendMessage" -d "chat_id=-1234567890&text= TEst test "

отправляем из терминала и:

telegram8

 

 

 

 

Работает.

Создаем скрипт определения внешнего  ip :
nano my_ip.sh

#!/bin/bash

#путь к файлу с сохраненным адресом
IPFILE=/home/valery/my_script/address.ip

if [ -f «${IPFILE}» ]; then
# если файл существует, то читаем значение из старого файла
source «${IPFILE}»
fi
NEWIPADDR=$(curl -s kaktotak.org/ip.php |grep -Po ‘\d.*(?=\s)’)
if [[ (-z ${IPADDR+x}) || («${IPADDR}» != «${NEWIPADDR}»)]];
then
# отправляем в канал, для новой строки в тексте можно использовать %0A, либо явно использовать новую cтроку
CURL_RESULT=$(curl -X POST «https://api.telegram.org/bot12345678:ABC*******************b/sendMessage» -d «chat_id=-1234567890&text=
Адреса дома: %0A Transmission http://${NEWIPADDR}:9091
Сайт http://${NEWIPADDR}
Plex http://${NEWIPADDR}:32400/web/index.html»)
fi

Добавляем в cron проверять каждые 10 минут
crontab -e
*/10 * * * * /home/valery/my_script/my_ip.sh

Использование для оповещения из командной строки:

Добавляем следующие строки в .bash.rc

alias teleok=’curl -X POST «https://api.telegram.org/bot12345678:ABC*******************b/sendMessage» -d «chat_id=-1234567890&text= Готово! «‘
telesend() { curl -X POST «https://api.telegram.org/bot12345678:ABC*******************b/sendMessage» -d «chat_id=-1234567890&text=$@» ;}

теперь можно добавить оповещение к окончанию  какой-либо длительной задачи, например

cp dir1 dir2 && teleok   здесь после завершения копирования в группу придет сообщение Готово! 

если использовать функцию telesend то можно отправить любое произвольное сообщение:

telesend  ‘ Текст сообщения’