AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / server / 问题

All perguntas(server)

Martin Hope
Lasse Michael Mølgaard
Asked: 2025-01-20 18:39:54 +0800 CST

Crie um conjunto de palavras para marcar e-mails como spam no SpamAssassin

  • 7

Eu sei que o SpamAssassin pode atribuir pontuações a um e-mail se palavras específicas aparecerem nele.

Por exemplo, se o e-mail contiver a palavra bitcoin, adicione 1,0 à pontuação total.

Mas que tal criar uma regra para que um conjunto de palavras marque o e-mail como spam se, e somente se, todo o conjunto for correspondido no e-mail?

Por exemplo, se você tiver as palavras internete bankinge, interestentão, se uma delas aparecer no e-mail, ela não receberá um valor de spam, mas um e-mail contendo todas as palavras receberá uma pontuação de spam, como por exemplo um e-mail com a mensagem:

Get huge interest through internet banking.

O motivo pelo qual eu quero que o SpamAssassin corresponda a conjuntos inteiros em vez de palavras individuais é porque recebo e-mails de phishing que parecem ser e-mails legítimos, mas eles compartilham um tema comum, como por exemplo a falha na renovação do "Brobizz" (versão dinamarquesa do E-ZPass).

E como os e-mails de phishing se parecem exatamente com os e-mails legítimos, seria uma má ideia bloquear todos os e-mails que contenham essas palavras e nenhum outro critério.

Entretanto: uma combinação das palavras e uma regra separada dizendo que o endereço IP do servidor de e-mail do remetente não pode ser resolvido seria motivo suficiente para sinalizar o e-mail como spam.

Então é possível atribuir pontuação somente a um conjunto de palavras?

spamassassin
  • 1 respostas
  • 153 Views
Martin Hope
A. Smith
Asked: 2025-01-20 17:04:36 +0800 CST

Ubuntu 24.04 Não consigo desabilitar o acesso IPv6 SSH

  • 5

Tenho o Ubuntu 24.04 e estou usando IPv6 para certos serviços, mas não preciso dele para acesso ssh, e é por isso que estou tentando desabilitá-lo no serviço ssh, no entanto, especificar a família de endereços como "inet" não funciona mais como costumava funcionar no Ubuntu 22.04, estou esquecendo de algo? Além disso, tentei criar um arquivo de configuração totalmente separado para esse motivo em /etc/ssh/sshd_config.d/, mas não funcionou.

No Ubuntu 22.04, tudo o que eu precisava adicionar era adicionar 2 linhas em sshd_config (e funcionou todas as vezes): AddressFamily inet

OuvirEndereço 0.0.0.0

ubuntu
  • 1 respostas
  • 24 Views
Martin Hope
Ev4ld
Asked: 2025-01-20 15:06:37 +0800 CST

Como configurar a autenticação baseada em certificado para o ActiveSync no Exchange Server 2019 local?

  • 5

Eu estava configurando o CBA para ActiveSync e OWA no Exchange Server 2019 localmente seguindo este guia: https://learn.microsoft.com/en-us/exchange/plan-and-deploy/post-installation-tasks/configure-certificate-based-auth?view=exchserver-2019

Depois de aumentar o valor de uploadReadAheadSize para 49152 para OWA, ecp e ActiveSync, comecei a receber o erro no navegador "muitos redirecionamentos, tente limpar os cookies".

Limpar cookies não ajudou. Janelas privadas também não ajudaram. Eu Chrome e OWA começaram a funcionar e aceitar certificados. O navegador Edge não está funcionando para OWA.

Suspeito que não seja o Edge o problema, mas dados que foram armazenados em cache que não permitem a conexão. Consegui conectar ao OWA com o Edge em outro computador, que não era usado antes.

Depois que o OWA funcionou em um PC, instalei o certificado de usuário em um iPhone, e o OWA também funcionou lá com certificado (ótimo!! um problema resolvido).

No entanto, por razões desconhecidas, o ActiveSync ainda não funciona com a exigência do certificado no mesmo iPhone. Eu presumo que o iPhone deve usar o mesmo certificado que ele usa para o OWA (que funciona), então o certificado não é o problema.

O ActiveSync funciona se não exigir certificado de cliente, então permissões/políticas não devem ser o problema.

A exigência de certificado resulta nos códigos de erro 403 7 64 e 403 7 5.

Alguém tem alguma sugestão???

exchange
  • 2 respostas
  • 187 Views
Martin Hope
Dmitriano
Asked: 2025-01-20 07:52:45 +0800 CST

