0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

CentOS8 初期設定

Posted at

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と同じ)ファイルを保存してから終了

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?