Админим с Буквой
5.52K subscribers
303 photos
8 videos
59 files
1.16K links
Канал о системном администрировании, DevOps и немного Инфобеза.

По всем вопросам обращаться к @bykva. Рекламу не размещаю.
Download Telegram
#tmux #ssh
Сказ об использовании tmux и ssh agent
Если вы используете ssh agent при подключении к серверу, на котором запускаете tmux, из которого уже ходите на другие серваки - это прекрасно работает. Однако, на следующий день при аттаче к tmux авторизация работать перестанет. Это происходит из-за того, что вы подключаетесь с новым environment, и новым ssh agent socket, тогда как в tmux windows используются старые, уже не валидные значения. Решение этой пролемы - только запуск нового окна в пределах вашего tmux аттача.
Взаимодействуем с git на нестандартном порту:

git clone ssh://git@example.com:1337/group/project.git


#git #ssh
ansible tips and tricks

#ansible #ssh #jenkins

Бывают ситуации, когда надо в автоматизированном режиме коннектиться к некоей виртуальной машине, у которой будет один и тот же ip адрес, но ssh-ключи каждый раз разные. ssh будет ругаться на то что информация о хосте поменялась и фейлить ваш плейбук, а jenkins - сборку.

Решение:
ansible
занести в ansible.cfg строку
host_key_checking = False

или добавить в environment:
export ANSIBLE_HOST_KEY_CHECKING = False

groovy script\Jenkinsfile\ssh
подключаться с параметрами:
ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no <user>@<ip> <command>
список тегов, используемых в канале:

—-------------------------------
Лекции и материалы
—-------------------------------
#Занятие
#Лекции
Лекция

—---------
Linux
—---------
#ssh
#bash
#awk
#tmux
#console
#utils
#troubleshooting
#nmap

—----------
DevOps
—----------
#jenkins
#ansible
#git
kubernetes

—------------------
Virtualization
—------------------
#vmware
vagrant

—------------------
Networking
—---------------—
#networking

—---------
InfoSec
—---------
#vulns

—-------------
Windows
—-------------
#RDTS
#windows_server2012
#RDP

—------------------------------------------------
Ссылки и сторонние материалы
—------------------------------------------------
#read
#thirdparty

UPD 28/12/17
Простой совет для рубрики «вдруг кто не знал».

Часто можно увидеть, как админы копируют закрытые ключи на сервера, чтобы оттуда, если что, подключиться к другим тачкам внутренней инфраструктуры. Ну или к git.
Не надо так!

Достаточно написать аргумент -A при подключении по ssh, чтобы пробросить агента аутентификации.

Ну если не понял:

ssh your.server -A

А с него уже ssh other.server.

Если хочешь пробрасывать агент без запроса, добавляй в
~/.ssh/config строку ForwardAgent yes

#ssh
Non-interactive ssh-keygen

yes "" | ssh-keygen -N ""


#ssh
Вопрос: я зашел по ssh на некий сервер, допустим, с рутовыми правами. Посмотрел, что кроме меня подключены еще, допустим, 5 пользователей. Как я могу получить их открытые ключи в привязке к сессиям?

#ssh

Ответ на картинке ниже:
⚡️dante comon misconfiguration

Кстати о прокси серверах и авторизации. Дошли руки исследовать эту тему, на которую обратили внимание в одной статье на geektimes (ее правда уже удалили), что даже при условии того, что вы укажете шелл /usr/sbin/nologin, это не спасает вас например от фишки ssh проброса портов. Вам не обязательно нужен шелл, чтобы, например, создать свой сокс сервер на чужом сокс сервере из волны этого хайпа ^_^

ssh  -N -D 1337 user@host


спасибо ребятам, которые подсказали про ключ -N.

Ну и в дополнение, кроме -D вполне можно использовать и ключи -L -R, что потенциально поможет вам пробросить себя в сеть за уязвимым прокси-сервером или достучаться до служб, висящих на локалхосте.

#ssh #proxy #socks #security
Точечная настройка SSH

у ssh сервера возможна настройка параметров в зависимости от пользователя и группы. Так, например кому-то можно разрешить пробрасывать иксы, а кому-то ходить по паролю. Сделать это можно с помощью директивы Match. при этом не забывая в конце сделать match all, для примения параметров по-умолчанию для всех остальных.

Match User user1,user2
PasswordAuthentication yes
Match all
PasswordAuthentication no


#ssh
Список тегов, используемых в канале:

—-------------------------------
Лекции и материалы
—-------------------------------
#Занятие
#Лекции
Лекция
#junior

—---------
Linux
—---------
#ssh
#bash
#bash_tips_and_tricks
#awk
#tmux
#console
#utils
#troubleshooting
#nmap
#apt
#bind
#sound
#power_management

—----------
DevOps
—----------
#jenkins
#ansible
#git
#kubernetes
#deploy
#ceph
#docker
#puppet

—------------------
Virtualization
—------------------
#vmware
vagrant

—------------------
Networking
—---------------—
#networking
#proxy
#socks

—---------
InfoSec
—---------
#vulns
#security
#ctf

—-------------
Windows
—-------------
#RDTS
#windows_server2012
#RDP

—------------
Datacenters
—---------—
#ovh
#hetzner

—-------
Other
—-------
#android
#jira

—------------------------------------------------
Ссылки и сторонние материалы
—------------------------------------------------
#read
#thirdparty

Updated: 29.05.18
Тут пацаны в чате от нефиг делать выснили, что при коннекте по ssh. указывая или не указывая ключ, с которым выполнить авторизацию, в обоих случаях будут перебраны до успеха (или неуспеха) все ключи из .ssh. с единственной разницей, что в случае указания ключа перебор начнется с указанного.

#ssh
Убираем показ баннера SSH

в домашней директории пользователя достаточно всего-навсего создать файлик:

touch ~/.hushlogin


#ssh
Чиним ssh-agent на mac

Host *
UseKeychain yes
AddKeysToAgent yes
IdentityFile ~/.ssh/id_rsa


добавить в ssh config

#macos #ssh
поговаривают, что rsa - уныло, грустно и вообще устаревшие фекалии мамонта. За сям нужно все это дело апгредить.

https://bagja.net/blog/upgrade-ssh-key-to-ed25519.html

#ssh #rsa #ed25519
macos не переспрашивать каждый раз пароль от ssh ключа

добавить в ssh config

Host *
UseKeychain yes


#ssh #macos
фиксим ошибку с ssh

Received disconnect from x.x.x.x port 22:2: Too many authentication failures

добавьте в ~/.ssh/config

IdentitiesOnly yes

#ssh