LoginSignup
0
0

More than 3 years have passed since last update.

linux サーバー立ち上げ時に行う設定 centos7

Last updated at Posted at 2020-07-17

この記事は初心者が書いた自分用のメモです。
見づらいですし、他の方の記事を参考にされた方が良いと思います。
申し訳ございません。

selinuxの無効化:$ getenforce selinuxの状態を確認
$ vi /etc/selinux/config
SELINUX=disabled
$ reboot

ユーザーの作成:useradd, passwd
sudoコマンドを使えるようにする:$ visudo , sudoersファイルの最終行にguest1 ALL=NOPASSWD:ALLと追加するとguest1がsudoを使えるようになる

ifcfg-enp0s3ファイルを編集と追記:vi /etc/sysconfig/network-scripts/ifcfg-enp0s3
BOOTPROTO=none
ONBOOT=yes
追記 IPADDR=“...
NETMASK=“...
GATEWAY=“...
DNS1=“GATEWAYと同じことが多い”

    完了後、systemctl restart network.service からのip addr showでipアドレスが反映されているか確認

ホストネーム変更:$ sudo hostnamectl set-hostname

hostsファイルを変更してホスト名とIPアドレスの対応を設定する:vi /etc/hosts IPAdress 名前

DNSの設定:$ vi /etc/resolv.conf 名前 IPAdress (最初から設定されている)

名前解決の設定:$ vi /etc/nsswitch.conf  hosts: files dns (最初から設定されている)

pingの確認:この段階でpingが他のノードと繋がらなければvirtualboxのネットワークの名前を確認する

sshをを設定する:vi /etc/ssh/sshd_config

                #Port 22            (確認)
                #Protocol 2     (確認)
                PermitRootLogin no
                PermitEmptyPasswords no  空パスワードを禁止するため#を外す
                PasswordAuthentication yes  (確認)
                AllowUsers guest1       一番下に追記

$ systemctl restart sshd.service

SSHのセキュリティ設定:$ vi /etc/hosts.deny sshd:all
$ vi /etc/hosts.allow sshd:192.168.1.3

PAMでのアクセス制限:$ vi /etc/pam.d/sshd account required pam_access.soと最後に追加する
$ vi /etc/security/access.conf -:ALL EXCEPT sshgrp:ALLと最後に追加する(これでsshgrpというグループに所属するユーザー全員がPAMを通過できるようになった。パーミッション:ユーザー:接続元という順番になっている。「-」は禁止「EXCEPT」は〜を除いて「ALL」はすべて。を意味する)つまり-:ALL EXCEPT sshgrp:ALLとは「パーミッションは禁止する、sshgrp以外は」という意味。
$ vi /etc/ssh/sshd_config UsePAM yesとなっていることを確認

sshgrpグループを作成する:$ groupadd sshgrp
gpasswd -a guest1 sshgrp
grep sshgrp /etc/group

rootユーザの切り替え制限をする:$ gpasswd -a guest1 wheel
$ grep wheel /etc/group

                                   $ vi /etc/pam.d/su       auth required pam_wheel.so use_uidのコメントは外す(コメントを外すことでPAM認証に設定する)
                                   $ vi /etc/login.defs     SU_WHEEL_ONLY yesと最終行に追加する(wheelグループのみをrootに切り替えられるようになる)

SFTPでファイルを転送する方法(ssh接続できること前提)
ダウンロード:サーバーに接続してダウンロードしたいファイルがある場所まで行って$ sftp guest1@server
$ ls でダウンロードしたいファイルがあるか確認
  $ get file1
$ exit

アップロード:アップロードしたいファイルがある場所まで行って$sftp guest1@server アップロード先を入力
$ ls でアップロードしたいファイルがあるか確認
$ put file1
$ exit

SCPでファイルを転送する方法
アップロードのみ: $ ls でダウンロードしたいファイルがあるか確認
   $ scp file1 guest1@server:/home/guest1

公開鍵と秘密鍵を作成する方法
作成する:ssh-keygen -t rsa(空白のままエンターを押せばpasswordは設定されない)
公開鍵をアップロードする:$ cd .ssh/
$ sftp guest1@server
$ put id_rsa.pub
$ ls ちゃんとアップロードできたか確認
$ exit
アップロード先でおこなう:$ mkdir .ssh/
$ cat id_rsa.pub > /home/guest1/.ssh/authorized_keys
$ chmod 600 .ssh/authorized_keys
$ chmod 700 .ssh/

公開鍵暗号方式を設定する(接続先で行う):$ vi /etc/ssh/sshd_config
#Port 22 SSHのポート番号
#Protocol 2 SSHのバージョン
PermitRootLogin no rootでログインするのを禁止
PermitEmptyPasswords no 空パスワードの禁止
PubkeyAuthentication yes 公開鍵暗号方式の許可
PasswordAuthentication no パスワード認証の禁止
AllowUsers guest1 特定のユーザーのみ許可

FTPを使用するためにvsftpdをインストールする
$ yum -y install vsftpd
$ systemctl status vsftpd.service
$ systemctl enable vsftpd.service
$ systemctl status vsftpd.service

FTPを設定する
$ vi /etc/vsftpd/vsftpd.conf

anonymous_enable=YES
local_enable=YES
anon_upload_enable=NO
anon_mkdir_write_enable=NO
xferlog_enable=YES
xferlog_file=/var/log/vsftpd.log
xferlog_std_format=YES
(追記はないはず)

$ vi /etc/hosts.denyで最後にvsftpd:allを追加

$ vi /etc/hosts.allowで最後にvsftpd:192.168.1.8(接続許可するIPアドレスを書く)

FTPを使用するためには、Linuxサーバー側で一時的にファイヤウォールを停止しておく。
$ systemctl stop firewalld
$ systemctl disable firewalld
$ systemctl status firewalld

匿名ユーザーにログインさせるのを拒否させ、特定のユーザーのみ上位ディレクトリへ移動できるように設定する
$ vi /etc/vsftpd/vsftpd.conf

anonymous_enable=NO 匿名ユーザーのログイン許可
local_enable=YES 一般ユーザーのログイン許可
chroot_local_user=YES 一般ユーザーの上位ディレクトリ へのアクセス許可
chroot_list_enable=YES チェンジルートリストを有効にする
chroot_list_file=/etc/vsftpd/chroot_list チェンジルートユーザー リストファイルの指定

リストファイルを有効化したので、「etc/vsftpd」ディレクトリにあるchroot_listファイルにguest1を追加する
$ vi /etc/vsftpd/chroot_list guest1を追加する

$ systemctl restart vsftpd.service

もし、FTPのアクセス制限を行いたい場合はuserlist_denyをYESにする。反対にuser_listファイルに書かれているユーザーのアクセスを許可したい場合は、userlist_denyをNOにする。
userlist_deny=YES
userlist_deny=NO

NOに設定した場合、user_listファイルを開いてguest1をついかするとguest1を許可する。
user_listファイル以外にも/etc/vsftpd/ftpusersファイルに拒否したいユーザーを登録することができる。
user_listファイルftpusersファイルの違いは同じような処理を行うが、user_listに登録されているため、ユーザー名をもとに拒否する。ftpusersはパスワードを受け取った後に拒否。

0
0
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
0