CentOS7でntpサーバ構築(chrony使用)



公開:2020/05/19
更新:2020/05/19

環境


OS:CentOS7.7
ntpサーバ:10.167.10.10
ntpクライアント:192.168.100.100/24
          10.0.0.100/24

手順




・インストール
yum install -y chrony

・設定ファイルのバックアップ
cp -p /etc/chrony.conf /etc/chrony.conf.org

・設定ファイルの更新
vi /etc/chrony.conf


# Use public servers from the pool.ntp.org project.
# Please consider joining the pool (http://www.pool.ntp.org/join.html).
server 0.centos.pool.ntp.org iburst
server 1.centos.pool.ntp.org iburst
server 2.centos.pool.ntp.org iburst
server 3.centos.pool.ntp.org iburst

Server にこのサーバから時刻同期を取りに行くサーバのFQDNやIPアドレスを記載します。

# Allow NTP client access from local network.
allow 192.168.0.0/16
allow 10.0.0.0/8

allow ディレクティブにクライアントからアクセスを許可するIPアドレスを記載します。

・chronyの再起動
systemctl restart chronyd

クライアントの設定





・時刻同期状態の確認
chronyc sources

[centos ~]$ chronyc sources
210 Number of sources = 4
MS Name/IP address Stratum Poll Reach LastRx Last sample
\===============================================================================
^+ 122x215x240x52.ap122.ftt> 2 9 377 138 -348us[ -348us] +/- 32ms
^- flightplandatabase.com 2 9 353 186 -377us[ -377us] +/- 154ms
^+ hit-bridge.com 2 9 377 889 -871us[ -957us] +/- 27ms
^* tama.paina.net 2 9 377 503 +221us[ +140us] +/- 25ms
[centos@ip-10-167-20-136 ~]$

・時刻同期先の変更
vi /etc/chrony.conf

# Use public servers from the pool.ntp.org project.
# Please consider joining the pool (http://www.pool.ntp.org/join.html).
#server 0.centos.pool.ntp.org iburst
#server 1.centos.pool.ntp.org iburst
#server 2.centos.pool.ntp.org iburst
#server 3.centos.pool.ntp.org iburst
server 10.167.10.10

・chronyの再起動
systemctl restart chronyd

おまけ





・クライアントがntpdの場合の時刻同期先の確認
ntpq -p

[root@ip] etc # ntpq -p
remote refid st t when poll reach delay offset jitter
\==============================================================================
10.167.10.10 133.243.238.163 2 u 2 64 1 1.952 17.270 0.000
*LOCAL(0) .LOCL. 10 l 2 64 377 0.000 0.000 0.000
[root@ip] etc #

・時刻同期先の更新
vi /etc/ntp.conf

#
# --- GENERAL CONFIGURATION ---
#
# Undisciplined Local Clock. This is a fake driver intended for backup
# and when no outside source of synchronized time is available. The
# default stratum is usually 3, but in this case we elect to use stratum
# 0. Since the server line does not have the prefer keyword, this driver
# is never used for synchronization, unless no other other
# synchronization source is available. In case the local host is
# controlled by some external source, such as an external oscillator or
# another protocol, the prefer keyword would cause the local host to
# disregard all other synchronization sources, unless the kernel
# modifications are in use and declare an unsynchronized condition.
#
server 10.167.10.10
server 127.127.1.0      # local clock
fudge  127.127.1.0 stratum 10

・ntpdの再起動
systemctl restart ntpd

久しぶりにみてみると、モバイルバッテリーもずいぶん安くなってるんですね!

皆さん既にやってると思いますが、 AmazonPrimeだとAmazon Music Unlimitedが月額780円でできるんですね!
最近知ってapple musicから乗り換えました。(200円ですが安い方がいいに越したことはないです笑)

下のPythonの本は kindle unlimitedで無料で読めますのでお勧めです!(30日無料期間に読んで解約もアリだと思います。笑)



【tech】CentOS8でダミーファイルを作成する方法



公開:2020/05/12
更新:2020/05/12

仕事でhttp通信確認をしていて、大きめのダミーファイルを作成する必要があったので、調べたメモです。

・10メガバイトの「bigfile」というダミーファイルを作るときのコマンドです。
fallocate -l 10m bigfile

※GBだと「fallocate -l 1g bigfile」、kbだと「fallocate -l 1k bigfile」500バイトだと「fallocate -l 500 bigfile」となります




