GMOクラウド 1GB
メールに記載の下記情報でサーバーに接続
――――――――――――――――――――――――――――――――
■サーバー設定情報
――――――――――――――――――――――――――――――――
メインドメイン名:
IPアドレス :xxx.xxx.xxx.xxx
管理者ID :root
管理者パスワード:xxxxxxx
パスワード認証から秘密鍵認証へ変更
参照:https://help.sakura.ad.jp/206208161/?_ga=2.18645681.906969054.1587800781-460226341.1572180545
TeraTermで秘密鍵を作成、サーバーにアップロードする
chmod 700 .ssh
cat id_rsa.pub > .ssh/authorized_keys
chmod 600 .ssh/authorized_keys
rm -f id_rsa.pub
# rootユーザーで実行
vi /etc/ssh/sshd_config
# Port 22
↓
# ポート番号を変更
Port 10022(例)
# PasswordAuthentication yes
↓
# パスワード認証を無効
PasswordAuthentication no
# 設定を適用
systemctl restart sshd
# port解放されているか確認
ssh root@localhost -p 10022
@が入力できないときは下記
ssh -l root localhost -p 10022
# 開いてない
ssh: connect to host localhost port 10022: Connection refused
# ファイヤーウォール設定変更
vi /usr/lib/firewalld/services/ssh.xml
<port protocol="tcp" port="22"/>
↓
<port protocol="tcp" port="10022"/>
sudo firewall-cmd --reload
systemctl restart firewalld
systemctl restart sshd
# port解放されているか確認
ssh root@localhost -p 10022
The authenticity of host '[localhost]:22728 ([127.0.0.1]:22728)' can't be established.
ブートファイルのバックアップ
cp /boot/grub2/grub.cfg /boot/grub2/grub.cfg.org
カーネルをアップデート対象から除外
vi /etc/yum.conf
exclude=kernel* centos*
OSをアップデート
yum update
↓
dnf -y upgrade
yで実行
Is this ok [y/N]: y
「Complete!」で完了
bootファイルが書き換えられ立ち上がらなくなる
リカバリーモードで起動
df -h
[root@recovery ~]# fdisk -l
Device Boot Start End Blocks Id System
/dev/vda1 * 2048 104857599 52427776 83 Linux
[root@recovery ~]# mount /dev/vda1 /mnt
[root@recovery ~]# df -h
Filesystem Size Used Avail Use% Mounted on
devtmpfs 463M 0 463M 0% /dev
tmpfs 495M 4.0K 495M 1% /dev/shm
tmpfs 495M 13M 482M 3% /run
tmpfs 495M 0 495M 0% /sys/fs/cgroup
/dev/vdc1 1.1G 1.1G 0 100% /run/initramfs/live
/dev/mapper/live-rw 3.9G 2.5G 1.4G 65% /
tmpfs 99M 0 99M 0% /run/user/0
/dev/vda1 50G 1.4G 46G 3% /mnt
[root@recovery ~]# ls /mnt
bin boot dev etc home lib lib64 lost+found media mnt opt proc root run sbin srv sys tmp usr var
# 書き換えられたファイルを削除
rm /mnt/boot/grub2/grub.cfg
# バックアップを戻す
cp /mnt/boot/grub2/grub.cfg.org /mnt/boot/grub2/grub.cfg
selinuxの無効化
selinuxの状態を確認
getenforce
Disabled
デフォルトでDisabled(無効)っぽい
firewalldの設定
firewall-cmd --get-default-zone
public
パブリックなので、その状況を確認
firewall-cmd --list-all
public
target: default
icmp-block-inversion: no
interfaces:
sources:
services: cockpit dhcpv6-client ssh
ports:
protocols:
masquerade: no
forward-ports:
source-ports:
icmp-blocks:
rich rules:
Squidのインストール
参照:https://www.server-world.info/query?os=CentOS_8&p=squid&f=1
dnf -y install squid
インストール時の初期設定は、squid.conf.defaultという名前で設定ファイルと同じディレクトリに作成される
※参照:https://densan-hoshigumi.com/server/centos-squid-install
vi /etc/squid/squid.conf
各種セキュリティ対策
プロキシアクセス元クライアントの情報を隠蔽する
visible_hostname unkown
forwarded_for off
request_header_access X-Forwarded-For deny all
request_header_access Via deny all
request_header_access Cache-Control deny all
request_header_access Referer deny all
ファイアウォールの許可
firewall-cmd --add-service=squid --permanent
success
ポート開放
firewall-cmd --add-port=[ポート番号]/tcp --zone=public --permanent
squid
firewall-cmd --add-port=3128/tcp --zone=public --permanent
ssh
firewall-cmd --add-port=10022/tcp --zone=public --permanent
再読み込み
firewall-cmd --reload
日本語対応
日本語ロケール入れる
yum install glibc-langpack-ja
ロケールの設定確認
localectl status
System Locale: LANG=en_US.UTF-8
VC Keymap: us
X11 Layout: us
日本語ロケールの表示
localectl list-locales | grep -i jp
日本語ロケールの設定
localectl set-locale LANG=ja_JP.utf8
日本語キーマップの設定
localectl set-keymap jp106
ロケールの設定確認
localectl status
localectl list-keymaps
localectl set-keymap jp106
localectl status
System Locale: LANG=ja_JP.utf8
VC Keymap: jp106
X11 Layout: jp
X11 Model: jp106
X11 Options: terminate:ctrl_alt_bksp
変更完了
※「Ctrl」+「C」で終了
※「shutdown -h now」でシャットダウン
時刻合わせ
vi /etc/chrony.conf
# pool 2.centos.pool.ntp.org iburst
server ntp1.jst.mfeed.ad.jp iburst
server ntp2.jst.mfeed.ad.jp iburst
server ntp3.jst.mfeed.ad.jp iburst
systemctl restart chronyd
chronyc sourcestats
210 Number of sources = 3
Name/IP Address NP NR Span Frequency Freq Skew Offset Std Dev
==============================================================================
ntp1.jst.mfeed.ad.jp 5 3 70 -0.893 20.061 +536us 118us
ntp2.jst.mfeed.ad.jp 5 3 71 -4.049 38.916 -493us 124us
ntp3.jst.mfeed.ad.jp 5 3 71 -4.879 42.312 -400us 116us
timedatectl
Local time: Sat 2020-04-25 18:46:50 JST
Universal time: Sat 2020-04-25 09:46:50 UTC
RTC time: Sat 2020-04-25 09:46:49
Time zone: Asia/Tokyo (JST, +0900)
System clock synchronized: yes
NTP service: active
RTC in local TZ: no
起動しない
リカバリーモードで復旧
参照:https://support.gmocloud.com/public/important/detail.php?no=1367470812
参考:https://note.com/magi01/n/nd2025334b747
vi /etc/squid/squid.conf
# コメントアウト
# acl localnet src 0.0.0.1-0.255.255.255 # RFC 1122 "this" network (LAN)
# acl localnet src 10.0.0.0/8 # RFC 1918 local private network (LAN)
# acl localnet src 100.64.0.0/10 # RFC 6598 shared address space (CGN)
# acl localnet src 169.254.0.0/16 # RFC 3927 link-local (directly plugged) machines
# acl localnet src 172.16.0.0/12 # RFC 1918 local private network (LAN)
# acl localnet src 192.168.0.0/16 # RFC 1918 local private network (LAN)
# acl localnet src fc00::/7 # RFC 4193 local private network range
# acl localnet src fe80::/10 # RFC 4291 link-local (directly plugged) machines
acl lan src 接続を許可するIPアドレス
acl aclname srcdomain 接続を許可するドメイン
# コメントアウト
# http_access allow localhost manager
# http_access deny manager
# http_access allow localnet
# http_access allow localhost
# And finally deny all other access to this proxy
http_access deny all
↓
# http_access deny all
# Squid normally listens to port 3128
http_port 3128
↓
# http_port 3128
# プロキシのポート番号 1024~49151の範囲の適当な数字を入れる
http_port 3128
# Basic認証の設定
auth_param basic program /usr/lib64/squid/basic_ncsa_auth /etc/squid/.htpasswd
auth_param basic children 5
auth_param basic realm Squid Basic Authentication
auth_param basic credentialsttl 5 hours
acl password proxy_auth REQUIRED
http_access allow password
# クライアントのローカルIPを転送しない
forwarded_for off
# 上記に当てはまらないアクセスは全て拒否する。
http_access deny all
# ホストネームは任意のものを変更(そのままでも大丈夫)
visible_hostname unknown
# 今回はキャッシュさせたくないのでOFF
no_cache deny all
# プロキシの存在を隠す。
request_header_access X-Forwarded-For deny all
request_header_access Via deny all
request_header_access Cache-Control deny all
reply_header_access X-Forwarded-For deny all
reply_header_access Via deny all
reply_header_access Cache-Control deny all
パスワード生成
$ htpasswd -c /etc/squid/.htpasswd ユーザー名
New password: パスワード
Re-type new password: パスワード
Adding password for user username
起動
sudo systemctl start squid
自動起動の設定
systemctl enable squid
設定ファイルのチェック
squid -k parse
エラーがでなければOK
設定の再読み込み
systemctl reload squid
「:」をコンソールから入力する
usキーマップに一時的に変更する
loadkeys us
jp106キーマップに一時的に変更する †
loadkeys jp106
viで「:wq」が入力できないとき
ZQ (:q!と同じ) ファイルを保存せずに終了
ZZ(:qと同じ)ファイルを保存してから終了