O MySQL8 usa uma grande quantidade de espaço em disco

  • 5

Migrei 3 dos meus 11 bancos de dados do MySQL 5.7.44 no Ubuntu 16.04 para o MySQL 8.0.40 no Ubuntu 24.04.

O espaço usado na minha máquina antiga:

root@localhost:/var/lib/mysql# du -ha --max-depth=1
19M     ./bot
4.0K    ./private_key.pem
1.1M    ./performance_schema
48K     ./game
79M     ./master
4.0K    ./public_key.pem
4.0K    ./client-key.pem
4.0K    ./auto.cnf
5.0G    ./beauty
0       ./debian-5.7.flag
201M    ./devnote
11M     ./mysql
4.0K    ./ca.pem
8.0K    ./test
12M     ./mike1
12M     ./ibtmp1
176K    ./phpmyadmin
4.0K    ./server-cert.pem
680K    ./sys
48M     ./ib_logfile0
4.0K    ./ca-key.pem
127M    ./mike
4.0K    ./mysql_upgrade_info
4.0K    ./ib_buffer_pool
48M     ./ib_logfile1
4.0K    ./server-key.pem
186M    ./slogpost
76M     ./ibdata1
4.0K    ./client-cert.pem
41M     ./shar
5.9G    .

O espaço usado na minha nova máquina (os novos bancos de dados são beauty, shar, slogpost):

