Що таке файл JNLP? Як відкрити один?
Якщо ви не знайомі з файлами JNLP, продовжуйте читати цей посібник, щоб дізнатися більше про них. Також покажіть, як їх відкрити.
Оскільки ІТ-інфраструктура переходить у хмару, а Інтернет речей стає популярним, організації та ІТ-фахівці все більшою мірою використовують загальнодоступні хмарні сервіси. Оскільки сервери та служби, що на них запущені, збільшуються, кількість журналів, створених системою, також збільшується. Аналіз цих журналів дуже важливий в інфраструктурі з кількох причин. Це включає дотримання політики та правил безпеки, усунення несправностей системи, реагування на інциденти, пов’язані з безпекою, або розуміння поведінки користувачів.
Три дуже популярні програми з відкритим кодом під назвою Elasticsearch, Logstash і Kibana об’єднуються, щоб створити Elastic Stack або ELK Stack. Elastic Stack — це дуже потужний інструмент для пошуку, аналізу та візуалізації журналів і даних. Elasticsearch — це розподілений, масштабований і високодоступний додаток у реальному часі для зберігання журналів і пошуку в них. Logstash збирає журнали, надіслані Beats, покращує їх, а потім надсилає до Elasticsearch. Kibana — це веб-інтерфейс, який використовується для візуалізації журналів і корисних даних.
У цьому підручнику ми встановимо останню версію Elasticsearch, Logstash і Kibana з X-Pack на Ubuntu 17.04.
Щоб слідувати цьому посібнику, вам знадобиться 64-розрядний екземпляр сервера Vultr Ubuntu 17.04 з принаймні 4 ГБ оперативної пам’яті . Для виробничого середовища вимоги до обладнання зростають із збільшенням кількості користувачів і журналів.
Цей посібник написаний з sudo
точки зору користувача. Щоб налаштувати користувача sudo, дотримуйтесь посібника з використання Sudo на Debian .
Вам також знадобиться домен, спрямований на ваш сервер, щоб отримати сертифікати від Let's Encrypt CA.
Перед встановленням будь-яких пакетів на екземпляр сервера Ubuntu рекомендується оновити систему. Увійдіть за допомогою користувача sudo і виконайте наступні команди, щоб оновити систему.
sudo apt update
sudo apt -y upgrade
Після завершення оновлення системи перейдіть до наступного кроку.
Для роботи Elasticsearch потрібна Java 8. Він підтримує як Oracle Java, так і OpenJDK. У цьому розділі підручника показано встановлення Oracle Java і OpenJDK.
Make sure that you install any one of the following Java versions. Installation of Oracle Java is recommended for Elasticsearch. However, you may also choose to install OpenJDK according to your preference.
Щоб інсталювати Oracle Java у вашій системі Ubuntu, вам потрібно буде додати Oracle Java PPA, виконавши:
sudo add-apt-repository ppa:webupd8team/java
Тепер оновіть інформацію сховища, виконавши:
sudo apt update
Тепер ви можете легко встановити останню стабільну версію Java 8, запустивши:
sudo apt -y install oracle-java8-installer
Прийміть ліцензійну угоду, коли з’явиться відповідний запит. Після завершення встановлення ви можете перевірити версію Java, запустивши:
java -version
Ви повинні побачити вихід, схожий на:
user@vultr:~$ java -version
java version "1.8.0_131"
Java(TM) SE Runtime Environment (build 1.8.0_131-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.131-b11, mixed mode)
Ви також можете встановити JAVA_HOME
та інші параметри за замовчуванням, встановивши oracle-java8-set-default
. Виконати:
sudo apt -y install oracle-java8-set-default
Тепер ви можете перевірити, чи встановлено JAVA_HOME
змінну, запустивши:
echo "$JAVA_HOME"
Вихід повинен нагадувати:
user@vultr:~$ echo "$JAVA_HOME"
/usr/lib/jvm/java-8-oracle
Якщо ви не отримуєте результат, показаний вище, вам може знадобитися вийти з системи та знову ввійти в оболонку. Oracle Java тепер інстальовано на вашому сервері. Тепер ви можете перейти до кроку 3 підручника, пропускаючи встановлення OpenJDK.
Установка OpenJDK досить проста. Просто виконайте таку команду, щоб встановити OpenJDK.
sudo apt -y install default-jdk
Після завершення встановлення ви можете перевірити версію Java, запустивши:
java -version
Ви повинні побачити вихід, схожий на:
user@vultr:~$ java -version
openjdk version "1.8.0_131"
OpenJDK Runtime Environment (build 1.8.0_131-8u131-b11-2ubuntu1.17.04.2-b11)
OpenJDK 64-Bit Server VM (build 25.131-b11, mixed mode)
Щоб встановити JAVA_HOME
змінну, виконайте таку команду:
sudo echo "JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64" >> /etc/environment
Перезавантажте файл середовища, виконавши:
sudo source /etc/environment
Тепер ви можете перевірити, чи встановлено JAVA_HOME
змінну, запустивши:
echo "$JAVA_HOME"
Вихід повинен нагадувати:
user@vultr:~$ echo "$JAVA_HOME"
/usr/lib/jvm/java-8-openjdk-amd64/
Elasticsearch — це надшвидка, розподілена, високодоступна пошукова система з REST-функцією. Додайте репозиторій Elasticsearch APT, виконавши:
echo "deb https://artifacts.elastic.co/packages/5.x/apt stable main" | sudo tee -a /etc/apt/sources.list.d/elastic-5.x.list
Наведена вище команда створює новий файл сховища для Elasticsearch і додає в нього вихідний запис. Тепер імпортуйте ключ PGP, який використовується для підписання пакетів.
wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -
Оновіть метадані сховища APT, виконавши:
sudo apt update
Встановіть Elasticsearch, виконавши таку команду.
sudo apt -y install elasticsearch
Наведена вище команда встановить останню версію Elasticsearch у вашій системі. Після встановлення Elasticsearch перезавантажте демон служби Systemd, виконавши:
sudo systemctl daemon-reload
Запустіть Elasticsearch і ввімкніть його автоматичний запуск під час завантаження.
sudo systemctl enable elasticsearch
sudo systemctl start elasticsearch
Щоб зупинити Elasticsearch, ви можете запустити:
sudo systemctl stop elasticsearch
Щоб перевірити статус служби, ви можете запустити:
sudo systemctl status elasticsearch
Elasticsearch зараз працює на порту 9200
. Ви можете перевірити, чи він працює та дає результати, виконавши таку команду.
curl -XGET 'localhost:9200/?pretty'
Буде надруковано повідомлення, подібне до наведеного нижче.
user@vultr:~$ curl -XGET 'localhost:9200/?pretty'
{
"name" : "wDaVa1K",
"cluster_name" : "elasticsearch",
"cluster_uuid" : "71drjJ8PTyCcbai33Esy3Q",
"version" : {
"number" : "5.5.1",
"build_hash" : "19c13d0",
"build_date" : "2017-07-18T20:44:24.823Z",
"build_snapshot" : false,
"lucene_version" : "6.6.0"
},
"tagline" : "You Know, for Search"
}
X-Pack is an Elastic Stack plug-in that provides many add on features such as security, alerting, monitoring, reporting, and graph capabilities. X-Pack also provides user authentication for Elasticsearch and Kibana, as well as monitoring of different nodes in Kibana. It is important that X-Pack and Elasticsearch are installed with the same version.
You can install X-Pack for Elasticsearch directly by running:
cd /usr/share/elasticsearch
sudo bin/elasticsearch-plugin install x-pack
To continue the installation, enter y
when prompted. This command will install the X-Pack plugin to your system. When installed, X-Pack enables authentication for Elasticsearch. The default username is elastic
and password is changeme
. You can check if authentication is enabled by running the same command you ran to check if Elasticsearch is working.
curl -XGET 'localhost:9200/?pretty'
Now the output will say that authentication has failed.
user@vultr:~# curl -XGET 'localhost:9200/?pretty'
{
"error" : {
"root_cause" : [
{
"type" : "security_exception",
"reason" : "missing authentication token for REST request [/?pretty]",
"header" : {
"WWW-Authenticate" : "Basic realm=\"security\" charset=\"UTF-8\""
}
}
],
"type" : "security_exception",
"reason" : "missing authentication token for REST request [/?pretty]",
"header" : {
"WWW-Authenticate" : "Basic realm=\"security\" charset=\"UTF-8\""
}
},
"status" : 401
}
Change the default password changeme
by running the following command.
curl -XPUT -u elastic:changeme 'localhost:9200/_xpack/security/user/elastic/_password?pretty' -H 'Content-Type: application/json' -d'
{
"password": "NewElasticPassword"
}
'
Replace NewPassword
with the actual password you want to use. You can check if the new password is set and Elasticsearch is working by running the following command.
curl -XGET -u elastic:NewElasticPassword 'localhost:9200/?pretty'
You will see output showing the successful execution of the query.
Further, edit Elasticsearch configuration file by running:
sudo nano /etc/elasticsearch/elasticsearch.yml
Find the following lines, uncomment the lines and change them according to instructions provided.
#cluster.name: my-application #Provide the name of your cluster
#node.name: node-1 #Provide the name of your node
#network.host: 192.168.0.1
For network.host
, provide the private IP address assigned to the system. Restart the Elasticsearch instance by running:
sudo systemctl restart elasticsearch
Now, instead of localhost
, you will need to use the IP address to run the query using curl
.
curl -XGET -u elastic:NewElasticPassword '192.168.0.1:9200/?pretty'
Replace 192.168.0.1
with the actual private IP address of the server. Now that we have installed Elasticsearch, proceed further to install Kibana.
Kibana is used to visualize the logs and actionable insights using a web interface. It can also be used to manage Elasticsearch. It is recommended to install the same version of Kibana as Elasticsearch.
As we have already added the Elasticsearch repository and PGP key, we can install Kibana directly by running:
sudo apt -y install kibana
The previous command will install the latest version of Kibana on your system. Once Kibana has been installed, reload the Systemd service daemon by running:
sudo systemctl daemon-reload
You can start Kibana and enable it to automatically start at boot time by running:
sudo systemctl enable kibana
sudo systemctl start kibana
You can install X-Pack for Kibana directly by running:
cd /usr/share/kibana
sudo bin/kibana-plugin install x-pack
X-Pack for Kibana has Graph, Machine Learning and Monitoring enabled by default. X-Pack also enables authentication for Kibana. The default username is kibana
and password is changeme
. It is important to change the default password of Kibana user. Run the following command to change the password.
curl -XPUT -u elastic '192.168.0.1:9200/_xpack/security/user/kibana/_password?pretty' -H 'Content-Type: application/json' -d'
{
"password": "NewKibanaPassword"
}
'
Replace 192.168.0.1
with the actual private IP address of the server and NewKibanaPassword
with the new password for Kibana user.
Edit the Kibana configuration file by running:
sudo nano /etc/kibana/kibana.yml
Find the following lines and change the values according to instructions provided.
#elasticsearch.url: "http://localhost:9200"
#elasticsearch.username: "user"
#elasticsearch.password: "password"
Uncomment the lines above and, in elasticsearch.url
provide the URL for Elasticsearch instance. The IP address must be the same IP that was used in elasticsearch.yml
. Further, set the username from user
to elastic
and also provide the password of the elastic user which you have set earlier.
Restart the Kibana instance by running:
sudo systemctl restart kibana
Since we are running Kibana on localhost
at port 5601
, it is recommended to setup a reverse proxy with Apache or Nginx to access Kibana from outside the local network. In this tutorial, we will setup Nginx as a reverse proxy for Kibana. We will also secure the Nginx instance with a Let's Encrypt free SSL certificate.
Install Nginx by running:
sudo apt -y install nginx
Start and enable Nginx to automatically start at boot time.
sudo systemctl start nginx
sudo systemctl enable nginx
Now that the Nginx web server is installed and running, we can proceed to install Certbot, which is the official and automatic Let's Encrypt certificate client. Add Certbot PPA to your system by running:
sudo add-apt-repository ppa:certbot/certbot
Update the repository meta information.
sudo apt update
Now you can easily install the latest version of Certbot by running:
sudo apt -y install python-certbot-nginx
The previous command will resolve and install the required dependencies along with the Certbot package.
Now that we have Certbot installed, generate the certificates for your domain by running:
sudo certbot certonly --webroot -w /var/www/html/ -d kibana.example.com
Do not forget to change kibana.example.com
with your actual domain name. The previous command will use the Certbot client. The certonly
parameter tells the Certbot client to generate the certificates only. Using this option ensures that certificates are not automatically installed, and that Nginx configuration has not changed. Verification will be done by placing the challenge files in the specified webroot
directory.
Certbot will ask you to provide your email address to send the renewal notice. You will also need to accept the license agreement.
To obtain certificates from Let's Encrypt CA, you must ensure that the domain for which the certificates you wish to generate are pointed towards the server. If not, then make the necessary changes to the DNS records of your domain and wait for the DNS to propagate before making the certificate request again. Certbot checks the domain authority before providing the certificates.
The generated certificates are likely to be stored in the /etc/letsencrypt/live/kibana.example.com/
directory. The SSL certificate will be stored as fullchain.pem
and the private key will be stored as privkey.pem
.
Термін дії сертифікатів Let's Encrypt закінчується через 90 днів, тому рекомендується налаштувати автоматичне оновлення для сертифікатів за допомогою cronjobs. Cron — це системна служба, яка використовується для виконання періодичних завдань.
Відкрийте файл завдання cron, виконавши:
sudo crontab -e
Додайте наступний рядок у кінці файлу.
30 5 * * 1 /usr/bin/certbot renew -a nginx --quiet
Вищезазначене завдання cron виконуватиметься щопонеділка о 5:30 ранку. Якщо термін дії сертифіката закінчився, він автоматично поновить його.
Відредагуйте файл віртуального хосту за замовчуванням для Nginx, виконавши таку команду.
sudo nano /etc/nginx/sites-available/default
Замініть наявний вміст наступним.
server {
listen 80 default_server;
server_name kibana.example.com
return 301 https://$server_name$request_uri;
}
server {
listen 443 default_server ssl http2;
server_name kibana.example.com;
ssl_certificate /etc/letsencrypt/live/kibana.example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/kibana.example.com/privkey.pem;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
ssl_ciphers "EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH";
ssl_ecdh_curve secp384r1;
ssl_session_cache shared:SSL:10m;
ssl_session_tickets off;
ssl_stapling on;
ssl_stapling_verify on;
resolver 8.8.8.8 8.8.4.4 valid=300s;
resolver_timeout 5s;
add_header Strict-Transport-Security "max-age=63072000; includeSubdomains";
add_header X-Frame-Options DENY;
add_header X-Content-Type-Options nosniff;
location / {
proxy_pass http://localhost:5601;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
}
Переконайтеся, що ви оновлюєте kibana.example.com
своє фактичне доменне ім’я, а також перевірте шлях до сертифіката SSL та приватного ключа.
Перезапустіть веб-сервер Nginx, виконавши:
sudo systemctl restart nginx
Якщо все було налаштовано правильно, ви побачите екран входу в Kibana. Увійдіть за допомогою імені користувача kibana
та пароля, які ви встановили. Ви повинні успішно увійти в систему та побачити інформаційну панель Kibana. Залиште панель інструментів, поки ми налаштуємо її пізніше.
Logstash також можна встановити через офіційний репозиторій Elasticsearch, який ми додали раніше. Встановіть Logstash, виконавши:
sudo apt -y install logstash
Наведена вище команда встановить останню версію Logstash у вашій системі. Після встановлення Logstash перезавантажте демон служби Systemd, виконавши:
sudo systemctl daemon-reload
Запустіть Logstash і ввімкніть його автоматичний запуск під час завантаження.
sudo systemctl enable logstash
sudo systemctl start logstash
Ви можете встановити X-Pack для Logstash безпосередньо, запустивши:
cd /usr/share/logstash
sudo bin/logstash-plugin install x-pack
X-Pack для Logstash поставляється з користувачем за замовчуванням logstash_system
. Ви можете скинути пароль, виконавши:
curl -XPUT -u elastic '192.168.0.1:9200/_xpack/security/user/logstash_system/_password?pretty' -H 'Content-Type: application/json' -d'
{
"password": "NewLogstashPassword"
}
'
Замініть 192.168.0.1
фактичну приватну IP-адресу сервера та NewLogstashPassword
новий пароль для користувача Logstash.
Тепер перезапустіть службу Logstash, виконавши:
sudo systemctl restart logstash
Відредагуйте файл конфігурації Logstash, виконавши:
sudo nano /etc/logstash/logstash.yml
Додайте наступні рядки в кінці файлу, щоб увімкнути моніторинг екземпляра Logstash.
xpack.monitoring.enabled: true
xpack.monitoring.elasticsearch.url: http://192.168.0.1:9200
xpack.monitoring.elasticsearch.username: logstash_system
xpack.monitoring.elasticsearch.password: NewLogstashPassword
Замініть URL-адресу Elasticsearch і пароль Logstash відповідно до ваших налаштувань.
Тепер ви можете налаштувати Logstash на отримання даних за допомогою різних Beats. Доступні кілька типів Beats: Packetbeat, Metricbeat, Filebeat, Winlogbeat і Heartbeat. Вам потрібно буде встановити кожен Beat окремо.
У цьому посібнику ми встановили Elastic Stack з X-Pack на Ubuntu 17.04. Базовий стек ELK тепер встановлений на вашому сервері.
Якщо ви не знайомі з файлами JNLP, продовжуйте читати цей посібник, щоб дізнатися більше про них. Також покажіть, як їх відкрити.
Очистіть кеш-пам’ять Java Web Start за допомогою команди з діалогового вікна «Виконати» Windows.
Здається, серед деяких користувачів Android існує велика плутанина щодо того, як Java працює на їхніх пристроях. Очевидно, є користувачі, які хотіли б запустити
Як увімкнути або вимкнути повідомлення «Доступне оновлення Java» в Windows і MacOS.
Використання іншої системи? Red5 — це медіасервер із відкритим вихідним кодом, реалізований на Java, який дозволяє запускати багатокористувацькі програми Flash, такі як прямі трансляції
Що вам знадобиться Vultr VPS з принаймні 1 Гб оперативної пам’яті. Доступ по SSH (з правами root/адміністратора). Крок 1: Встановлення BungeeCord Перш за все
Apache Tomcat, створений тією ж організацією, що й популярний веб-сервер Apache, є веб-сервером, який дозволяє обслуговувати відвідувачам веб-сторінки Java. У цьому
Вступ Apache Maven — це безкоштовний інструмент керування проектами з відкритим кодом, який використовується для проектів Java. Ви можете легко керувати створенням проектів, звітами, а
Elasticsearch — популярна система повнотекстового пошуку та аналітики з відкритим вихідним кодом. Завдяки своїй універсальності, масштабованості та простоті використання, Elasticsearch є широким
Використання іншої системи? Gradle — це безкоштовний набір інструментів автоматизації збірки з відкритим вихідним кодом, заснований на концепціях Apache Ant і Apache Maven. Gradle надає
Scala - це об'єктно-орієнтована і функціональна мова програмування. Це популярна мова, яка використовувалася для розробки програм, таких як Spark, Akka, an
Використання іншої системи? GoCD — це система безперервної доставки та автоматизації з відкритим вихідним кодом. Він дозволяє моделювати складні робочі процеси, використовуючи його паралельний an
Оскільки ІТ-інфраструктура переходить у хмару, а Інтернет речей стає популярним, організації та ІТ-фахівці використовують загальнодоступні хмарні послуги для
Використання іншої системи? Red5 — це медіасервер із відкритим вихідним кодом, реалізований на Java, який дозволяє запускати багатокористувацькі програми Flash, такі як прямі трансляції
Apache Tomcat — це веб-сервер з відкритим кодом, призначений для обслуговування веб-сторінок Java. Він широко розгорнутий і підтримує різні критично важливі веб-додатки
У цьому посібнику пояснюється, як встановити Apache Tomcat на сервер Ubuntu 16.04. Передумови Розгорніть новий екземпляр сервера Ubuntu 16.04. Створіть некореневий sud
Apache Maven — це безкоштовний інструмент управління проектами програмного забезпечення з відкритим вихідним кодом, який широко використовується для розгортання програм на основі Java. Передумови A newl
У цьому посібнику ви дізнаєтеся, як вручну встановити Java 8 на Ubuntu 16.04. Інструкції в цьому посібнику працюватимуть і в інших версіях Ubuntu
Вступ Java – це популярна програмна платформа, яка дозволяє розробляти та запускати Java-додатки та аплети в різних апаратних середовищах. Там ар
Використання іншої системи? Gradle — це безкоштовний набір інструментів автоматизації збірки з відкритим вихідним кодом, заснований на концепціях Apache Ant і Apache Maven. Gradle надає
Штучний інтелект не в майбутньому, він тут прямо в сьогоденні У цьому блозі Прочитайте, як програми штучного інтелекту вплинули на різні сектори.
Ви також стали жертвою DDOS-атак і спантеличені методами запобігання? Прочитайте цю статтю, щоб вирішити свої запитання.
Можливо, ви чули, що хакери заробляють багато грошей, але чи замислювалися ви коли-небудь, як вони заробляють такі гроші? давайте обговоримо.
Ви хочете побачити революційні винаходи Google і як ці винаходи змінили життя кожної людини сьогодні? Тоді читайте в блозі, щоб побачити винаходи Google.
Концепція самокерованих автомобілів, щоб вирушати в дороги за допомогою штучного інтелекту, є мрією, яку ми давно мріємо. Але, незважаючи на кілька обіцянок, їх ніде не видно. Прочитайте цей блог, щоб дізнатися більше…
Оскільки наука розвивається швидкими темпами, бере на себе багато наших зусиль, ризики піддати себе незрозумілій Сингулярності також зростає. Читайте, що може означати для нас сингулярність.
Методи зберігання даних можуть розвиватися з моменту народження Даних. Цей блог висвітлює еволюцію зберігання даних на основі інфографіки.
Прочитайте блог, щоб дізнатися про різні шари архітектури великих даних та їх функціональні можливості найпростішим способом.
У цьому цифровому світі пристрої розумного дому стали важливою частиною життя. Ось кілька дивовижних переваг пристроїв розумного дому щодо того, як вони роблять наше життя гідним життя та спрощують його.
Нещодавно Apple випустила додаткове оновлення macOS Catalina 10.15.4, щоб виправити проблеми, але схоже, що оновлення викликає більше проблем, що призводять до блокування комп’ютерів Mac. Прочитайте цю статтю, щоб дізнатися більше