Горячее
Лучшее
Свежее
Подписки
Сообщества
Блоги
Эксперты
Войти
Забыли пароль?
или продолжите с
Создать аккаунт
Регистрируясь, я даю согласие на обработку данных и условия почтовых рассылок.
или
Восстановление пароля
Восстановление пароля
Получить код в Telegram
Войти с Яндекс ID Войти через VK ID
ПромокодыРаботаКурсыРекламаИгрыПополнение Steam
Пикабу Игры +1000 бесплатных онлайн игр Вы владелец небоскреба! Стройте этажи, управляйте магазинами и работниками!

Небоскреб Мечты

Казуальные, Симуляторы, 2D

Играть

Топ прошлой недели

  • solenakrivetka solenakrivetka 7 постов
  • Animalrescueed Animalrescueed 53 поста
  • ia.panorama ia.panorama 12 постов
Посмотреть весь топ

Лучшие посты недели

Рассылка Пикабу: отправляем самые рейтинговые материалы за 7 дней 🔥

Нажимая «Подписаться», я даю согласие на обработку данных и условия почтовых рассылок.

Спасибо, что подписались!
Пожалуйста, проверьте почту 😊

Помощь Кодекс Пикабу Команда Пикабу Моб. приложение
Правила соцсети О рекомендациях О компании
Промокоды Биг Гик Промокоды Lamoda Промокоды МВидео Промокоды Яндекс Маркет Промокоды Пятерочка Промокоды Aroma Butik Промокоды Яндекс Путешествия Промокоды Яндекс Еда Постила Футбол сегодня
0 просмотренных постов скрыто
Armast

Свежак⁠⁠

1 месяц назад

-Здравствуйте, это форум про аниме?
-Да
-Как пропатчить KDE под FreeBSD?

Свежее Баянометр Bash im Волна постов Текст
0
565
Aburkov

Прикреплены же⁠⁠

1 месяц назад
Прикреплены же

Не знаю откуда, не мое. Но неплохо. Отправлял комментом, но хотелось что больше людей увидели.

Плоская земля Динозавры Без рейтинга Повтор Bash im
63
aizisan
aizisan

Предлогаю новую волну⁠⁠

1 месяц назад

Баш.

Будем цитировать БАШ.

Я в 2007 году его весь прочитал, в деревне скучно было. Кидал Нокию н70 вверх, чтоб Опера загрузила 5-6 страниц, потом весь день читал.

Но одно условие, кидаем разные цитаты. И кстати, как бороться с баянами - Писать текстом, плюсы первому. Ставлю сотку, через пару раз они кончатся. Ну просто потому что боты не смогут крутить себе рейтинг. Поэтому у меня предложение к модераторам, ЕСЛИ вдруг, вам показали и вы видите, что это боян, это уже было тут, просто задом наперед и вверх ногами, то ставите тег боян и оправляете плюсы изначальному автору, то и там первому, и так до источника. И тогда боты кончатся. Зачем отправлять одно и тоже, если все равно плюсики уйдут другим.

А не получится, у вас же рейтинги упадут...

Насчет баша. я начну...

Она: ответь мне, только честно, да или нет, хорошо?
Он: спрашивай
Она: почему мужчины смеются над блондинками?
Он: да

http://bash.org.ru/comics/20081205

Показать полностью
Пикабу Юмор Волна постов Bash im Текст
25
user11230756

Цитатник Рунета ЖИВ⁠⁠

1 месяц назад
Bash im Юмор
0
12
Frozzy17
Frozzy17
Bash

Ненастье...⁠⁠

2 месяца назад

Жена: Хочу любви большой и чистой.
Я: Большой и чистой нет, есть маленькая и грязная.
Жена: Почему грязная?
Я: Я не мылся.
Жена: А маленькая почему?
Я: Так холодно же.

Черный юмор Странный юмор Bash im Текст
2
9
DmitriitheFals
Лига Сисадминов
Серия Кудахтеры: Ansible

Ansible для детского сада. Часть 3. Настраиваем подобие безопасности и все остальное⁠⁠

2 месяца назад