root@localhost:/var/lib/mysql# du -ha --max-depth=1
101M    ./#innodb_redo
101M    ./binlog.000161
101M    ./binlog.000069
101M    ./binlog.000008
101M    ./binlog.000095
101M    ./binlog.000082
101M    ./binlog.000047
4.0K    ./localhost.pid
4.0K    ./public_key.pem
101M    ./binlog.000075
36K     ./mysql
101M    ./binlog.000177
101M    ./binlog.000101
101M    ./binlog.000122
4.0K    ./server-key.pem
101M    ./binlog.000107
101M    ./binlog.000158
101M    ./binlog.000079
101M    ./binlog.000057
101M    ./binlog.000028
101M    ./binlog.000173
101M    ./binlog.000020
4.0K    ./binlog.index
101M    ./binlog.000112
101M    ./binlog.000121
101M    ./binlog.000139
101M    ./binlog.000142
101M    ./binlog.000152
101M    ./binlog.000060
101M    ./binlog.000136
101M    ./binlog.000010
101M    ./binlog.000045
101M    ./binlog.000077
101M    ./binlog.000125
101M    ./binlog.000168
101M    ./binlog.000169
101M    ./binlog.000119
101M    ./binlog.000007
101M    ./binlog.000176
101M    ./binlog.000127
101M    ./binlog.000066
4.0K    ./client-key.pem
101M    ./binlog.000123
101M    ./binlog.000099
101M    ./binlog.000143
101M    ./binlog.000118
4.0K    ./private_key.pem
101M    ./binlog.000070
101M    ./binlog.000145
101M    ./binlog.000030
4.0K    ./binlog.000002
19M     ./shar
4.0K    ./auto.cnf
101M    ./binlog.000116
101M    ./binlog.000160
101M    ./binlog.000156
101M    ./binlog.000148
101M    ./binlog.000097
101M    ./binlog.000043
101M    ./binlog.000140
101M    ./binlog.000042
101M    ./binlog.000063
101M    ./binlog.000015
101M    ./binlog.000050
0       ./debian-5.7.flag
101M    ./binlog.000003
101M    ./binlog.000180
8.2M    ./#ib_16384_1.dblwr
4.0K    ./binlog.000036
101M    ./binlog.000026
12M     ./ibtmp1
101M    ./binlog.000034
1.7M    ./performance_schema
16M     ./undo_002
101M    ./binlog.000023
101M    ./binlog.000071
101M    ./binlog.000033
32K     ./binlog.000038
101M    ./binlog.000011
76K     ./binlog.000039
101M    ./binlog.000110
101M    ./binlog.000017
101M    ./binlog.000012
101M    ./binlog.000032
101M    ./binlog.000165
101M    ./binlog.000086
101M    ./binlog.000157
183M    ./slogpost
2.3G    ./binlog.000133
101M    ./binlog.000056
101M    ./binlog.000019
101M    ./binlog.000022
2.3G    ./binlog.000183
101M    ./binlog.000073
101M    ./binlog.000138
101M    ./binlog.000009
101M    ./binlog.000067
101M    ./binlog.000181
101M    ./binlog.000013
101M    ./binlog.000162
101M    ./binlog.000088
101M    ./binlog.000120
101M    ./binlog.000054
101M    ./binlog.000064
8.6M    ./binlog.000035
101M    ./binlog.000085
101M    ./binlog.000144
101M    ./binlog.000091
101M    ./binlog.000061
101M    ./binlog.000141
4.0K    ./binlog.000135
101M    ./binlog.000109
101M    ./binlog.000103
101M    ./binlog.000132
101M    ./binlog.000094
101M    ./binlog.000151
101M    ./binlog.000076
101M    ./binlog.000149
101M    ./binlog.000104
101M    ./binlog.000163
101M    ./binlog.000027
101M    ./binlog.000114
116K    ./sys
101M    ./binlog.000182
8.0K    ./ib_buffer_pool
101M    ./binlog.000115
101M    ./binlog.000164
101M    ./binlog.000084
2.4G    ./beauty
101M    ./binlog.000016
101M    ./binlog.000153
101M    ./binlog.000172
101M    ./binlog.000041
101M    ./binlog.000174
101M    ./binlog.000100
8.0K    ./binlog.000185
101M    ./binlog.000113
101M    ./binlog.000046
101M    ./binlog.000178
101M    ./binlog.000124
101M    ./binlog.000074
101M    ./binlog.000105
101M    ./binlog.000179
28M     ./mysql.ibd
101M    ./binlog.000171
101M    ./binlog.000155
101M    ./binlog.000062
101M    ./binlog.000021
101M    ./binlog.000044
101M    ./binlog.000049
101M    ./binlog.000059
101M    ./binlog.000147
60K     ./binlog.000134
101M    ./binlog.000055
4.0K    ./binlog.000040
101M    ./binlog.000126
101M    ./binlog.000170
101M    ./binlog.000089
101M    ./binlog.000006
101M    ./binlog.000080
101M    ./binlog.000081
101M    ./binlog.000068
172K    ./binlog.000037
12M     ./ibdata1
101M    ./binlog.000146
101M    ./binlog.000031
101M    ./binlog.000129
101M    ./binlog.000150
4.0K    ./binlog.000001
804K    ./#innodb_temp
101M    ./binlog.000065
75M     ./binlog.000004
4.0K    ./ca-key.pem
101M    ./binlog.000025
101M    ./binlog.000108
4.0K    ./server-cert.pem
101M    ./binlog.000090
101M    ./binlog.000051
101M    ./binlog.000048
101M    ./binlog.000052
101M    ./binlog.000024
101M    ./binlog.000053
101M    ./binlog.000130
101M    ./binlog.000014
8.0K    ./binlog.000184
101M    ./binlog.000117
101M    ./binlog.000096
101M    ./binlog.000005
101M    ./binlog.000175
101M    ./binlog.000131
101M    ./binlog.000078
101M    ./binlog.000167
101M    ./binlog.000058
101M    ./binlog.000083
101M    ./binlog.000087
101M    ./binlog.000154
101M    ./binlog.000166
101M    ./binlog.000102
4.0K    ./client-cert.pem
101M    ./binlog.000128
4.0K    ./ca.pem
101M    ./binlog.000137
101M    ./binlog.000098
16M     ./undo_001
101M    ./binlog.000029
101M    ./binlog.000018
101M    ./binlog.000092
101M    ./binlog.000106
101M    ./binlog.000072
101M    ./binlog.000111
2.3G    ./binlog.000159
192K    ./#ib_16384_0.dblwr
101M    ./binlog.000093
27G     .

du -csh binlog* | tail -n 1
24G     total

(O banco de dados beautyna máquina antiga ocupa 5,0 G porque contém alguns dados extras)

11 bancos de dados na nova máquina ocupam 5,9 G, mas 3 bancos de dados na máquina antiga ocupam 27 G.

Por que tanto?

Para fazer backup de um banco de dados, eu simplesmente faço isso :

mysqldump -u $MUSER -h $MHOST -p$MPASS $MDB --no-tablespaces | sed -e 's/DEFINER=[^*]*\*/\*/' > $DBDUMP

para restaurar eu faço isso :

tar -Oxzf $ARCHIVE_FILE $DBDUMP | mysql -u $MUSER -h $MHOST -p$MPASS $MDB
mysql
  • 1 respostas
  • 65 Views
Martin Hope
Paul Reynolds
Asked: 2025-01-19 23:55:14 +0800 CST

Não é possível conectar ao servidor através do túnel SSH

  • 5