久しぶりにみてみると、モバイルバッテリーもずいぶん安くなってるんですね!

皆さん既にやってると思いますが、 AmazonPrimeだとAmazon Music Unlimitedが月額780円でできるんですね!
最近知ってapple musicから乗り換えました。(200円ですが安い方がいいに越したことはないです笑)

下のPythonの本は kindle unlimitedで無料で読めますのでお勧めです!(30日無料期間に読んで解約もアリだと思います。笑)



CentOS8の初期設定まとめメモ(ユーザ・グループ作成など)



公開:2020/05/13
更新:2020/05/13

最近自宅環境の整備ばっかりやっているのですが、自宅サーバにVMを作りまくっていたら、パーティションの設定がうまくできておらず、root領域が枯渇してしまっていました。。

やっぱり、基本に立ち返り、作業用ユーザを作ったり、グループ管理や、権限管理などしっかりして普段のプライベート使いから感覚を身に着けていかなきゃいけないなと思うようになりました。

まだ作成途中ですが、Linuxをインストールしたり、自宅環境を作った時の初期設定をまとめていこうと思います。

環境


OS:CentOS8

手順





・既存ユーザの確認
cat /etc/passwd

・ユーザ作成
useradd mas

・PW設定
passwd mas123

・既存グループの確認
cat /etc/group

・グループの作成
groupadd op

・masをopグループに追加
usermod -aG op mas

・sudoできるようにする場合は
usermod -aG wheel mas

・masにスイッチ
su mas

・所属しているグループを確認
id

コマンドメモ

・カーネルの確認
uname -r

・pciデバイスの確認
lspci

久しぶりにみてみると、モバイルバッテリーもずいぶん安くなってるんですね!

皆さん既にやってると思いますが、 AmazonPrimeだとAmazon Music Unlimitedが月額780円でできるんですね!
最近知ってapple musicから乗り換えました。(200円ですが安い方がいいに越したことはないです笑)

下のPythonの本は kindle unlimitedで無料で読めますのでお勧めです!(30日無料期間に読んで解約もアリだと思います。笑)



CentOS8.1へZabbix5.0をインストールしたメモ




公開日:2020/05/13
更新日:2020/05/13

Zabbix5.0がリリースされたという事で早速インストールしてみました!!

ひとまず手順のみのメモです!
!!質問があればお気軽にコメントください!!
(わたし自身も成長の為に質問頂きたいので、ぜひご質問ください!)

インストールできたらNW機器を追加する手順もblogに書いたので是非見てくださいっ!

zabbix4.0からNW機器(vyos)を監視する(Add NW Device)

KVM(vBridge)のセットアップ手順です!

CentOS8.0 + Zabbix4.4のNginx版です!

環境


CentOS8.1 (minimal) on KVM
(IP:192.168.100.101)
WEB:Apache
DB:MySQL
MySQLDB rootユーザPW:Root123!
zabbix用DB名:zabbixDB
zabbixDB ユーザ:zabbixuser
zabbixuser PW:Zabbix123!


私が使っているPC(のメモリが8GBの物)です!
私は今このPCのメモリを現在では32GBにアップグレードして使っています!笑
安くなりましたよねメモリ。SSDも安くなってるので買い換えたいです!笑

※teratermを使用してCentOSへアクセス


手順


・zabbixのリポジトリ追加
rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/8/x86_64/zabbix-release-5.0-1.el8.noarch.rpm

・キャッシュ削除
dnf clean all

・zabbixインストール
dnf install -y zabbix-server-mysql zabbix-web-mysql zabbix-agent2 zabbix-web-japanese zabbix-apache-conf

・Apache・PHP・MySQLのインストール
dnf install -y httpd php mysql-server

・php.iniの設定
vi /etc/php.ini
 下記の通りに値を編集


約383行目
max_execution_time = 30
→max_execution_time = 300
 ※:%s/max_execution_time = 30/max_execution_time = 300/gc
  で置換できます

約393行目
max_input_time = 60
→max_input_time = 300
 ※:%s/max_input_time = 60/max_input_time = 300/gc
  で置換できます

約672行目
post_max_size = 8M
→post_max_size = 16M
 ※:%s/post_max_size = 8M/post_max_size = 16M/gc
  で置換できます