Почему я вообще пишу эту статью? Почему нет готового решения «делайте хорошо, плохо не делайте»?
Как жесток и несправедлив этот мир!
У меня постоянное ощущение того, что я описываю не велосипед с костылями, а велосипед, который давно изобретен, на котором все катались лет 15 назад, если не 20. Что-то типа «введение в линукс и все вокруг для 10 класса». Что на информатике учат.
Серия «Кудахтеры: Ansible»

Ansible для детского сада в скольки то частях. Часть 1.Про все сразу
Ansible для детского сада в скольки то частях. Часть 2. Костылируем жалкое подобие WSUS - Linux Server Update Services (LSUS)
Ansible для детского сада. Часть 3. Настраиваем подобие безопасности и все остальное
Подготовка Git
Ansible для детского сада. Часть 4. Первичная настройка конечного клиента
Ansible для детского сада в скольки то частях. Часть 5. Приделываем костыли

Еще раз объясняю принципы СПО.
Видишь голую жопу - сшей трусы и отдай владельцу жопы.
Не умеешь шить - сообщи владельцу жопы, где трусы можно купить.
Не знаешь где купить - просто скажи владельцу жопы "А у вас жопа голая!".
Не хочешь делать ничего из предложенного - заткнись, не твое дело.

Интересно разделился ИТ мир

В одном отделе (у соседей) n8n подняли и тыкают в него палкой. В другом, у бывших коллег на новом месте работы, оказывается, нет инструмента для сбора статистики обновлений. И вообще ничего нет, кроме папки с сотнями Excel файлов. И те не актуальны.

Ничего против Excel не имею. Инструмент удобный, и внутри можно сделать много чего на VBA – но нужно ли? Но, текст не про философию.

Для того, чтобы Ansible отработал задачу на хосте, необходимо:

Чтобы на целевом (target) хосте существовал нужный пользователь, с нужными правами на исполнение
Чтобы целевой пользователь имел права на вход по ssh
Чтобы (если требуется) на целевом хосте были прописаны, или стали прописаны, нужные репозитории
Чтобы Ansible доверял ssh сертификату целевого хоста. Потому что до первого входа, по умолчанию, и так далее, ничего подобного не будет, никакого доверия.

Дальше мы переходим к вопросу регулярной смены или пароля, или сертификата, или и пароля и сертификата для служебного пользователя.

Становится очевидно, что, чем больше пользователей имеет доступ к Ansible серверу, тем желательнее (скорее, обязательно) заводить отдельный сервер для инфраструктурных задач, в отдельной подсети, с серьезными ограничениями по доступу к серверу, и отдельный сервер для dev\test окружений, с своими правилами и задачами. В идеальной среде, где все профессионалы и друг друга уважают, и думают, что делают.. В идеальном мире можно сразу дать всем пароль от рута. В реальном мире необходим баланс между ограничениями всеми и всего.

Придется начинать с установки и настройки fail2ban и настройкой полуторафакторной авторизации (сертификат с паролем) для серверов с git и ansible. При этом к git нужен будет доступ «от всех серверов локальной сети», а к ansible, без pull модели, не со всех.

Видимо, придется потом сесть и писать длинную статью «я так вижу про безопасность в Linux».

Будет еще одна недописанная статья, кроме «Инвентаризация инфраструктуры и сети. Пометки для начинающих». Что-то такое один дьяк писал в 1415, со словами «житие мое..» , будет «10 лет спустя».

Пока думаю, и пока коллеги думают, сделаю в стиле «для домашней лаборатории сойдет» -

В гите есть public repo, в котором лежит:
1 ssh файл для прописывания первичных настроек и юзера для Ansible.
2 открытая часть сертификата юзера для Ansible, при этом сертификат генерируется с паролем
3 Остальные преднастройки для работы Kerberos + AD

Подготовка Git

Что в наличии: Бесплатный Gitlab в контейнере, Version v18.2.1 (gitlab/gitlab-ce; latest).

Создам там юзера из GUI - (панель админки внизу слева, рядом с help)
Admin > Users > New user > Name: Preset; mail: firstname.lastname@example.com
Admin > Users > Preset > Password: Pa$$word1234
Создам токен; Name: Token01
Через : Admin – Users - Preset Impersonation Tokens for preset с правами:
read_repository: Grants read-only access to repositories on private projects using Git-over-HTTP or the Repository Files API.