Estou tentando conectar pela internet a um serviço que está escutando em uma porta em uma máquina remota atrás de um roteador, por meio de um túnel ssh. Tenho privilégios de root na máquina local, máquina remota e acesso de administrador ao roteador. O firewall da máquina remota nega todas as conexões de entrada, exceto em sua porta ssh, digamos que seja 2222. A porta 2222 é encaminhada pelo roteador e o cliente ssh da máquina local também está usando essa porta. Consigo conectar da minha máquina local pela internet à máquina remota com ssh <my_user>@<router public ip>, me dando um shell.

Até aqui tudo bem. Para montar o túnel, eu corro

ssh -D 5555 <my_user>@<router public ip>

e eu obtenho um shell na máquina remota como esperado. Na saída de sudo ss -tap | grep sshna máquina local eu posso ver o cliente ssh escutando na porta 5555 do host local, agindo como servidor SOCKS5, e a conexão estabelecida para o túnel:

LISTEN 0 0                  127.0.0.1:5555             0.0.0.0:*    users:(("ssh", pid=...))    
ESTAB  0 0 <local machine private ip>:40632 <router public ip>:2222 users:(("ssh", pid=...))

40632 é a porta de saída aleatória usada pelo cliente ssh. Eu digo ao meu cliente de aplicativo para usar o servidor SOCKS5 em localhost:5555 e tentar conectar-se via túnel ao servidor de aplicativo por meio de sua GUI. Isso falha com um erro de entrada/saída na GUI, no terminal eu recebo

channel 3: open failed: connect failed: Connection refused

e no auth.log da máquina remota eu recebo

sshd[<pid>]: error: connect_to <router public ip> port 5555 failed

A mensagem 'channel 3', tendo lido muitas outras fontes sobre isso, geralmente é devido a não haver serviço escutando na porta 5555 na máquina remota. Suponho então que o sshd na máquina remota não pode passar os pacotes agora não criptografados. No meu caso, o serviço do aplicativo está escutando na porta remota 5555: posso ver isso na saída do ss e também consigo conectar a essa porta usando nc na máquina remota, produzindo uma conexão interna estabelecida na saída do ss.

Acho que a mensagem de erro relevante é a que vem do sshd da máquina remota. Isso me diz que o sshd está tentando se conectar à porta 5555 do endereço IP público do roteador, que não é encaminhada e, portanto, falha na conexão (eu verifiquei isso permitindo o encaminhamento dessa porta pelo roteador, mas isso não é uma solução para mim). Minha impressão é que o túnel está funcionando até a parte em que o sshd do remoto deve passar pacotes para a porta de destino no remoto.

O sshd na máquina remota não deveria tentar se conectar ao localhost:5555 da máquina remota em vez de usar o endereço IP público? O que eu posso ter configurado incorretamente aqui?

Ter que encaminhar 5555 pelo roteador prejudica o túnel, então tenho certeza de que configurei algo incorretamente. Mais uma coisa a mencionar é que quando faço tudo pela LAN, o túnel funciona. Como eu disse acima, uma conexão ssh simples pela internet também funciona. Também verifiquei se o firewall da máquina remota não está bloqueando nada, e não está (nenhum bloqueio em ufw.log).

Se eu esqueci de algum detalhe crucial necessário, por favor, me avise. Qualquer ideia sobre isso seria muito apreciada! Obrigado.

ssh-tunnel
  • 2 respostas
  • 50 Views
Martin Hope
davejagoda
Asked: 2025-01-19 06:22:37 +0800 CST

`vagrant box update` falha com erro `metadados para a caixa foram malformados`

  • 6
$ vagrant box update
==> default: Checking for updates to 'ubuntu/jammy64'
    default: Latest installed version: 20231027.0.0
    default: Version constraints: 20241002.0.0
    default: Provider: virtualbox
    default: Architecture: "amd64"
The metadata for the box was malformed. The exact error
is shown below. Please contact the maintainer of the box so
that this issue can be fixed.

unexpected token at '<!DOCTYPE html><html lang="en-us"><head>
    <meta charset="utf-8">
    <title>HashiCorp Cloud Platform</title>
    ...

Isso parece ser devido a uma mudança em metadata_url.

Exemplo prático:

https://vagrantcloud.com/api/v2/vagrant/ubuntu/jammy64

Exemplo não funcional:

https://vagrantcloud.com/ubuntu/jammy64

Quando o URL mudou?

