LINUX.ORG.RU

Сообщения paa66

 

Не работает dns

Форум — Admin

Пингую ping 8.8.8.8 - пинги проходят, а если ping google.com, то получаю ответ:

ping: google.com: Temporary failure in name resolution

В файл /etc/resolve.conf я вместо значения по-умолчанию поставил 8.8.8.8. Перезагрузил командой:

sudo systemctl restart systemd-resolved.service

Не помогло.

 

paa66
()

Доступ по http к контейнеру

Форум — Admin

Есть статический IP. В роутере LAN IP-адрес:192.168.0.1 Маска подсети:255.255.255.0

На компе Win10, адрес 192.168.0.2.

Установлен VB, он эмулирует сетевой адаптер с IP 192.168.56.1/24.

Создан виртуальный хост Ubuntu server, его настройки (ip a): inet 192.168.0.120/24 brd 192.168.0.255 scope global enp0s3 . Шлюз -192.168.0.1 (адрес роутера). Мост: inet 192.168.56.1/24 brd 192.168.56.255 scope global lxcbr0

В Убунту установлен контейнер, его сеть (ip a): inet 192.168.56.122/24 brd 192.168.56.255 scope global eth1. В настройке netplan указан ДНС 192.168.0.1 (адрес роутера). Шлюз - 192.168.56.1. С этого контейнера пингуются роутер и виртуальный хост. С роутера пингуются этот контейнер и виртуальный хост. С виртуального хоста пингуются роутер и контейнер.

В роутере настроена переадресация на Убунту сервер.

Получилась такая схема: роутер – Виндоус10 – VB с установленным Убунту сервером, у которого адаптер-сетевой мост – контейнер lxc с apache.

Если в браузере Виндоус, Убунту сервер ввести ip контейнера, то будет показана страница сайта, расположенного в контейнере.

Если в браузере Виндоус ввести статический адрес, то будет показана стартовая страница apache, установленного на Убунту сервере.

Мне надо сделать так, чтобы при введении в браузер Виндоус статического адреса открывалась страница сайта, расположенного в контейнере.

Мне надо для этого сделать в Убунту сервере проброс портов на контейнер?

Может, я, вообще, изначально неправильно настроил сеть?

 

paa66
()

Как получить хэш пароля в mysql?

Форум — Admin

В плэйбуке есть такая задача:

  - name: Change primary
    community.mysql.mysql_replication:
      mode: changeprimary
      primary_host: 192.168.56.121
      primary_user: paa
      primary_password: 2
      primary_log_file: "{{ hostvars['ubu1']['master_status']['File'] }}"
      primary_log_pos: "{{ hostvars['ubu1']['master_status']['Position'] | int }}"
      login_unix_socket: /run/mysqld/mysqld.sock

На это получил ответ, что двойку просто так поставить в качестве пароля не получится:

Authentication plugin 'caching_sha2_password' reported error: Authentication requires secure connection.

В mysql в таблице user получил следующее:

mysql> select host, user, authentication_string from mysql.user;
+----------------+------------------+------------------------------------------------------------------------+
| host           | user             | authentication_string                                                  |
+----------------+------------------+------------------------------------------------------------------------+
| 192.168.56.122 | paa              | $A$005q_dwq/<jn]
qc,oSdD7vnkkazjR4uKuvu59my7WFYOKj6nwppCRAlD0bS6 |
| localhost      | debian-sys-maint | $A$005${G[NmA-SdZRYR*.VEh8jdLGpDJxZSaCkogdZpcG182gZjsQoDyFFBJ57vp6 |
| localhost      | mysql.infoschema | $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED |
| localhost      | mysql.session    | $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED |
| localhost      | mysql.sys        | $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED |
| localhost      | paa              | *12033B78389744F3F39AC4CE4CCFCAD6960D8EA0                              |
| localhost      | root             |                                                                        |
+----------------+------------------+------------------------------------------------------------------------+

Скопировал пароль из поля authentication_string, вставил вместо двойки в таск, получил ответ:

The password provided for the replication user exceeds the maximum length of 32 characters

Что делать?

 ,

paa66
()

Как добавить ансиблем пользователя с указанием хоста

Форум — Admin

Добрый вечер!

Так я добавляю пользователя paa@localhost:

  - name: Create database user with password and all database privileges and 'WITH GRANT OPTION'
    community.mysql.mysql_user:
      name: paa
      password: 2
      priv: '*.*:ALL,GRANT'
      state: present
      login_unix_socket: /run/mysqld/mysqld.sock

А как добавить пользователя paa2@192.168.56.122 (с другого хоста)? Таким способом пользователь не добавляется:

  - name: Create user
    community.mysql.mysql_query:
      login_db: ubu1
      query:
      - CREATE USER 'paa'@'192.168.56.122' IDENTIFIED BY '2'
      login_unix_socket: /run/mysqld/mysqld.sock

 ,

paa66
()

Передача значения переменной одного хоста в другой в плэйбуке Ansible

Форум — Admin

Есть переменная master_status хоста ubu1:

  - name: Get primary binlog File name and binlog Position
    community.mysql.mysql_replication:
      mode: getprimary
      login_unix_socket: /run/mysqld/mysqld.sock
    register: master_status

Надо использовать значение переменной master_status в хосте ubu2:

  - name: Start replication
    community.mysql.mysql_replication:
      mode: startreplica
      primary_host: 192.168.56.121
      primary_log_file: '{{ [ubu1][master_status.File] }}'
      primary_log_pos: '{{ [ubu1][master_status.Position] }}'
      login_unix_socket: /run/mysqld/mysqld.sock

У меня неработающий вариант: [ubu1][master_status.File]

 , ,

paa66
()

Как в плэйбуке передать значение mysql?

Форум — Admin

Здравствуйте! Делаю репликацию ансиблем. Стоит задача вывода информации о текущем состоянии двоичного журнала источника (мастера). В терминале команда выглядит так:

SHOW MASTER STATUS;

Таск в плэйбуке сейчас выглядит так:

  tasks:
  - name: Get the current master servers replication status
    community.mysql.mysql_info:
      filter: "master_status"
      login_unix_socket: /run/mysqld/mysqld.sock

Плучаю инфу в таком виде:

  "master_status": {
        "Binlog_Do_DB": "",
        "Binlog_Ignore_DB": "",
        "Executed_Gtid_Set": "",
        "File": "binlog.000004",
        "Position": 157

Мне надо извлечь значения «File» и «Position». Как это сделать?

 , ,

paa66
()

В ansible не выполняется команда source tutorial-env/bin/activate

Форум — Admin

Здравствуйте!

В плэйбуке выглядит так:

  - name: environment activate
    shell: source tutorial-env/bin/activate

Ответ:

«stderr»: «/bin/sh: 1: source: not found»

Если сделать так:

command: source tutorial-env/bin/activate

То ответ будет:

«msg»: «[Errno 2] No such file or directory: b'source'»,

Если так:

raw: source tutorial-env/bin/activate

Ответ будет:

«stderr»: «Shared connection to 192.168.56.121 closed.\r\n»

Видимо, использую не тот модуль. Подскажите, какой надо.

 ,

paa66
()

Не могу установить пакеты для работы с mysql в andible

Форум — Admin

Добрый вечер! На офсайте (https://docs.ansible.com/ansible/latest/collections/community/mysql/mysql_db_...) перечилены требования:

MySQLdb (Python 2.x)

PyMySQL (Python 2.7 and Python 3.x) or

mysql (command line binary)

mysqlclient (Python 3.5+) or

mysqldump (command line binary)

У меня установлен Python 3.10.6. При попытке установить mysqlclient или mysqldump (sudo apt install -y mysqldump) выдаёт сообщение, что:

Unable to locate package mysqlclient или mysqldump

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

«msg»: «A MySQL module is required: for Python 2.7 either PyMySQL, or MySQL-python, or for Python 3.X mysqlclient or PyMySQL. Consider setting ansible_python_interpreter to use the intended Python version.»

 ,

paa66
()

Ошибка Illegal number

Форум — Admin

Здравствуйте!

В плэйбуке есть такая строка:

for i in {1..2}; do echo ubu$(printf "%01d" $i) ansible_host=192.168.56.12$((i)); done | sudo tee inventory

Ansible сообщает:

"/bin/sh: 1: printf: {1..2}: expected numeric value\n/bin/sh: 1: Illegal number: {1..2}"

Как это обойти?

 

paa66
()

Ubuntu server/Ansible/lxc не добавляется строка в файл

Форум — Admin

Доброй ночи!

В плэйбуке есть 2 строки:

'''

  • name: allow ssh root login

    command: lxc-attach -n ubu3 – echo «PermitRootLogin yes» | tee -a /etc/ssh/sshd_config > /dev/null && systemctl restart ssh

'''

Энсибл выдаёт следующую инфу при выполнении задачи:

'''

changed: [localhost] => {

"changed": true,

"cmd": [

    "lxc-attach",

    "-n",

    "ubu3",

    "--",

    "echo",

    "PermitRootLogin yes",

    "|",

    "tee",

    "-a",

    "/etc/ssh/sshd_config",

    ">",

    "/dev/null",

    "&&",

    "systemctl",

    "restart",

    "ssh"

],

"delta": "0:00:00.023631",

"end": "2023-01-20 01:03:09.815855",

"invocation": {

    "module_args": {

        "_raw_params": "lxc-attach -n ubu3 -- echo 

"PermitRootLogin yes" | tee -a /etc/ssh/sshd_config > /dev/null && systemctl restart ssh",

        "_uses_shell": false,

        "argv": null,

        "chdir": null,

        "creates": null,

        "executable": null,

        "removes": null,

        "stdin": null,

        "stdin_add_newline": true,

        "strip_empty_ends": true,

        "warn": false

    }

},

"msg": "",

"rc": 0,

"start": "2023-01-20 01:03:09.792224",

"stderr": "",

"stderr_lines": [],

"stdout": "PermitRootLogin yes | tee -a 

/etc/ssh/sshd_config > /dev/null && systemctl restart ssh",

"stdout_lines": [

    "PermitRootLogin yes | tee -a /etc/ssh/sshd_config > 

/dev/null && systemctl restart ssh"

'''

Изменений в файле не происходит. Почему?

 ,

paa66
()

Win10/VB/Ubuntu server/lxc: как автоматизировать изменение пароля root в lxc

Форум — Admin

Добрый день!

Есть необходимость автоматизировать изменение пароля root в lxc. Создал скрипт со следующим содержимым:

'''

#!/usr/bin/expect -f

set timeout 2

spawn sudo passwd root

expect «New password:» {send «2\n»; exp_continue}

expect «Retype new password:» {send «2\n»}

exit

'''

Скрипт выполняется без ругани, но пароль не меняется. Я делал попытку на свежесозданном lxc, у него изначально нет пароля, поэтому надо автоматизировать его создание. Или предложите свой вариант автоматизации.

 

paa66
()

Автоматизация ssh-copy-id

Форум — Admin

Добрый вечер! Начну с того, что автоматизировал генерацию ключа такой командой:

ssh-keygen -t rsa -f /home/paa/.ssh/id_rsa -q -P ""

Есть необходимость автоматизировать копирование ключа, чтобы выглядело примерно так:

ssh-copy-id -p мой_пароль 'host' 

Ничего подобного не нашёл, пытаюсь сделать через скрипт. Ввёл в терминал команду sh-copy-id 'host', записал, какие вопросы задаются и какие ответы я делаю и получилось следующее:

#!/usr/bin/expect -f
set timeout 2
spawn ssh-copy-id '192.168.56.103'
expect "Are you sure you want to continue connecting " {send "yes\n"}
expect "paa@192.168.56.103's password:" {send "2\n"}
expect eof 

Пытаюсь запустить это скрипт, система выдаёт сообщение:

spawn ssh-copy-id '192.168.56.103'
/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/home/paa/.ssh/id_rsa.pub"
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed

/usr/bin/ssh-copy-id: ERROR: ssh: Could not resolve hostname '192.168.56.103': Name or service not known

expect: spawn id exp4 not open
    while executing
"expect "paa@192.168.56.103's password:" {send "2\n"}"
    (file "/etc/ansible/ssh_copy_id" line 5) 

Почему одна и та же команда проходит, если ввести вручную, а через скрипт нет? Может, есть иной способ автоматизации этой команды?

 

paa66
()

ssh: проблема входа по ключу

Форум — Admin

Добрый день! Схема хостов следующая: на Windows 10 установлен virtualbox, на который прикручен Ubuntu server, на котором развёрнут контейнер (lxc). На сервере (Ubuntu server) и lxc установлен openssh-server.Создал ключи: [code]ssh-keygen[code].

Скопировал ключ: [code]ssh-copy-id paa@192.168.0.103[code]

Вошёл по ssh: [code]ssh -v paa@192.168.56.103[code]

Система выдала: [code]~$ ssh -v paa@192.168.56.103 OpenSSH_8.9p1 Ubuntu-3, OpenSSL 3.0.2 15 Mar 2022 debug1: Reading configuration data /etc/ssh/ssh_config debug1: /etc/ssh/ssh_config line 19: include /etc/ssh/ssh_config.d/.conf matched no files debug1: /etc/ssh/ssh_config line 21: Applying options for * debug1: Connecting to 192.168.56.103 [192.168.56.103] port 22. debug1: Connection established. debug1: identity file /home/paa/.ssh/id_rsa type 0 debug1: identity file /home/paa/.ssh/id_rsa-cert type -1 debug1: identity file /home/paa/.ssh/id_ecdsa type -1 debug1: identity file /home/paa/.ssh/id_ecdsa-cert type -1 debug1: identity file /home/paa/.ssh/id_ecdsa_sk type -1 debug1: identity file /home/paa/.ssh/id_ecdsa_sk-cert type -1 debug1: identity file /home/paa/.ssh/id_ed25519 type -1 debug1: identity file /home/paa/.ssh/id_ed25519-cert type -1 debug1: identity file /home/paa/.ssh/id_ed25519_sk type -1 debug1: identity file /home/paa/.ssh/id_ed25519_sk-cert type -1 debug1: identity file /home/paa/.ssh/id_xmss type -1 debug1: identity file /home/paa/.ssh/id_xmss-cert type -1 debug1: identity file /home/paa/.ssh/id_dsa type -1 debug1: identity file /home/paa/.ssh/id_dsa-cert type -1 debug1: Local version string SSH-2.0-OpenSSH_8.9p1 Ubuntu-3 debug1: Remote protocol version 2.0, remote software version OpenSSH_8.9p1 Ubuntu-3 debug1: compat_banner: match: OpenSSH_8.9p1 Ubuntu-3 pat OpenSSH compat 0x04000000 debug1: Authenticating to 192.168.56.103:22 as ‘paa’ debug1: load_hostkeys: fopen /home/paa/.ssh/known_hosts2: No such file or directory debug1: load_hostkeys: fopen /etc/ssh/ssh_known_hosts: No such file or directory debug1: load_hostkeys: fopen /etc/ssh/ssh_known_hosts2: No such file or directory debug1: SSH2_MSG_KEXINIT sent debug1: SSH2_MSG_KEXINIT received debug1: kex: algorithm: curve25519-sha256 debug1: kex: host key algorithm: ssh-ed25519 debug1: kex: server->client cipher: chacha20-poly1305@openssh.com MAC: compression: none debug1: kex: client->server cipher: chacha20-poly1305@openssh.com MAC: compression: none debug1: expecting SSH2_MSG_KEX_ECDH_REPLY debug1: SSH2_MSG_KEX_ECDH_REPLY received debug1: Server host key: ssh-ed25519 SHA256:7+bYI7Xh4NLxEEc40xmfja9/F2KtAJ+k8c7nOy2I8B4 debug1: load_hostkeys: fopen /home/paa/.ssh/known_hosts2: No such file or directory debug1: load_hostkeys: fopen /etc/ssh/ssh_known_hosts: No such file or directory debug1: load_hostkeys: fopen /etc/ssh/ssh_known_hosts2: No such file or directory debug1: hostkeys_find_by_key_hostfile: hostkeys file /home/paa/.ssh/known_hosts2 does not exist debug1: hostkeys_find_by_key_hostfile: hostkeys file /etc/ssh/ssh_known_hosts does not exist debug1: hostkeys_find_by_key_hostfile: hostkeys file /etc/ssh/ssh_known_hosts2 does not exist The authenticity of host ‘192.168.56.103 (192.168.56.103)’ can’t be established. ED25519 key fingerprint is SHA256:7+bYI7Xh4NLxEEc40xmfja9/F2KtAJ+k8c7nOy2I8B4. This key is not known by any other names Are you sure you want to continue connecting (yes/no/[fingerprint])?[code]

Т.е., приходится вводить пароль. Я иначе скопировал ключ: [code]~$ cat .ssh/id_rsa.pub | ssh paa@192.168.56.103 ‘cat >> .ssh/authorized_keys’[code].

Система ответила: [code]The authenticity of host ‘192.168.56.103 (192.168.56.103)’ can’t be established. ED25519 key fingerprint is SHA256:7+bYI7Xh4NLxEEc40xmfja9/F2KtAJ+k8c7nOy2I8B4. This key is not known by any other names Are you sure you want to continue connecting (yes/no/[fingerprint])? yes Failed to add the host to the list of known hosts (/home/paa/.ssh/known_hosts). hostfile_replace_entries: link /home/paa/.ssh/known_hosts to /home/paa/.ssh/known_hosts.old: Operation not permitted update_known_hosts: hostfile_replace_entries failed for /home/paa/.ssh/known_hosts: Operation not permitted[code]. Проверил права на файл в контейнере: [code]s -l /home/paa/.ssh/known_hosts[code].

Права следующие: [code]-rwxr-xr-x 1 paa paa 978 Dec 20 15:47 /home/paa/.ssh/known_hosts[code].

 , ,

paa66
()

Как войти в контейнер (lxc) и установить openssh-server?

Форум — Admin

Всем привет! Задача: методом Ansible развернуть контейнеры (lxc). Застопорился на следующем: в плэйбуке даю команды на установку lxc, создаю контейнер, прикрепляюсь к процессу (lxc-attach ubu1, где ubu1 - имя контейнера), пытаюсь установить в контейнере openssh-server, который устанавливается не в контейнере, а на хосте. Как сделать, чтобы установка openssh-server’a происходила в контейнере?

 , ,

paa66
()

RSS подписка на новые темы