Получу токен. Токен выглядит вот так:
glpat-MFuiWVjB1BTngs-6wyHj

Там же, в управлении токенами, сразу сделаю ему rotate.

Создам группу: Linuxpregoup2.
тип: Private (The group and its projects can only be viewed by members.)
Почему так: просто так, потому что все равно токен сделал.

Создам в Gitlab проект:
имя и все прочее: linuxpreset01
Тип: Private (Project access must be granted explicitly to each user. If this project is part of a group, access is granted to members of the group.
Можно делать и Internal, и Public (The project can be accessed without any authentication.), но зачем ?

Создам в проекте файл first.sh
С текстом

#!/bin/bash
date

И сделаю copy permalink. Получу, поскольку у меня не настроен DNS и мне не хочется прописывать что-то в /etc/host -
http://192.168.1111.2222/linuxpregoup2/linuxpreset01/-/blob/какойтодлинныйтокен/first.sh

Добавление пользователя preset к проекту linuxpreset01

Gitlab содержит 7 ролей из коробки: Guest (This role applies to private and internal projects only.) ; Planner; Reporter ; Developer;  Maintainer;  Owner; Minimal Access (available for the top-level group only)

Дам права Guest и попробую зайти.
При входе получу предупреждение:
Update password for Preset . Чтож, сменю пароль и зайду уже с новым паролем, и увижу проект, и в проекте увижу ничего.
По прямой ссылке тоже увижу то самое ничего. И с правами reporter то же самое, то есть ничего. Только роль Reporter (и выше) имеет права на чтение файлов. Ничуть не удивлюсь, если при аудите окажется, что всем подряд выданы роли Maintainer.
Понять это из документации, наверно, можно. Но я не смог.
Хорошие новости: отредактировать файл все равно нельзя.
Новости так себе: можно сделать fork и получить две ветки. Можно почитать Default branch file and directory locks, и все равно задуматься.
Что еще интереснее, я, как user Preset вижу ветку patch-1, а как админ – не вижу. И это несколько странно, как и то ,что создался новый проект - Preset/linuxpreset01
Но, на данном этапе не важно.

Токен к проекту (Project access tokens) я не создавал, а, наверное, зря. Судя по теме How to curl single file using deploy token, я не один такой тупенький.
Создам . User – Preferences – access tokens - Personal access tokens
Add a project access token
Name: Token02Personal; read_repository
Замечу, что эти злые люди переделали (опять) интерфейс, и теперо Project ID живет не там, где раньше

Что я забыл?

практика показала, что, раз я сделал только read_repository, но не сделал в токене:
read_user (Grants read-only access to your profile through the /user API endpoint, which includes username, public email, and full name. Also grants access to read-only API endpoints under /users. )
read_api (Grants read access to the API, including all groups and projects, the container registry, and the package registry.)

То получу {"message":"401 Unauthorized"}

Это еще ничего. Потому что если адрес совсем неправильный, то я получу
<html><body>You are being <a href="http://192.168.1111.2222/users/sign_in">redirected</a

Управление токенами в бесплатной версии поначалу вызывает того самого кота

Потому что выглядит вот так.

Токен можно посмотреть один раз при перевыпуске, и все, давайте досвиданья.
Посмотреть значение уже выпущенного токена нельзя.
Можно перевыпустить или отозвать
Можно посмотреть сразу после выпуска. Все.

Токен

Токен

Теперь понятно, почему на управление токенами тоже могут забивать. Потому что это надо 5 минут потратить, разобраться.

Если почти все правильно, кроме токена, то будет ошибка:
{"error":"invalid_token","error_description":"Token was revoked. You have to re-authorize from the user."}

Если токен корректен, но что-то не то с путем, то получим:
{"message":"404 Commit Not Found"}

Итого

Неправильно: использовать токен с недостаточными правами, или выписанный «не там». Роль «вон того токена» надо изучить отдельно.

Неправильно: использовать путь из WEB, например
curl --header "PRIVATE-TOKEN: glft-h5DSfGmqiVESDZ7kQJMz" http://192.168.1111.2222/linuxpregoup2/linuxpreset01/-/raw/main/first.sh

Неправильно: прописывать master, хотя у тебя ветка main, например:
curl --header "PRIVATE-TOKEN: glpat-norDQhvwoTxyAtM9ANhV" http://192.168.1111.2222/api/v4/projects/2/repository/files/first.sh/raw?ref=master -o ot05.txt

Работает:
прописывать токен с нужными правами, прописывать путь через API и project ID, использовать нужную ветку (main):
curl --header "PRIVATE-TOKEN: glpat-norDQhvwoTxyAtM9ANhV" http://192.168.1111.2222/api/v4/projects/2/repository/files/first.sh/raw?ref=main -o ot08.txt

И, конечно, неправильно публиковать любые токены в статьях. Вдруг они еще рабочие.
но я не очень беспокоюсь за мою домашнюю виртуальную машину, и перевыпустил токен еще до того, как дописал это предложение.

Дальше проще. Изян: stackoverflow

curl --header "PRIVATE-TOKEN: glpat-norDQhvwoTxyAtM9ANhV" http://192.168.1111.2222/api/v4/projects/2/repository/files/first.sh/raw?ref=main -o

http://192.168.1111.2222/linuxpregoup2/linuxpreset01/-/blob/(какой-то UUID)/ansible

и остается только положить нужные файлы (открытую часть сертификата) в gitlab, и переписать стартовый скрипт.

Итоговый скрипт у меня на домашнем стенде у меня будет выглядеть так, что оказалось что проще написать отдельную статью:

Ansible для детского сада. Часть 4. Первичная настройка конечного клиента

Заключение

У меня постоянное ощущение того, что я описываю не велосипед с костылями, а велосипед, который давно изобретен, на котором все катались лет 15 назад, если не 20. Что-то типа «введение в линукс и все вокруг для 10 класса». Что на информатике учат.
Потому что тут коллеги n8n крутят, а я описываю, как с гита файл скачать с токеном.

Костыли и велосипеды

Костыли и велосипеды

Литература

Основы Ansible для сетевых инженеров
Etckeeper - ставим под контроль изменения конфигурации сервера
Ansible Community Documentation Managing vault passwords
Ansible Community Documentation 2.8 Using Vault in playbooks > The documentation regarding Ansible Vault has moved. Encrypting content with Ansible Vault

RBAC Ansible Tower
RBAC Ansible AWX
RBAC Red Hat Ansible Automation Platform

gitlab signup users without email confirmation

Gitlab docs Roles and permissions
Перевод из 2017 года от ruvds Bash-скрипты: начало. Оригинал: Shell scripting step by step tutorial
Gitlab forum How to curl single file using deploy token
Gitlab forum Curling raw file fails
Medium How to curl single file using access token in gitlab
digitalocean How to Download Files with cURL
Reddit Creating System Users for Ansible Execution

@editors, мне бы тег Ansible, выдайте пожалуйста

Показать полностью 5
[моё] IT Linux Windows Импортозамещение Bash im Длиннопост Ansible
2
falaza.pidan
falaza.pidan

Им просто неудобно сморкаться⁠⁠

2 месяца назад

Есть у меня один сотрудник с усами и бородой. Сегодня приходит - борода на месте, усов нет. На вопрос "Зачем сбрил усы?", ответил, что болеет и сморкаться неудобно.

Юмор Bash im Мусульмане Борода Усы Короткопост Текст
8
5
YaTozheNeRobot
YaTozheNeRobot
Bash

Какая уж есть⁠⁠

2 месяца назад

-хуйня получилась! (
-Моей маме в роддоме так же сказали =)

Bash im Цитаты Рунет Роддом Мат Текст
0
Посты не найдены
О нас
О Пикабу Контакты Реклама Сообщить об ошибке Сообщить о нарушении законодательства Отзывы и предложения Новости Пикабу Мобильное приложение RSS
Информация
Помощь Кодекс Пикабу Команда Пикабу Конфиденциальность Правила соцсети О рекомендациях О компании
Наши проекты
Блоги Работа Промокоды Игры Курсы
Партнёры
Промокоды Биг Гик Промокоды Lamoda Промокоды Мвидео Промокоды Яндекс Маркет Промокоды Пятерочка Промокоды Aroma Butik Промокоды Яндекс Путешествия Промокоды Яндекс Еда Постила Футбол сегодня
На информационном ресурсе Pikabu.ru применяются рекомендательные технологии