Duas soluções alternativas vêm à mente:

  1. uma linha (por exemplo, com sed) para corrigir esses URLs.
  2. instalando uma caixa nova do mesmo tipo em outro diretório usando vagrant inito que fará com ~/.vagrant.d/boxes/que seja atualizado.
vagrant
  • 1 respostas
  • 330 Views
Martin Hope
Dmitriano
Asked: 2025-01-18 11:08:57 +0800 CST

Onde os erros de sintaxe do PHP8 são registrados?

  • 5

Instalei o LEMP com PHP8 no Ubuntu 24.04 e consegui hospedar um site WordPress.

A única coisa que não consigo descobrir é onde os erros do PHP são registrados.

Por exemplo, criei uma página PHP com um erro:

<?php

phpinfo1();

?>

quando abro esta página o navegador exibe isto:

insira a descrição da imagem aqui

nenhuma mensagem de erro aparece em /var/log/php8.3-fpm.log.

Eu adicionei

error_log = /var/log/php8-error-log.log

para /etc/php/8.3/fpm/php.ini:

insira a descrição da imagem aqui

serviço php-fpm reiniciado

sudo service php8.3-fpm restart

e abri minha página com o erro, mas o arquivo /var/log/php8-error-log.lognão foi criado.

Abaixo forneci meu phpinfo():

insira a descrição da imagem aqui

nginx
  • 1 respostas
  • 46 Views
Martin Hope
Jim
Asked: 2025-01-18 08:28:06 +0800 CST

Como um serviço se autentica em outro usando Kerberos?

  • 6

Como um serviço pode autenticar outro que está registrado no Kerberos? No meu caso, ambos são de propriedade de contas de serviço diferentes, então eles não podem executar o kinit como um usuário comum pode, por exemplo, atualizando-o quando ele expira a cada 10 horas. Então, quando um serviço quer algo do outro, como ele obtém um tíquete Kerberos sem um TGT (tíquete de concessão de tíquete)?

Para ser mais específico, eu executo um servidor web Apache para fornecer acesso aos repositórios do Subversion. Sua conta de serviço e SPN (Service Principal Name) são registrados no Kerberos. Eu também executo um servidor Jenkins que às vezes precisa fazer checkout desses repositórios. Usuários comuns podem autenticar em ambos os servidores: no Apache somente após executar kinit e no Jenkins via LDAP. Como a conta de serviço Jenkins autentica no Apache para acessar um repositório do Subversion, já que ele não pode executar kinit a cada 10 horas, 24/7?

Isso parece similar, mas sem uma boa resposta. E o plugin Jenkins para Kerberos é para autenticar o usuário para Jenkins, não Jenkins para Apache. Há também essa solução obscura e obsoleta, mas não sei se ela se aplica mais. E a questão parece que deveria ser independente de qualquer servidor específico, apenas um servidor tentando autenticar para outro que está em Kerberos.

linux
  • 1 respostas
  • 63 Views
Martin Hope
Jorge Mauricio
Asked: 2025-01-18 07:54:31 +0800 CST

Ubuntu 22.04 - Instalar MySQL 5.7 - Script de automação

  • 5

Estou trabalhando em uma plataforma legada que estamos automatizando a implantação. Ela exigirá várias iterações até chegar ao ponto em que usamos na produção. No momento, estou na etapa de instalação e configuração do MySQL 5.7 básico.

Ambiente

  • Ubuntu 22.04
  • AWS

Neste estágio, é um script Bash Script que rodamos localmente e ele configura tudo no servidor remoto. Mais tarde, converteremos para ações do GitHub e essa estratégia funcionou no passado para nós, então vamos nos ater à arquitetura inicial.

Esta é a prova de conceito funcional que executei manualmente no servidor e funcionou perfeitamente:

# Firewall configuration.
sudo ufw allow 3306/tcp;

sudo wget https://dev.mysql.com/get/mysql-apt-config_0.8.12-1_all.deb;

echo "mysql-apt-config mysql-apt-config/select-server select mysql-5.7" | sudo debconf-set-selections;
echo "mysql-apt-config mysql-apt-config/select-product select Ok" | sudo debconf-set-selections;

# Install MySQL APT configuration package
sudo DEBIAN_FRONTEND=noninteractive dpkg -i mysql-apt-config_0.8.12-1_all.deb;

# Download and add the key directly using the key ID
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys B7B3B788A8D3785C;

# Add the MySQL repository
echo "deb http://repo.mysql.com/apt/ubuntu bionic mysql-5.7" | sudo tee /etc/apt/sources.list.d/mysql.list;

sudo apt-get update;