約902行目
;date.timezone =
→date.timezone = "Asia/Tokyo"
 ※:%s/;date.timezone =/date.timezone = "Asia\/Tokyo"/gc
  で置換できます。




・ディレクトリ移動
cd /etc/php-fpm.d/

・使用しないファイルのリネーム
mv www.conf www.conf.bk

・php-fpmの設定を編集
vi /etc/php-fpm.d/zabbix.conf
 →コメントアウトを外し。timezoneをAsia/Tokyoへ


24行目
; php_value[date.timezone] = Europe/Riga
→php_value[date.timezone] = Asia/Tokyo
 


・Mysqlのステータスの確認
systemctl status mysqld

・Mysqlの自動起動設定
systemctl enable mysqld

・Mysqlの自動起動設定
systemctl start mysqld

・Mysqlのステータス確認
systemctl status mysqld

データベースの作成
・初期設定
mysql_secure_installation
→初期PWを変更して、rootPWも変更しておく。
 そのほかはすべてyでOK


Press y|Y for Yes, any other key for No:
→何も入力せずにenter

New password:
 →rootPWを入力
  Root123!
Re-enter new password:
 →rootPWを入力
  Root123!

以降は4回全て「y」でOKです。





・mysqlモードへ移行
mysql -uroot -p
→Enter passwod:Root123!

・zabbix用データベースの作成
create database zabbixDB character set utf8 collate utf8_bin;

・Zabbixユーザの作成
create user zabbixuser@localhost identified by 'Zabbix123!';

・データベースへユーザ/PWの作成
grant all privileges on zabbixDB.* to zabbixuser@localhost;

・mysqlモードを終了
exit

・データベース「zabbix」のテーブル作成用のsql文を実行
zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbixuser -p zabbixDB
:Enter password: Zabbix123!

・作成後の確認
mysql -uroot -p zabbixDB
PW:Root123!

・databaseの確認
show databases;

・mysqlモードを終了
exit


・Apacheのステータス確認
systemctl status httpd

・Apacheの自動起動
systemctl enable httpd

・phpステータス確認
systemctl status php-fpm

・phpの自動起動
systemctl enable php-fpm

・zabbixのステータスの確認
systemctl status zabbix-server

・zabbixの自動起動設定
systemctl enable zabbix-server
→この時点でzabbix起動させてもうまくいきません。
 おそらくSELinuxのせいです。

・zabbixフロントの設定
vi /etc/zabbix/zabbix_server.conf


DBパスワードを記載
91行目付近の下記ディレクティブに値をいれる
・DBHost=localhost
・DBName=zabbixDB
・DBUser=zabbixuser
・DBPassword=Zabbix123!





・firewall追加
firewall-cmd --add-service=http --permanent

・selinuxのステータスを確認
getenforce
:Enforcing

・selinuxをdisabledにする
vi /etc/sysconfig/selinux
→SELINUX=disabled

・selinux、FWの変更を反映させるために再起動
reboot

ブラウザから「IPアドレス」へアクセス
(firefoxなどを立ち上げて、「192.168.100.101/zabbix」へアクセス)

※ダメだったら
Apache、mysqld、zabbix-serverの再起動を試してみましょう
→Mysqlの再起動
systemctl restart mysqld



ブラウザアクセスが成功したら、初期設定する。

Welcome to zabbixの画面
→Next step

Check of pre-requisites
→Next step

Configure DB connection
下記の通りにそれぞれ入力
・DBName=zabbixDB
・DBUser=zabbixuser
・DBPassword=Zabbix123!
→Next step

Zabbix server details
→Nameに任意のサーバ名記入

Pre-installation summary
→Next step

Install
Congratulations! You have successfully installed Zabbix frontend.
→Finish

ZabbixのTOP画面※下記は初期ユーザ/パスワード
Username:Admin
Password:zabbix

以上です。


下のRedmineとZabbixの本は kindle unlimitedで無料で読めますのでお勧めです!(30日無料期間に読んで解約もアリだと思います。笑)



【tech】elk elastic search filebeatの設定中に出たエラー解決メモ



公開:2020/05/09
更新:2020/05/09

CentOS8にelk elastic stackのfilebeatをセットアップ中に出たエラーの解決方法のメモです。
elastic searchとlogstashとkibanaは先日からセットアップ済みで手順はまとめ中なのですが、先にfilebeatをセットアップしてました。filebeatもまとまり次第一緒に手順としてアップロードしたいと思っています!

