LINUX.ORG.RU

Сообщения dhaenoor

 

Whonix, keyboard layout problem

Форум — Desktop

На Whonix Workstation 16.0.4.2 не ставится русская раскладка.

Реконфигурировал, плагин эмблемки для панели xfce поставил, в настройках включил, ещё сто тысяч рецептов из инета перепробовал - всё впустую.

Кто сталкивался - подскажите что делать. Я уже часов двенадцать с этой проблемой вожусь.

Operating System: Debian GNU/Linux 11.2 (bullseye)
          Kernel: Linux 5.10.0-11-amd64
            XFCE: 4.16

 , ,

dhaenoor
()

OpenDKIM запущен, статус active, но postfix говорит, что сервис недоступен.

Форум — General

Вот ошибка, которую показывает постфикс:

Apr 12 13:38:17 www postfix/cleanup[39259]: E7324101377: message-id=<1a7d441ee32ddeb5e0e0da1383e524b5@mysite.ru>
Apr 12 13:38:17 www postfix/cleanup[39259]: E7324101377: milter-reject: END-OF-MESSAGE from localhost[127.0.0.1]: 4.7.1 Service unavailable - try again later; from=<www-data@mysite.ru> to=<testmailbox@yandex.ru>

В инете искал. Соединяется через TCP на localhost, значит дело не в правах на сокет (есть в инете такой тип ошибки). Права выданы на файл с приватным ключом 600 для пользователя postfix, запускается opendkim от имени пользователя postfix (чтоб уж наверняка исключить ошибку с правами)

Статус opendkim:

systemctl status opendkim
● opendkim.service - OpenDKIM DomainKeys Identified Mail (DKIM) Milter
   Loaded: loaded (/lib/systemd/system/opendkim.service; enabled; vendor preset: enabled)
   Active: active (running) since Mon 2021-04-12 13:26:15 MSK; 13min ago
     Docs: man:opendkim(8)
           man:opendkim.conf(5)
           man:opendkim-genkey(8)
           man:opendkim-genzone(8)
           man:opendkim-testadsp(8)
           man:opendkim-testkey
           http://www.opendkim.org/docs.html
  Process: 39016 ExecStart=/usr/sbin/opendkim -x /etc/opendkim.conf (code=exited, status=0/SUCCESS)
 Main PID: 39017 (opendkim)
    Tasks: 6 (limit: 2268)
   Memory: 2.8M
   CGroup: /system.slice/opendkim.service
           └─39017 /usr/sbin/opendkim -x /etc/opendkim.conf

Apr 12 13:26:15 www.mysite.ru systemd[1]: Starting OpenDKIM DomainKeys Identified Mail (DKIM) Milter...
Apr 12 13:26:15 www.mysite.ru systemd[1]: Started OpenDKIM DomainKeys Identified Mail (DKIM) Milter.

Конфиг opendkim:

UMask                   002
Domain                  mysite.ru
KeyFile                 /etc/dkimkeys/mysite.ru/dkimprivate.key
Selector                mail
UserID                  postfix:postfix
SyslogSuccess           Yes
LogWhy                  Yes
Background              Yes
Canonicalization        relaxed/relaxed
ExternalIgnoreList      refile:/etc/dkimkeys/TrustedHosts
InternalHosts           refile:/etc/dkimkeys/TrustedHosts
KeyTable                refile:/etc/dkimkeys/keys/keytable
SigningTable            refile:/etc/dkimkeys/keys/signingtable
Mode                    sv
PidFile                 /var/run/opendkim/opendkim.pid
SignatureAlgorithm      rsa-sha256
Socket                  inet:8891@localhost

/etc/dkimkeys/TrustedHosts

127.0.0.1
localhost
mysite.ru

/etc/dkimkeys/keys/keytable

mail._domainkey.mysite.ru mysite.ru:dkim:/etc/opendkim/mysite.ru/dkimprivate.key

/etc/dkimkeys/keys/signingtable

*@mysite.ru mail._domainkey.mysite.ru

ps -aux | grep dkim

postfix  39017  0.0  0.3 268076  7128 ?        Ssl  13:26   0:00 /usr/sbin/opendkim -x /etc/opendkim.conf

/etc/dkimkeys/mysite.ru# ls -lh

total 1.7K
-rw------- 1 postfix postfix 1.7K Apr 12 13:18 dkimprivate.key

/etc/postfix# cat main.cf

smtpd_banner = $myhostname $mail_name
biff = no
append_dot_mydomain = no
readme_directory = no
compatibility_level = 2

# TLS parameters
smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
smtpd_use_tls=yes
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache

smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated defer_unauth_destination
myhostname = mysite.ru
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
mydestination = $myhostname, localhost.mysite.ru, mysite.ru
relayhost = 
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
mailbox_size_limit = 1048576000
recipient_delimiter = +
inet_interfaces = loopback-only
inet_protocols = ipv4
milter_default_action = accept
milter_protocol = 2
smtpd_milters = inet:127.0.0.1:8891
non_smtpd_milters = $smtpd_milters

