Изучение 26 методов анализа больших данных: часть 1
Изучение 26 методов анализа больших данных: часть 1
MariaDB является бесплатной базой данных с открытым исходным кодом и является наиболее широко используемой заменой MySQL. Он сделан разработчиками MySQL и предназначен для бесплатного использования под GNU GPL. Это очень быстрый, масштабируемый и поставляется с богатым набором функций, которые делают его очень универсальным для широкого спектра вариантов использования.
Из этого туториала Вы узнаете, как установить и настроить MariaDB с поддержкой SSL в Ubuntu 16.04.
По умолчанию последняя версия MariaDB недоступна в репозитории Ubuntu 16.04; поэтому вам нужно будет добавить репозиторий MariaDB в вашу систему.
Сначала загрузите ключ с помощью следующей команды:
sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xF1656F24C74CD1D8
Затем добавьте репозиторий MariaDB в /etc/apt/sources.listфайл:
sudo echo "deb [arch=amd64,i386,ppc64el] http://ftp.utexas.edu/mariadb/repo/10.1/ubuntu xenial main" >> /etc/apt/sources.list
Обновите индекс apt с помощью следующей команды:
sudo apt-get update -y
После обновления индекса apt установите сервер MariaDB с помощью следующей команды:
sudo apt-get install mariadb-server -y
Запустите сервер MariaDB и включите его во время загрузки:
sudo systemctl start mysql
sudo systemctl enable mysql
Далее вам нужно будет запустить mysql_secure_installationскрипт для безопасной установки MariaDB. Этот скрипт позволяет установить пароль пользователя root, удалить анонимных пользователей, запретить удаленный вход в систему root и удалить тестовую базу данных:
sudo mysql_secure_installation
Сначала создайте каталог для хранения всех файлов ключей и сертификатов.
sudo mkdir /etc/mysql-ssl
Затем измените каталог /etc/mysql-sslи создайте сертификат CA и закрытый ключ с помощью следующей команды:
sudo cd /etc/mysql-ssl
sudo openssl genrsa 2048 > ca-key.pem
sudo openssl req -new -x509 -nodes -days 365000 -key ca-key.pem -out ca-cert.pem
Ответьте на все вопросы, как показано ниже:
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:IN
State or Province Name (full name) [Some-State]:GUJ
Locality Name (eg, city) []:JND
Organization Name (eg, company) [Internet Widgits Pty Ltd]:ENJ
Organizational Unit Name (eg, section) []:SYSTEM
Common Name (e.g. server FQDN or YOUR name) []:HITESH
Email Address []:example@example.com
Затем создайте закрытый ключ для сервера с помощью следующей команды:
sudo openssl req -newkey rsa:2048 -days 365 -nodes -keyout server-key.pem -out server-req.pem
Ответьте на все вопросы, как вы делали в предыдущей команде.
Затем экспортируйте закрытый ключ сервера в ключ типа RSA с помощью следующей команды:
sudo sudo openssl rsa -in server-key.pem -out server-key.pem
Наконец, сгенерируйте сертификат сервера, используя сертификат CA следующим образом:
sudo openssl x509 -req -in server-req.pem -days 365 -CA ca-cert.pem -CAkey ca-key.pem -set_serial 01 -out server-cert.pem
Теперь вы можете увидеть все сертификаты и ключ с помощью следующей команды:
ls
Вы должны увидеть следующий вывод:
ca-cert.pem ca-key.pem server-cert.pem server-key.pem server-req.pem
Как только вы закончите, вы можете перейти к следующему шагу.
Вы должны иметь все сертификаты и закрытый ключ; и теперь вам нужно будет настроить MariaDB для использования ключа и сертификатов. Вы можете сделать это, отредактировав /etc/mysql/mariadb.conf.d/50-server.cnfфайл:
sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf
Добавьте следующие строки под [mysqld]разделом:
ssl-ca=/etc/mysql-ssl/ca-cert.pem
ssl-cert=/etc/mysql-ssl/server-cert.pem
ssl-key=/etc/mysql-ssl/server-key.pem
##Change this value to connect the MariaDB server from another host.
bind-address = *
Сохраните файл, затем перезапустите сервис MariaDB, чтобы применить эти изменения:
sudo systemctl restart mysql
Теперь вы можете проверить, работает ли конфигурация SSL, с помощью следующего запроса:
mysql -u root -p
MariaDB [(none)]> SHOW VARIABLES LIKE '%ssl%';
Если конфигурация прошла успешно, вы должны увидеть следующий вывод:
+---------------+--------------------------------+
| Variable_name | Value |
+---------------+--------------------------------+
| have_openssl | YES |
| have_ssl | YES |
| ssl_ca | /etc/mysql-ssl/ca-cert.pem |
| ssl_capath | |
| ssl_cert | /etc/mysql-ssl/server-cert.pem |
| ssl_cipher | |
| ssl_crl | |
| ssl_crlpath | |
| ssl_key | /etc/mysql-ssl/server-key.pem |
+---------------+--------------------------------+
Вы должны замечать have_sslи have_opensslзначения включены в выводе выше.
Создайте удаленного пользователя, который имеет право доступа к серверу MariaDB через SSL. Сделайте это, выполнив следующую команду:
Сначала войдите в оболочку MySQL:
mysql -u root -p
Затем создайте пользователя remoteи предоставьте привилегию для доступа к серверу по SSL.
MariaDB [(none)]>GRANT ALL PRIVILEGES ON *.* TO 'remote'@'192.168.0.191' IDENTIFIED BY 'password' REQUIRE SSL;
Затем удалите привилегии с помощью следующей команды:
MariaDB [(none)]>FLUSH PRIVILEGES;
Наконец, выйдите из оболочки MySQL с помощью следующей команды:
MariaDB [(none)]>exit;
Примечание. 192.168.0.191 - это IP-адрес компьютера удаленного пользователя (клиента).
Теперь ваш сервер готов разрешить подключения к удаленному пользователю.
Ваша конфигурация на стороне сервера завершена. Далее вам нужно будет создать новый ключ и сертификат для клиента.
На компьютере сервера создайте клиентский ключ с помощью следующей команды:
sudo cd /etc/mysql-ssl
sudo sudo openssl req -newkey rsa:2048 -days 365 -nodes -keyout client-key.pem -out client-req.pem
Затем обработайте клиентский ключ RSA следующей командой:
sudo openssl rsa -in client-key.pem -out client-key.pem
Наконец, подпишите сертификат клиента с помощью следующей команды:
sudo openssl x509 -req -in client-req.pem -days 365 -CA ca-cert.pem -CAkey ca-key.pem -set_serial 01 -out client-cert.pem
Все сертификаты и ключ готовы для клиента. Затем вам нужно будет скопировать все клиентские сертификаты на любой клиентский компьютер, на котором вы хотите запустить клиент MariaDB.
Вам нужно будет установить клиент MariaDB на клиентском компьютере.
Сначала на клиентском компьютере загрузите ключ для MariaDB с помощью следующей команды:
sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xF1656F24C74CD1D8
Затем добавьте репозиторий MariaDB в /etc/apt/sources.listфайл:
sudo echo "deb [arch=amd64,i386,ppc64el] http://ftp.utexas.edu/mariadb/repo/10.1/ubuntu xenial main" >> /etc/apt/sources.list
Затем обновите индекс apt с помощью следующей команды:
sudo apt-get update -y
После обновления индекса apt установите клиент MariaDB на клиентском компьютере с помощью следующей команды:
sudo apt-get install mariadb-client -y
Теперь создайте каталог для хранения всех сертификатов:
sudo mkdir /etc/mysql-ssl
Затем скопируйте все клиентские сертификаты с серверного компьютера на клиентский компьютер с помощью следующей команды:
sudo scp root@192.168.0.190:/etc/mysql-ssl/client-* /etc/mysql-ssl/
Затем вам нужно будет настроить клиент MariaDB для использования SSL. Вы можете сделать это, создав /etc/mysql/mariadb.conf.d/50-mysql-clients.cnfфайл:
sudo nano /etc/mysql/mariadb.conf.d/50-mysql-clients.cnf
Добавьте следующие строки:
[client]
ssl-ca=/etc/mysql-ssl/ca-cert.pem
ssl-cert=/etc/mysql-ssl/client-cert.pem
ssl-key=/etc/mysql-ssl/client-key.pem
Сохраните файл, когда вы закончите.
Теперь, когда все настроено, пришло время проверить, можете ли вы успешно подключиться к серверу MariaDB или нет.
На клиентском компьютере выполните следующую команду для подключения к серверу MariaDB:
mysql -u remote -h 192.168.0.190 -p mysql
Вам будет предложено ввести remoteпароль пользователя. После ввода пароля вы будете авторизованы на удаленном сервере MariaDB.
Проверьте состояние соединения с помощью следующей команды:
MariaDB [mysql]> status
Вы должны увидеть следующий вывод:
--------------
mysql Ver 15.1 Distrib 10.2.7-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2
Connection id: 62
Current database: mysql
Current user: remote@192.168.0.191
SSL: Cipher in use is DHE-RSA-AES256-SHA
Current pager: stdout
Using outfile: ''
Using delimiter: ;
Server: MariaDB
Server version: 10.0.31-MariaDB-0ubuntu0.16.04.2 Ubuntu 16.04
Protocol version: 10
Connection: 192.168.0.190 via TCP/IP
Server characterset: utf8mb4
Db characterset: utf8mb4
Client characterset: utf8
Conn. characterset: utf8
TCP port: 3306
Uptime: 1 hours 31 min 31 sec
Вы должны увидеть SSL: Cipher in use is DHE-RSA-AES256-SHAв выводе выше. Это означает, что ваше соединение теперь защищено с помощью SSL.
Поздравляем! Вы успешно настроили сервер MariaDB с поддержкой SSL. Теперь вы можете предоставить доступ другим клиентам для доступа к серверу MariaDB через SSL.
Изучение 26 методов анализа больших данных: часть 1
Прочтите блог, чтобы узнать о различных уровнях архитектуры больших данных и их функциях самым простым способом.
Многие из вас знают Switch, который выйдет в марте 2017 года, и его новые функции. Для тех, кто не знает, мы подготовили список функций, которые делают «Switch» обязательным гаджетом.
Вы ждете, когда технологические гиганты выполнят свои обещания? проверить, что осталось недоставленным.
Прочтите это, чтобы узнать, как искусственный интеллект становится популярным среди небольших компаний и как он увеличивает вероятность их роста и дает преимущество перед конкурентами.
По мере того, как наука развивается быстрыми темпами, принимая на себя большую часть наших усилий, также возрастает риск подвергнуться необъяснимой сингулярности. Прочтите, что может значить для нас необычность.
CAPTCHA стало довольно сложно решать пользователям за последние несколько лет. Сможет ли он оставаться эффективным в обнаружении спама и ботов в ближайшем будущем?
Что такое телемедицина, дистанционное здравоохранение и их влияние на будущее поколение? Это хорошее место или нет в ситуации пандемии? Прочтите блог, чтобы узнать мнение!
Возможно, вы слышали, что хакеры зарабатывают много денег, но задумывались ли вы когда-нибудь о том, как они зарабатывают такие деньги? Давайте обсудим.
Недавно Apple выпустила macOS Catalina 10.15.4, дополнительное обновление для исправления проблем, но похоже, что это обновление вызывает больше проблем, приводящих к поломке компьютеров Mac. Прочтите эту статью, чтобы узнать больше