# Set root password non-interactively
export CONFIG_SERVER_MYSQL_ROOT_PASSWORD='exEm!@123'; # This will be set in the environment variable that I'll show later.
sudo debconf-set-selections <<< "mysql-server mysql-server/root_password password '${CONFIG_SERVER_MYSQL_ROOT_PASSWORD}'";
sudo debconf-set-selections <<< "mysql-server mysql-server/root_password_again password '${CONFIG_SERVER_MYSQL_ROOT_PASSWORD}'";

# Install MySQL 5.7
sudo DEBIAN_FRONTEND=noninteractive apt-get install -y mysql-community-server=5.7* mysql-client=5.7*;

# Stop MySQL
sudo systemctl stop mysql;

# Created MySQL directory and set permissions
sudo mkdir -p /var/run/mysqld;
sudo chown mysql:mysql /var/run/mysqld;
sudo chmod 777 /var/run/mysqld;

# Start MySQL in safe mode
sudo mysqld_safe --skip-grant-tables --skip-networking &

# Wait for MySQL to start
sleep 5;

# Execute MySQL commands
mysql --user=root << EOF
FLUSH PRIVILEGES;
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '${CONFIG_SERVER_MYSQL_ROOT_PASSWORD}';
FLUSH PRIVILEGES;
EOF

# Stop MySQL in safe mode
sudo pkill mysqld;
sleep 5;

# Start MySQL normally
sudo systemctl start mysql;

# Check if the password worked:
mysql -u root -p'sistemA!@2131' -e "SELECT 1;";

# Check verion:
mysql -u root -p"${CONFIG_SERVER_MYSQL_ROOT_PASSWORD}" -e "SELECT VERSION();";

Até agora, foi assim que converti para execução local no script automatizado:

# Here is where the .env variables get loaded.
source "$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )/single-server-load-env.sh";


BACKEND_HOST_SERVER_SH_SCRIPT='
    # Firewall configuration. \
    sudo ufw allow 3306/tcp; \

    # Update package lists \
    sudo wget https://dev.mysql.com/get/mysql-apt-config_0.8.12-1_all.deb; \

    # Set non-interactive mode. \
    echo "mysql-apt-config mysql-apt-config/select-server select mysql-5.7" | sudo debconf-set-selections; \
    echo "mysql-apt-config mysql-apt-config/select-product select Ok" | sudo debconf-set-selections; \

    # Install MySQL APT configuration package. \
    sudo DEBIAN_FRONTEND=noninteractive dpkg -i mysql-apt-config_0.8.12-1_all.deb; \

    # Download and add the key directly using the key ID. \
    # Note: The key is deprecated and may not work somewhere in the future, so be sure to always check if it iss up to date. \
    sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys B7B3B788A8D3785C; \

    # Add the MySQL repository. \
    echo "deb http://repo.mysql.com/apt/ubuntu bionic mysql-5.7" | sudo tee /etc/apt/sources.list.d/mysql.list; \

    # Update package lists. \
    sudo apt-get update; \

    # Set root password non-interactively. \
    sudo debconf-set-selections <<< "mysql-server mysql-server/root_password password '"$CONFIG_SERVER_MYSQL_ROOT_PASSWORD"'"; \
    sudo debconf-set-selections <<< "mysql-server mysql-server/root_password_again password '"$CONFIG_SERVER_MYSQL_ROOT_PASSWORD"'"; \

    # Install MySQL 5.7. \
    sudo DEBIAN_FRONTEND=noninteractive apt-get install -y mysql-community-server=5.7* mysql-client=5.7*; \

    # Stop MySQL \
    sudo systemctl stop mysql; \

    # Created MySQL directory and set permissions. \
    sudo mkdir -p /var/run/mysqld; \
    sudo chown mysql:mysql /var/run/mysqld; \
    sudo chmod 777 /var/run/mysqld; \

    # Start MySQL in safe mode and wait for MySQL to start. \
    sudo mysqld_safe --skip-grant-tables --skip-networking &
    sleep 5; \

    # This next block is probably where I am having syntax issues:
    # Execute MySQL commands. \
    mysql --user=root << EOF