インストール中に3つのエラーにハマったのでメモしておきます!

環境


OS:CentOS8
ログの転送先:logstash

エラーメッセージ①


Error initializing beat: error unpacking config data: more than one namespace configured accessing 'output' (source:'/etc/filebeat/filebeat.yml')

解決方法


filebeat.ymlファイルの編集
→ログの転送先を1か所に編集したら解決
 →下記の場合elastic searchとlogstash両方にoutputすることになっています。
 今回はlogstashにoutputしたいので、「output.elasticsearch」をコメントアウトします。




#-------------------------- Elasticsearch output ------------------------------
output.elasticsearch: ★この行をコメントアウト
#Array of hosts to connect to.
hosts: ["localhost:9200"]

#Protocol - either http (default) or https.
#protocol: "https"

#Authentication credentials - either API key or username/password.
#api_key: "id:api_key"
#username: "elastic"
#password: "changeme"

#----------------------------- Logstash output --------------------------------
output.logstash:
#The Logstash hosts
hosts: ["localhost:5044"]

#Optional SSL. By default is off.
#List of root certificates for HTTPS server verifications
#ssl.certificate_authorities: ["/etc/pki/root/ca.pem"]

#Certificate for SSL client authentication
#ssl.certificate: "/etc/pki/client/cert.pem"

#Client Certificate Key
#ssl.key: "/etc/pki/client/cert.key"

#================================ Processors =====================================

原因


ログの転送先としてelastic searchとlogstashの両方が設定されていることが原因?
詳しくはオフィシャルドキュメントをご確認お願いいたします!

エラーメッセージ②


Error initializing beat: error loading config file: yaml: line 163: mapping values are not allowed in this context

解決方法


filebeat.ymlファイルの編集
→コメント行をコメントアウトしてしまっていた




#----------------------------- Logstash output --------------------------------
output.logstash:
** The Logstash hosts** ★この行をコメントアウト
hosts: ["localhost:5044"]

#Optional SSL. By default is off.
#List of root certificates for HTTPS server verifications
#ssl.certificate_authorities: ["/etc/pki/root/ca.pem"]

#Certificate for SSL client authentication
#ssl.certificate: "/etc/pki/client/cert.pem"

#Client Certificate Key
#ssl.key: "/etc/pki/client/cert.key"


原因


コメント行も間違えてコメントアウトしてしまっていたせいで、設定行として認識されていたのかと思います。正しい原因は、こちらもオフィシャルのドキュメントをご確認ください

エラーメッセージ③


Exiting: 1 error: invalid config: yaml: line 7: did not find expected key
filebeat.service: Main process exited, code=exited, status=1/FAILURE
filebeat.service: Failed with result 'exit-code'.

filebeat.service: Start request repeated too quickly.
filebeat.service: Failed with result 'exit-code'.
Failed to start Filebeat sends log files to Logstash or directly to Elasticsearch..

解決方法


/etc/filebeat/modules.d/system.ymlファイルの編集
→列ずれを起こしていた。
→ymlファイルのなのでインデントに意味を持ちます。下記の太字の行のインデントを修正(上に合わせる)すれば解決しました



#Module: system
#Docs: https://www.elastic.co/guide/en/beats/filebeat/7.6/filebeat-module-system.html

- module: system
#Syslog
syslog:
enabled: true
var.paths: ["/var/log/messages"] ★この行のインデントを修正

\ #Set custom paths for the log files. If left empty,
\ #Filebeat will choose the paths depending on your OS.
\ #var.paths:

#Authorization logs
auth:
enabled: true 
var.paths: ["/var/log/secure"] ★この行を参考にインデントをそろえる
#Set custom paths for the log files. If left empty,
#Filebeat will choose the paths depending on your OS.
#var.paths:


原因


ymlファイルはインデントに意味があります。「enable:true」の行と「var.paths」の行頭をそろえてあげれば解決しました。

久しぶりにみてみると、モバイルバッテリーもずいぶん安くなってるんですね!

皆さん既にやってると思いますが、 AmazonPrimeだとAmazon Music Unlimitedが月額780円でできるんですね!
最近知ってapple musicから乗り換えました。(200円ですが安い方がいいに越したことはないです笑)

下のPythonの本は kindle unlimitedで無料で読めますのでお勧めです!(30日無料期間に読んで解約もアリだと思います。笑)