Autosshd: различия между версиями

Материал из Etersoft wiki
Перейти к навигацииПерейти к поиску
Строка 1: Строка 1:
== Пример использования ==
== Пример использования ==


Private ключ взял из скрипта etersoft_tunnel.sh и положил в
=== 1) Create config as /etc/autossh.d/example.com.conf.template ===
/var/lib/autosshd/.ssh/id_dsa.anyssh.a185


На сервере sshd у меня запущен на 32 порту. Положил в /etc/autossh.d следующий конфиг (anyssh.etersoft.conf):
Connection params
1 Set you remote host addres or ip
HOST=example.com
2 Create user
REMOTESSH_USER=_autossh
3 Copy user private id_dsa from $HOST to home anyssh/.ssh dir and check acess rights 600
REMOTE_KEY=/var/lib/autosshd/.ssh/id_dsa.$HOST.$REMOTESSH_USER


<pre>
Change port if need
AUTOSSH_LOGLEVEL=4
LOCAL_PORT=22 port that linstening sshd
AUTOSSH_POLL=120
REMOTE_PORT=10210 port for ssh comand on HOST $ ssh -p $REMOTE_PORT $REMOTESSH_USER@127.0.0.1
AUTOSSH_GATETIME=0
AUTOSSH_PORT=11210 monitoring local port (port+1 will used too, see man autossh)
AUTOSSH_DEBUG=yes.


AUTOSSH_PIDFILE=/var/run/autossh.d/anyssh.etersoft.pid
AUTOSTART=yes
AUTOSSH_LOCKFILE=anyssh.etersoft.lck
AUTOSSH_LOGFILE=/var/lib/autosshd/anyssh.etersoft.log


HOST=anyssh.eterhost.ru
Private ключ взял из скрипта etersoft_tunnel.sh и положил в
USER=_autossh
/var/lib/autosshd/.ssh/id_dsa.anyssh.a185
REMOTESSH_USER=a185
LOCAL_PORT=32
REMOTE_PORT=10185
REMOTE_KEY=/var/lib/autosshd/.ssh/id_dsa.anyssh.a185
AUTOSSH_PORT=11185
 
MANUAL=no
 
AUTOSSH_OPTIONS=" -M ${AUTOSSH_PORT} -R ${REMOTE_PORT}:localhost:${LOCAL_PORT} -f ${REMOTESSH_USER}@${HOST} -i ${REMOTE_KEY}"
</pre>
 
====================================
У пользователя соответственно такие настройки:
 
Host server-gate
    User a185
    Port 22
    HostName anyssh.eterhost.ru
    IdentityFile /home/pv/.ssh/id_dsa.anyssh.a185
    LocalForward localhost:32113 localhost:10185
    Compression yes
    ForwardAgent yes
 
Host server
    User pv
    Port 32113
    HostName localhost
    Compression yes
    ForwardAgent yes
 
а скрипт для запуска autossh от пользователя:
 
<pre>
#!/bin/sh
 
# ssh-add
 
export AUTOSSH_DEBUG=1
export AUTOSSH_GATETIME=0
export AUTOSSH_PORT=20050
export AUTOSSH_POLL=120
autossh -f -N server-gate
</pre>
 
У пользователя соответственно тоже ключ положил в
/home/USER/.ssh/id_dsa.anyssh.a185
 
а после запуска скрипта с autossh (который поддерживает постоянным соединение),
в случае необходимости захожу на свой сервер уже так:
 
$ ssh server
 
 
Я приводил пример конфига для autosshd для поднятия тунеля
от севера пользователя до anyssh.
А пользователь уже на свой сервер заходит пользуясь "своими" настройками.
Но ничто не мешает у пользователя тоже поднимать канал до сервера
через autosshd. Например нам (у меня на работе) это полезно для доступа
к нашему серверу с отладочных ноутбуков (у которых может быть много пользователей).
 
Так вот для этого на самом деле берётся такой же собственно конфиг и исправляется несколько строк:
 
LOCAL_PORT=32113
 
"-R ${REMOTE_PORT}:localhost:${LOCAL_PORT}" меняется на
"-L ${LOCALPORT_PORT}:localhost:${REMOTE_PORT}"


(т.е. проброс в обратную сторону.. локальный порт в удалённый на anyssh).
и всё.


Тогда при этом у пользователя server-gate и autossh запускать не нужно.
=== 2) Run service ===
service autosshd start


=== Ссылки ===
* http://blog.sozinov.eu/2009/08/autossh.html


[[Категория: Администрирование]]
[[Категория: Администрирование]]

Версия 17:49, 18 сентября 2014

Пример использования

1) Create config as /etc/autossh.d/example.com.conf.template

Connection params 1 Set you remote host addres or ip HOST=example.com 2 Create user REMOTESSH_USER=_autossh 3 Copy user private id_dsa from $HOST to home anyssh/.ssh dir and check acess rights 600 REMOTE_KEY=/var/lib/autosshd/.ssh/id_dsa.$HOST.$REMOTESSH_USER

Change port if need LOCAL_PORT=22 port that linstening sshd REMOTE_PORT=10210 port for ssh comand on HOST $ ssh -p $REMOTE_PORT $REMOTESSH_USER@127.0.0.1 AUTOSSH_PORT=11210 monitoring local port (port+1 will used too, see man autossh)

AUTOSTART=yes

Private ключ взял из скрипта etersoft_tunnel.sh и положил в /var/lib/autosshd/.ssh/id_dsa.anyssh.a185


2) Run service

service autosshd start