FLUSH PRIVILEGES;
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '${CONFIG_SERVER_MYSQL_ROOT_PASSWORD}';
FLUSH PRIVILEGES;
EOF
        # Did not work
        # Also tried to escape some single quotes but did not work

    # Execute MySQL commands. \
    mysql --user=root -e "FLUSH PRIVILEGES;"; \
    mysql --user=root -e "UPDATE mysql.user SET authentication_plugin='mysql_native_password', Password=PASSWORD('${CONFIG_SERVER_MYSQL_ROOT_PASSWORD}') WHERE User='root';"; \
    mysql --user=root -e "FLUSH PRIVILEGES;";  \
        # Did not work

    # Execute MySQL commands. \
    mysql --user=root -e "FLUSH PRIVILEGES; ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '${CONFIG_SERVER_MYSQL_ROOT_PASSWORD}'; FLUSH PRIVILEGES;"; \
        # Did not work
    

    # Stop MySQL in safe mode. \
    sudo pkill mysqld; \
    sleep 5; \

    # Start MySQL normally. \
    sudo systemctl start mysql; \

    # This block I am also having problems.
    # Check if the password worked: \
    mysql -u root -p'"$CONFIG_SERVER_MYSQL_ROOT_PASSWORD"' -e "SELECT 1;";

    # This one too.
    # Check verion: \
    mysql -u root -p"'"$CONFIG_SERVER_MYSQL_ROOT_PASSWORD"'" -e "SELECT VERSION();";
';

# Write the private key to a temporary file
echo -e "$CONFIG_SERVER_PUBLIC_KEY" > id_rsa_server_private_key_temp.pem;
chmod 600 id_rsa_server_private_key_temp.pem;

# Execute the script on the server
ssh -v -t -t -i id_rsa_server_private_key_temp.pem \
    -o ConnectTimeout=300 \
    -o StrictHostKeyChecking=no \
    ubuntu@"$CONFIG_SERVER_BACKEND_IP" "$BACKEND_HOST_SERVER_SH_SCRIPT";

# Remove the temporary private key
rm id_rsa_server_private_key_temp.pem;

echo "Status check: Basic MySQL 5.7 installation completed.";

Os erros do log do terminal são mais ou menos assim:

# More informatio, but mostly successful.
update-alternatives: using /etc/mysql/mysql.cnf to provide /etc/mysql/my.cnf (my.cnf) in auto mode
Created symlink /etc/systemd/system/multi-user.target.wants/mysql.service → /lib/systemd/system/mysql.service.Processing triggers for man-db (2.10.2-1) ...
Processing triggers for libc-bin (2.35-0ubuntu3.8) ...
NEEDRESTART-VER: 3.5
NEEDRESTART-KCUR: 6.5.0-1022-aws
NEEDRESTART-KEXP: 6.5.0-1022-aws
NEEDRESTART-KSTA: 1
2025-01-17T23:50:05.205820Z mysqld_safe Logging to '/var/log/mysql/error.log'.
2025-01-17T23:50:05.233249Z mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
ERROR 1524 (HY000): Plugin 'auth_socket' is not loaded
                                                      ERROR 1524 (HY000): Plugin 'auth_socket' is not loaded  
                                                                                                            2025-01-17T23:50:11.399290Z mysqld_safe mysqld from pid file /var/run/mysqld/mysqld.pid ended
mysql: [Warning] Using a password on the command line interface can be insecure.
ERROR 1698 (28000): Access denied for user 'root'@'localhost'
mysql: [Warning] Using a password on the command line interface can be insecure.
ERROR 1698 (28000): Access denied for user 'root'@'localhost'
debug1: client_input_channel_req: channel 0 rtype exit-status reply 0
debug1: client_input_channel_req: channel 0 rtype [email protected] reply 0
debug1: channel 0: free: client-session, nchannels 1
Connection to 123.123.123.1 closed.
Transferred: sent 6380, received 26264 bytes, in 39.7 seconds
Bytes per second: sent 160.7, received 661.7
debug1: Exit status 1
Status check: Basic MySQL 5.7 installation completed.

Notas importantes:

  • As variáveis ​​de ambiente CONFIG_SERVER_MYSQL_ROOT_PASSWORDdevem ser capazes de armazenar senhas complexas, como:exEm!@123
  • no arquivo .env, a variável de ambiente é definida como CONFIG_SERVER_MYSQL_ROOT_PASSWORD='exEm!@123' (com aspas simples)

Eu já fiz toneladas de passos automatizados como este. Aqui está um exemplo de passos de trabalho:

# Here is where the .env variables get loaded.
source "$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )/single-server-load-env.sh";

# Step: Create directory for the application (host server)
BACKEND_HOST_SERVER_SH_SCRIPT=' \
    # Create application directory \
    sudo mkdir -p /var/www/'"$APP_URL"'; \
    sudo mkdir -p /var/www/'"$APP_URL"'/public; \

    # Set ownership to root \
    sudo chown root:root /var/www/'"$APP_URL"'; \

    # Set directory permissions to 755 \
    sudo chmod 755 /var/www/'"$APP_URL"'; \

    # echo "Application directory created and permissions set.";