В общем я уже все рецепты перепробовал, что сразу по конфигам видно. Но ничего так и не работает (

 ,

dhaenoor
()

Неприятный и неожиданный сбой при выполнении bash-скрипта

Форум — Admin

Сочиняю я, значится, скрипт. Опыта нет, поэтому постоянно его запускаю - чтоб проверять как всё работает. И вот такая распрекрасная ошибка вылетела:

# ...
# ... тут всякое разное происходит:
Processing triggers for systemd (241-7~deb10u2) ...
Processing triggers for man-db (2.8.5-2) ...
Processing triggers for libc-bin (2.28-10) ...
Connection to 192.168.122.157 closed. # <--- последняя строка всякого разного
./lr.sh: строка 385: $'ncer\nfi\n\n# Если были выбраны нули - значит происходит продолжение прерванного ранее процесса\n# и устанавливать ничего не нужно\necho ': команда не найдена
./lr.sh: строка 388: На: команда не найдена

Настраиваем мастер # <--- тут нормально пошло
ALTER SYSTEM
Connection to 192.168.122.157 closed.
...
...

А вот как это выглядит в виде скрипта:

if [ ${MASTER_VERSION} -eq 0 ]
then echo "Выбран 0, пропускаем."
elif [ ${MASTER_VERSION} -eq 1 ]   # PostgreSQL 9.4
then ssh -t $MUSERNAME@${MASTER} "sudo apt-get install ${PGDG94_PKG} pgbouncer"
elif [ ${MASTER_VERSION} -eq 2 ] # PostgreSQL 9.5
then ssh -t $MUSERNAME@${MASTER} "sudo apt-get install ${PGDG95_PKG} pgbouncer"
elif [ ${MASTER_VERSION} -eq 3 ] # PostgreSQL 9.6
then ssh -t $MUSERNAME@${MASTER} "sudo apt-get install ${PGDG96_PKG} pgbouncer"
elif [ ${MASTER_VERSION} -eq 4 ] # PostgreSQL 10
then ssh -t $MUSERNAME@${MASTER} "sudo apt-get install ${PGDG10_PKG} pgbouncer"
elif [ ${MASTER_VERSION} -eq 5 ] # PostgreSQL 11
then ssh -t $MUSERNAME@${MASTER} "sudo apt-get install ${PGDG11_PKG} pgbouncer"
elif [ ${MASTER_VERSION} -eq 6 ] # PostgreSQL 12
then ssh -t $MUSERNAME@${MASTER} "sudo apt-get install ${PGDG12_PKG} pgbouncer"
elif [ ${MASTER_VERSION} -eq 7 ] # Postgres Pro Standard 9.6
then ssh -t $MUSERNAME@${MASTER} "sudo apt-get install ${PGPS96_PKG} pgbouncer"
elif [ ${MASTER_VERSION} -eq 8 ] # Postgres Pro Standard 10
then ssh -t $MUSERNAME@${MASTER} "sudo apt-get install ${PGPS10_PKG} pgbouncer"
elif [ ${MASTER_VERSION} -eq 9 ] # Postgres Pro Standard 11
then ssh -t $MUSERNAME@${MASTER} "sudo apt-get install ${PGPS11_PKG} pgbouncer"
elif [ ${MASTER_VERSION} -eq 10 ] # Postgres Pro Standard 12
then ssh -t $MUSERNAME@${MASTER} "sudo apt-get install ${PGPS12_PKG} pgbouncer"
elif [ ${MASTER_VERSION} -eq 11 ] # Postgres Pro Enterprise 9.6
then ssh -t $MUSERNAME@${MASTER} "sudo apt-get install ${PGPE96_PKG} pgbouncer"
elif [ ${MASTER_VERSION} -eq 12 ] # Postgres Pro Enterprise 10
then ssh -t $MUSERNAME@${MASTER} "sudo apt-get install ${PGPE10_PKG} pgbouncer"
elif [ ${MASTER_VERSION} -eq 13 ] # Postgres Pro Enterprise 11
then ssh -t $MUSERNAME@${MASTER} "sudo apt-get install ${PGPE11_PKG} pgbouncer"
elif [ ${MASTER_VERSION} -eq 14 ] # Postgres Pro Enterprise 12
### ниже как раз начинается 385 строка:
then ssh -t $MUSERNAME@${MASTER} "sudo apt-get install ${PGPE12_PKG} pgbouncer"
fi

# Если были выбраны нули - значит происходит продолжение прерванного ранее процесса
# и устанавливать ничего не нужно
echo "
На реплике:"
if [ ${REPLICA_VERSION} -eq 0 ]
then echo "Выбран 0, пропускаем."
elif [ ${REPLICA_VERSION} -eq 1 ] # PostgreSQL 11
then ssh -t $RUSERNAME@${REPLICA} "sudo apt-get install ${PGDG11_PKG} pgbouncer"
elif [ ${REPLICA_VERSION} -eq 2 ] # PostgreSQL 12
then ssh -t $RUSERNAME@${REPLICA} "sudo apt-get install ${PGDG12_PKG} pgbouncer"
elif [ ${REPLICA_VERSION} -eq 3 ] # Postgres Pro Standard 11
then ssh -t $RUSERNAME@${REPLICA} "sudo apt-get install ${PGPS11_PKG} pgbouncer"
elif [ ${REPLICA_VERSION} -eq 4 ] # Postgres Pro Standard 12
then ssh -t $RUSERNAME@${REPLICA} "sudo apt-get install ${PGPS12_PKG} pgbouncer"
elif [ ${REPLICA_VERSION} -eq 5 ] # Postgres Pro Enterprise 10
then ssh -t $RUSERNAME@${REPLICA} "sudo apt-get install ${PGPE10_PKG} pgbouncer"
elif [ ${REPLICA_VERSION} -eq 6 ] # Postgres Pro Enterprise 11
then ssh -t $RUSERNAME@${REPLICA} "sudo apt-get install ${PGPE11_PKG} pgbouncer"
elif [ ${REPLICA_VERSION} -eq 7 ] # Postgres Pro Enterprise 12
then ssh -t $RUSERNAME@${REPLICA} "sudo apt-get install ${PGPE12_PKG} pgbouncer"
fi

То есть баш взял и начал читать команды не с начала строки после fi, а до неё, с конца строки

#                                        Он начал с символа под точкой -> .
then ssh -t $MUSERNAME@${MASTER} "sudo apt-get install ${PGPE12_PKG} pgbouncer"

Вот ссылка на картинку, я там выделил ту часть скрипта, которую bash посчитал одной командной строкой: https://yadi.sk/i/nHKSZ4rat_HZlQ

При повторном запуске всё пошло уже без ошибок. Это я к чему - как сделать так, чтоб подобное не повторялось? Как-то не очень приятно осознавать, что bash может взять и пропустить произвольное число команд, начать читать команду с середины строки и, как ни в чём не бывало, идти дальше. Ладно я при отладке это увидел, а если не увидел бы?

К тому же bash также не счёл командой второй по счету then в блоке относящемся к реплике. Два раза на десяти строчках споткнулся.

 ,

dhaenoor
()

Как одной командой проверить наличие строки и если её нет - добавить

Форум — Admin

Ситуация такая: Ключи SSH все на сервере разместил, скрипт спокойно выполняет команды такого вида (не забыв спросить пароль):

ssh -t $uname@192.168.122.157 sudo cat /etc/sudoers

но я не этого хочу, хочу что-то вроде

ssh -t $uname@192.168.122.157 sudo grep "%uname ALL=(ALL:ALL) NOPASSWD: ALL" /etc/sudoers || sudo echo "%uname ALL=(ALL:ALL) NOPASSWD: ALL" >> /etc/sudoers

Смысл в том, чтоб в скрипте, одной командой (не хочу больше одного раза пароль вводить), сначала /etc/sudoers проверить на наличие строки и, если её там нет - добавить.

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

 , ,

dhaenoor
()

Как SATA подключённый к ServeRAID M5015 сделать видимым линуксу?

Форум — General

Ну, собственно, сабж. Заманался уже с телефона искать. Тыкать куда попало - ссыкотно, профукается еще дата с винта или массив имеющийся саморазберётся. Никогда с райдами не сталкивался... Вот такая там конфигурация, нижний хочу как-то сделать видимым для линукса. Все что нашел - совет сделать массив RAID0 из одного диска. Но эта штука так не делает, всё норовит его к имеющемуся массиву прикрутить. Или я что-то не знаю (100% так оно и есть) Сфоткал экран https://yadi.sk/i/bc_kOdlyqKQOsg

 ,

dhaenoor
()

Доступ к серверу SSH через скрытый сервис TOR

Форум — General

Два дня ковыряюсь - никакого результата.

Если кратко - вот все что было сделано за эти пару дней:
В torrc сделал записи:

HiddenServiceDir /var/lib/tor/folder
HiddenServicePort 22 127.0.0.1:22
HiddenServiceAuthorizeClient stealth username

Папку /var/lib/tor/folder создал, права для debian-tor дал rwx, назначил этой папке владельцем debian-tor

Перезапустил сервис и ничего. Совсем ничего. Эта падла даже логи в /var/log/tor/log через раз записывает. Должен в указанной папке создавать два файла, но ничего не делает. Всякое уже пробовал, права, пользователи, purge разве что еще не делал, но и не знаю зачем его делать, не винда ведь.

Так или иначе все танцы были вокруг этого. Все как в мане написано - почему:
1) может не работать?
2) просирать логи?

 , ,

dhaenoor
()

Нужно поставить убунту на 50 компов.

Форум — Linux-install

Стандартная установка с DVD не подходит - нужен wine, winetricks, directx и flash плюс наш софт под вайном 200 мегабайт почти.

Ставить стандартно и выкачивать пятьдесят раз полгига обновлений, пакетов и директиксов не радует. И времени крайне мало. Возникла идея создать типовой образ (компы все идентичные) и его восстанавливать на снятые винты на отдельном компе под управлением винды или линукса, какой софт будет - то и используем.

Вопрос: что лучше использовать в указанных целях?

dhaenoor
()

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