まずエラーログから確認すること。/var/log/以下に対象のエラーファイルがないか
探すこと。
今回の場合は、パスフレーズの設定が前回と不一致であったとのエラーログを確認した。
実際に、confファイルを確認すると以下に記載されていたファイルを確認すると確かにパスフレーズが不一致であった。
SSLPassPhraseDialog exec:/path/to/program:
パスフレーズを一致させるとhttpdが無事に起動した。
エラーログを確認せずに当てずっぽうに修正すると時間の無駄なので反省をしたい。
カテゴリー: IT
【CloudLinux 】ユーザ側でコマンドが表示されない場合
CloudLinuxサーバでroot側でrsyncがインストールされているのに、
cagefsにてユーザ側でrsyncがインストールされていない事象があった。
以下リンクによるとcagefsを有効にすると
デフォルトで無効になっているコマンドの一部にユーザ側にあるらしい
https://www.elinux.co.in/enable-rsync-for-users-on-cloudlinux/
その場合、ホスト側でインストールを追加する必要があった。
まずはrsyncされているか確認する
[/]# cagefsctl --list-rpm | grep -i rsync
何もリストにかえってこない場合、
以下コマンドにてrsyncをインストール可能
ユーザ側でrsyncが利用可能になっていれば解決
[[/]# cagefsctl --addrpm rsync
[/]# cagefsctl --update
webサイトにIPアドレスでのアクセスをブロックする
セキュリティ的にwebサイトにIPアドレスでのアクセスをブロックすることを推奨します(Ddos攻撃とか)
今回はapacheの場合を記載します
Apache設定ファイルの編集:
通常、Apacheの設定ファイルは/etc/apache2/sites-available/または/etc/httpd/conf.d/にあります。000-default.conf や default.conf という名前のファイルを編集します。
ServerName domain.com
ServerAlias www.domain.com
DocumentRoot /var/www/html
<Directory /var/www/html>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
# IPでのアクセスを拒否する設定
<Location />
SetEnvIf Host ^[0-9\.]+$ ip_request
Order Allow,Deny
Allow from all
Deny from env=ip_request
</Location>
ファイルを保存後にapacheを再起動します
sudo systemctl restart apache2
【サーバ移転】.htpasswdのパスを変更すること
cssで500エラーとなりサイトくずれが発生。何事かと思ったが、.htaccessの設定が問題
AuthUserFile
の箇所を移転先のサーバのパスに変更しましょう
パスはpwdコマンドで確認出来ます。
.htaccess
ファイルの更新
新しいサーバーのディレクトリ構造が異なる場合、.htaccess
ファイルの AuthUserFile
ディレクティブを更新する必要があります。新しいパスを指定してください。
AuthType Basic
AuthName "Restricted Area"
AuthUserFile /new/path/to/.htpasswd
Require valid-user
sshpassだとfor文ができないから対処した
目的
数多のIPがあり複数のパスワード候補の中で、どのパスワードがssh接続できるかを知りたい
問題点
sshpassコマンドで for文を回すとなぜか一回の処理で終わる
解決方法ssh
コマンドに -n
オプションを追加して解決した。
参考
https://tech.kurojica.com/archives/36145/
コード例
#!/bin/sh
success_log="success.log"
failure_log="failure.log"
passwords=('password1' 'password2' 'password3')
# ログファイルを初期化
> $success_log
> $failure_log
while read -r ip_address; do
echo "Attempting login to $ip_address..."
success=false
# 3つの異なるパスワードを試行
for password in "${passwords[@]}"; do
sshpass -p "$password" ssh -o StrictHostKeyChecking=no -p 32122 -n user@$ip_address "echo 'SSH connection successful!'"
# スクリプトの実行結果に基づいてログを分ける
if [ $? -eq 0 ]; then
success=true
echo "Success: $ip_address (Password: $password)" >> $success_log
break # ログイン成功したらループを抜ける
fi
done
# パスワード試行がすべて失敗した場合
if [ "$success" = false ]; then
echo "Failure: $ip_address (All Passwords Failed)" >> $failure_log
fi
done < iplist.txt
echo "Script execution completed."
簡単な解説
passwordsに判別したいパスワードを入力します
その結果は以下に吐き出されます。
success_log="success.log"
failure_log="failure.log"
Success: xxx.xxx.xxx.xxx (Password: password1)
FQDNとは?メールやウェブサイトにおける完全修飾ドメイン名の重要性
ウェブサイトやメールサービスを利用する際に、よく「FQDN」という言葉を聞くことがあるかもしれません。FQDNは、「Fully Qualified Domain Name(完全修飾ドメイン名)」の略で、インターネット上で唯一のドメインを特定するための完全なドメイン名です。今回は、FQDNについて詳しく解説していきます。
FQDNは、DNS(Domain Name System)システムで使用されるドメイン名の表現方法です。DNSは、ドメイン階層の管理を行い、ドメイン名から対応するIPアドレスやメールサーバーの情報を見つけるために使われます。FQDNは、ルートドメインから始まり、全ての階層を正確に示すことが特徴です。
FQDNの例を挙げてみましょう:
www.example.com.
この例では、「www」というサブドメインが「example.com」というドメインの下にあります。最後のドット(.)がないと相対ドメイン名となり、現在のコンテキストに基づいて解釈されますが、FQDNは全ての階層を示すため、ドメイン階層が一意に特定されます。
FQDNの重要性は、インターネット上での正確な名前解決にあります。ウェブサイトやメールサーバーなどのインターネットリソースは、FQDNによって一意に識別されるため、正確なアクセスやメールの送受信が可能になります。FQDNを使用することで、ドメイン名の競合や混乱を防ぎ、信頼性のある通信環境を確立できます。
ウェブサイトを構築する際には、FQDNを正確に設定することで、正しいアクセスやSEO(検索エンジン最適化)の向上に貢献します。また、メールサーバーの設定においても、SPFやDKIM(DomainKeys Identified Mail)などのセキュリティ技術を正しく適用するためにFQDNが必要です。
今回私自身もSPFに記載するときに、ドメインの末尾に.[ドット]が必要か悩んだために記載しました。
基本的に、.[ドット]がドメインの末尾にあれば、記載通りのドメインが表示されると思っておきます。
サーバーのスペック情報をSSH接続で確認
- CPU、クロック、コア数/スレッド数を確認するには、以下のコマンドを使用します:
cat /proc/cpuinfo | grep "model name" # CPUモデル名
cat /proc/cpuinfo | grep "cpu MHz" # クロック周波数
cat /proc/cpuinfo | grep "cpu cores" # コア数
cat /proc/cpuinfo | grep "siblings" # スレッド数(ハイパースレッディング対応時)
- メモリを確認するには、以下のコマンドを使用します:
cat /proc/meminfo | grep "MemTotal" # インストールされているメモリの総容量
- 内蔵ストレージとRAIDの構成を確認するには、以下のコマンドを使用します:
fdisk -l # ディスクパーティションの情報を表示
cat /proc/mdstat # RAIDのステータスと構成を表示
ただし、RAIDの情報を表示するためには、システムがRAIDを使用している必要があります。
以上のコマンドを使用して、指定されたスペック情報をSSH接続で確認することができます。
SFPの基本について
SFPとは
光ファイバーのケーブルを通すためのポート。
SFPトランシーバが必要になる。
SFPトランシーバについて
以下のサイトの通り、SFPトランシーバには、「SFP」と「SFP+」がある。
それぞれネットワーク通信の速度が違う。
SFPは1Gbps
SFP+は10Gbps
SFPの種類について
https://community.fs.com/jp/blog/sfp-module-what-is-it-and-how-to-choose-it.html
SFPの取り付け、取り外し方
https://www.alaxala.com/jp/techinfo/archive/manual/AX7800S/HTML/10_10_/HARDWARE/0104.HTM
取り外すときはレバーを下げてから取り出すと覚えておく。
光ファイバケーブルについて
光ファイバケーブルは2本で構成されており、
送信用のTX,受信用のRXがある。
光ファイバケーブルで通信をする場合、送信元がTXの場合、送信先をRXにする。
送信元がRXの場合、送信先をTXにすることでリンクアップすることに注意する。
https://www.itbook.info/network/phy02.html
ファイルストレージについてやっと興味を持つ
ファイルシステムとか言葉をよく聞きつつもあまり理解していなかった。
最近、AWSの資格勉強をするうちに
Fsxだの、EFSだのEBS、S3と知るうちにファイルストレーががに興味を持った。
しかし、ファイルシステムとファイルストレージの意味は違う。
まずは用語の意味を整理
ファイルシステム...ストレージ上のファイルを管理する仕組み
ファイルストレージ...データをファイルやフォルダの単位で階層構造として管理するストレージ。
なお、他にもブロックストレージやオブジェクトストレージがある。
つまり、ファイルストレージを管理するのがファイルシステムと覚えておく。
なので、Linux等でファイルシステムをマウントするってことは、Linuxのディレクトリ構造に何かしらのファイルストレージを追加するって思っておこう。
その上での疑問点。
LinuxやWindowsのファイル形式ってどうなっているのか?
ファイルシステム(FAT32、FAT16、NTFS、exFAT、HFS、HFS+、APFS)の違いについて
https://www.buffalo.jp/support/faq/detail/1079.html
APFSとは? MacOSで使われているファイルシステムについて解説
https://www.logitec.co.jp/data_recovery/column/vol107/
Linux&Windows混在環境でのバックアップとファイルシステム
https://slacknotebook.com/linux-windows-data-backup-and-filesystem/
NTFSがベストらしい。
スプラ3からネットワークを学ぶ
https://xtech.nikkei.com/atcl/nxt/column/18/02253/110900002/?P=3
スプラ3のネットワークをキャプチャしてみたという記事
・スプラ2ではP2P(ユーザー同士でNAT超えで接続)スプラ3はGCPのリレーサーバーを通じて通信を実施することでNATタイプがDでもプレイできるようになった
※Nintendo SwitchのNATタイプ判定はA、B、C、D、Fまであり、Aから順に回線が安定している。
・リレーサーバーを中継するとP2Pより遅延が発生するかとの懸念があるが、筆者曰く、遅延はパケットが通る経路にも依存するので、リレーサーバーを経由するほうが最短になることもあるとのこと。
所感
現在、スプラ3は通信エラーが多いのでキャプチャとれるもんならログを取得してみたい。