';

# Write the private key to a temporary file
echo -e "$CONFIG_SERVER_PUBLIC_KEY" > id_rsa_server_private_key_temp.pem;
chmod 600 id_rsa_server_private_key_temp.pem;

# Execute the SFTP configuration script on the server
ssh -v -t -t -i id_rsa_server_private_key_temp.pem \
    -o ConnectTimeout=300 \
    -o StrictHostKeyChecking=no \
    ubuntu@"$CONFIG_SERVER_BACKEND_IP" "$BACKEND_HOST_SERVER_SH_SCRIPT";

# Remove the temporary private key
rm id_rsa_server_private_key_temp.pem;

echo "Status check: Application directory created and configured successfully!";

(Apenas mostrando uma simples para ter uma ideia de como a sintaxe para incorporar as variáveis ​​.env funciona perfeitamente)

Alguma ideia que eu possa tentar para corrigir a sintaxe?

linux
  • 1 respostas
  • 36 Views
Martin Hope
marcus erronius
Asked: 2025-01-18 04:45:49 +0800 CST

por que nossa impressora de rede está imprimindo páginas sem sentido não solicitadas?

  • 4

Há pelo menos um ano, a impressora de rede do meu escritório tem despejado aleatoriamente páginas de rabiscos. Ou pelo menos a maior parte é rabiscos - alguns deles parecem solicitações HTTP. É formatado da mesma forma que a impressora faz quando você envia um arquivo de texto sem informações de estilo. Essas páginas são impressas a qualquer hora do dia, às vezes nas primeiras horas da manhã, às vezes tarde da noite. Estamos confusos quanto à causa, e estou preocupado que possa ser um problema de segurança de algum tipo. Incluí uma foto de algumas das páginas que ela imprimiu. O número de páginas é bastante esporádico, às vezes uma ou duas por dia, às vezes 30 ou 40. Alguma ideia?

foto de páginas impressas de solicitações http e jargões

Adendo : Trabalhei brevemente em dois outros locais em nossa organização que tinham esse problema. Um outro que não tinha. Cada local tem seu próprio conjunto de funcionários regulares.

networking
  • 1 respostas
  • 62 Views
Prev
Próximo

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    Você pode passar usuário/passar para autenticação básica HTTP em parâmetros de URL?

    • 5 respostas
  • Marko Smith

    Ping uma porta específica

    • 18 respostas
  • Marko Smith

    Verifique se a porta está aberta ou fechada em um servidor Linux?

    • 7 respostas
  • Marko Smith

    Como automatizar o login SSH com senha?

    • 10 respostas
  • Marko Smith

    Como posso dizer ao Git para Windows onde encontrar minha chave RSA privada?

    • 30 respostas
  • Marko Smith

    Qual é o nome de usuário/senha de superusuário padrão para postgres após uma nova instalação?

    • 5 respostas
  • Marko Smith

    Qual porta o SFTP usa?

    • 6 respostas
  • Marko Smith

    Linha de comando para listar usuários em um grupo do Windows Active Directory?

    • 9 respostas
  • Marko Smith

    O que é um arquivo Pem e como ele difere de outros formatos de arquivo de chave gerada pelo OpenSSL?

    • 3 respostas
  • Marko Smith

    Como determinar se uma variável bash está vazia?

    • 15 respostas
  • Martin Hope
    Davie Ping uma porta específica 2009-10-09 01:57:50 +0800 CST
  • Martin Hope
    kernel O scp pode copiar diretórios recursivamente? 2011-04-29 20:24:45 +0800 CST
  • Martin Hope
    Robert ssh retorna "Proprietário incorreto ou permissões em ~/.ssh/config" 2011-03-30 10:15:48 +0800 CST
  • Martin Hope
    Eonil Como automatizar o login SSH com senha? 2011-03-02 03:07:12 +0800 CST
  • Martin Hope
    gunwin Como lidar com um servidor comprometido? 2011-01-03 13:31:27 +0800 CST
  • Martin Hope
    Tom Feiner Como posso classificar a saída du -h por tamanho 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich O que é um arquivo Pem e como ele difere de outros formatos de arquivo de chave gerada pelo OpenSSL? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent Como determinar se uma variável bash está vazia? 2009-05-13 09:54:48 +0800 CST

Hot tag

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve