CentOS7ユーザーアカウント構成オリジナル

[ CentOS 7ユーザーアカウントの構成](https://www.cnblogs.com/zutbaz/p/4248845.html)#

説明:

1、 このブログ投稿には、ユーザーの追加、ユーザーグループの追加、ユーザーの削除、ユーザーグループの削除など、CentOS7ユーザーアカウントの構成が記録されています。これには、ユーザーの構成ファイル、ディレクトリの分析、およびセキュリティについての検討が含まれます。

2、 ユーザー構成に関しては、CentOS7は以前のバージョンと何ら変わりはありません。

パート1ユーザーを知る

Centos 7システムは最小限のインストールであり、デフォルトの構成では、他のユーザーは作成されません。サーバーオペレーティングシステムとして、一般ユーザーは一般的に安全のために使用されます。これには、ユーザーとユーザーグループの作成と削除が含まれます。

さらに、他のバージョンのLinuxと同様に、CentOS 7には、対応するユーザー用の構成ファイルとディレクトリが次のようにあります。

/etc/passwd         //ユーザーアカウント情報、ユーザー名を確認できます/etc/shadow          //ユーザーアカウントの暗号化された情報(これに限定されません)/etc/passwdの情報/etc/group           //グループアカウント情報、グループ名を確認できます/etc/gshadow       //グループアカウントのセキュリティ情報(これに限定されません)/etc/グループ内の情報/etc/default/useradd //アカウント作成時のデフォルト値/etc/skel///デフォルトファイルを含むディレクトリ,具体的な役割は不明です/etc/login.defs      //上記のセキュリティのデフォルト構成/etc/default/useraddは異なります

より重要な構成ファイル/ etc / default / useraddを見てみましょう。内容は次のとおりです。

# useradd defaults file
GROUP=100//開始GID値
HOME=/home                       //ホームディレクトリの場所
INACTIVE=-1//有効時間、負の値は永続的、正の数値は日数を表します
EXPIRE=
SHELL=/bin/bash                   //シェルパス
SKEL=/etc/skel                    //デフォルトの構成ファイルパス
CREATE_MAIL_SPOOL=yes             //メールプールを作成するかどうか、特定の役割は後で学習します

/etc/login.defsファイルをもう一度見てみましょう。主な内容は次のとおりです。

MAIL_DIR        /var/spool/mail
...

# Password aging controls:パスワード期間の構成
#
#  PASS_MAX_DAYS   Maximum number of days a password may be used.
#  PASS_MIN_DAYS   Minimum number of days allowed between password changes.
#  PASS_MIN_LEN    Minimum acceptable password length.
#  PASS_WARN_AGE   Number of days warning given before a password expires.
#
PASS_MAX_DAYS   99999
PASS_MIN_DAYS   0
PASS_MIN_LEN    8
PASS_WARN_AGE   7...

# Min/useraddでの自動uid選択の最大値最小値/最大UID設定
#
UID_MIN                  1000//作成したユーザーのUIDは1000から始まります
UID_MAX                 60000....

# Min/max values for automatic gid selection in groupadd
#
GID_MIN                  1000
GID_MAX                 60000....
CREATE_HOME     yes                   //ホームディレクトリを作成するかどうか...

# Use SHA512 to encrypt password.//SHA512暗号化を使用する
ENCRYPT_METHOD SHA512

ファイルの内容から、/ etc /login.defsはセキュリティに重点を置いた比較的マクロな構成であることがわかります。

実際のプロセスで一般的に使用されるコマンドは次のとおりです。

useradd         //ユーザーを追加する
passwd          //ユーザーのパスワードを設定する
userdel         //ユーザーを削除する
usermod         //ユーザー情報を変更する
groupadd       //ユーザーグループを追加
groupdel        //ユーザーグループを削除する
groupmod        //ユーザーグループ情報を変更する
groups          //現在のプロセスのユーザーが属するユーザーグループを表示します

パート2ユーザーの作成

例1:ユーザーを作成する最も簡単な方法

次のコマンドを実行します。

useradd test

passwd test

例を図に示します。システムは長さや複雑さなどのパスワードを制限しますが、作成には影響しません。それは「暖かいリマインダー」として理解することができます。

testという名前のそのようなユーザーが作成されました。プロパティを見てみましょう。

コマンドを実行します:id test //ユーザー情報を表示します

テストユーザーグループにあるテストuid = 1000、gid = 1000は、パラメーターがない新しいユーザーがユーザー名と同じ名前の新しいユーザーグループを作成し、デフォルトで参加することを示しています。また、UIDとGIDの値、およびデフォルトも確認されました。構成ファイルでも同じままにします。構成ファイルが有効であることがわかります。新しいユーザーを作成することもできます。UIDとGIDの値を見ると、1001であることがわかります。試してみることができます。 / homeディレクトリに切り替えて、構成ファイルの設定と一致するユーザーディレクトリを確認できます。

例2:パラメータを使用してアカウントを作成する

前の例では、デフォルトの構成を使用しましたが、ユーザー名とパスワードを設定しました。今回は、UID、GIDなどを手動で設定します。まず、次のように、useraddのパラメーターを見てみましょう。

- b,--base-dir BASE_新しいDIRアカウントのホームディレクトリのベースディレクトリ
 - c,--新しいアカウントのコメントコメントGECOSフィールド
 - d,--home-dir HOME_新しいDIRアカウントのメインディレクトリ
 - D,--defaultsは、デフォルトのuseradd構成を表示または変更します
 - e,--expiredate EXPIRE_DATE新しいアカウントの有効期限
 - f,--非アクティブINACTIVEパスワード新しいアカウントの非アクティブ期間
 - g,--gidGROUP新しいアカウントマスターグループの名前またはID
 - G,--groupsGROUPS新しいアカウントの追加のグループリスト
 - h,--このヘルプ情報を表示して起動するのに役立ちます
 - k,--skel SKEL_DIRはこのディレクトリをスケルトンディレクトリとして使用します
 - K,--key KEY=VALUEは使用されていません/etc/login.defsのデフォルト値
 - l,--no-log-initは、このユーザーを最近のログインおよびログイン失敗データベースに追加しません
 - m,--create-homeはユーザーのホームディレクトリを作成します
 - M,--no-create-homeはユーザーのホームディレクトリを作成しません
 - N,--no-user-グループは同じ名前のグループを作成しません
 - o,--non-一意の重複したUIDを持つユーザーを作成できます
 - p,--passwordPASSWORD暗号化された新しいアカウントのパスワード
 - r,--systemシステムアカウントを作成します
 - R,--root CHROOT_ディレクトリへのDIRchroot
 - s,--shellSHELL新しいアカウントのログインシェル
 - u,--uidUID新しいアカウントのユーザーID
 - U,--user-groupユーザーと同じ名前のグループを作成します
 - Z,--selinux-ユーザーSEUSERは、SELinuxユーザーマッピングにSEUSERを指定します

UID = 501、GID = 600、30日間の有効期間、およびホームディレクトリ/ home / test5を使用して新しいユーザーtest4を作成します。

コマンド:

groupadd -g 600  test3                //GIDを作成する=600ユーザーグループテスト3
useradd -u 501-g 600-f 30-m   -d /home/test5 test4

ユーザーファイル/ etc / passwdまたはidtest4を再度開くと、独自の構成が表示されます。

uid = 501(test4)gid = 600(test3)group = 600(test3)
3番目の部分はユーザー設定を変更します

ログインを許可するかどうかにかかわらず、ユーザーごとに必要な権限、シェルは異なります。この部分では、usermodコマンドを使用してユーザー構成を変更する必要があります。前の例でテストアカウントを作成しました。デフォルトのSHELLは/ bin / bashで、ログインできます。

ログイン禁止:

usermod -s /sbin/nologin test //-sはシェルを指定します

ユーザー名の変更:

usermod -l test88 test //-l新しいユーザー名

さらに、ホームディレクトリ、有効期限、グループの変更、ユーザーのロック、ユーザーのロック解除などのパラメータプラクティスを表示することもできます。

パートIVユーザー/グループの削除

エラーのあるユーザー/グループを作成する場合、ユーザー/グループを削除してから再作成する場合があります。 userdelコマンドを使用してユーザーを削除します。

注文の実行:

[ root@localhost home]# userdel test
[ root@localhost home]# useradd test
useradd:警告:このホームディレクトリはすでに存在します。
skelディレクトリからそのディレクトリにファイルをコピーしないでください。
メールボックスファイルの作成:ファイルが既に存在します

この問題は、ユーザーを削除したときに、セキュリティ上の理由からシステムが関連するファイルとディレクトリを削除しなかったために発生しました。 userdelパラメーターを確認してみましょう。

使用法:userdel[オプション]ログインする

オプション:
 - f,--force                   force some actions that would fail otherwise
        e.g. removal of user still logged in
        or files, even if not owned by the user
 - h,--このヘルプ情報を表示して起動するのに役立ちます
 - r,--削除ホームディレクトリとメールプールの削除
 - R,--root CHROOT_ディレクトリへのDIRchroot
 - Z,--selinux-ユーザーは、ユーザーのすべてのSELinuxユーザーマッピングを削除します

パラメータ-rfを使用して、関連するファイルディレクトリを削除できます。この手順は危険です。ロールバック操作があるかどうかは明確ではありません。

注文の実行:

[ root@localhost home]# userdel -rf test
[ root@localhost home]# useradd test

このように、プロンプトはありません。

パート5ユーザーセキュリティ構成

オペレーティングシステムのセキュリティでは、ユーザー権限とファイル権限も非常に重要です。ここで、いくつかの小さなポイントを記録します。今回の主な目的は、rootユーザーが接続できないようにし、一般ユーザーがsudoコマンドを使用して権限を上げることを禁止することです。最後のステップで、テストユーザーを作成しました。sudoコマンドを入力すると、次のプロンプトが表示されます。

テストはsudoersファイルにありません。この件は報告されます。

この問題を解決するには、/ etc / sudoersにユーザーテストを追加するだけで済みます。コードは次のとおりです。

//次の行を見つけて、下に追加します.....
root    ALL=(ALL)       ALL
test    ALL=(ALL)       ALL          //この行が追加されます

これで問題が解決するはずです。

新しい追加:仮想マシンにCentOS 7を再インストールし、少し実験しましたが、実際に成功しました。 / etc / sudoers属性は次のとおりです。

**setUID権限があれば、どのユーザーにもx(実行)権限があるので、sudoコマンドを実行できます。次の内容は、setUID権限の理解と見なされます。 ****

ps。他の部分はインターネット上の情報に基づいて設定されていますが、影響は感じられないため、改訂された部分とその目的を以下に掲載します。

//ファイルを変更する/usr/bin/sudoユーザーとユーザーグループ
chown  root:root /usr/bin/sudo
//変更権限は4755であり、そのうち4はファイル所有者としての実行を表します。
chmod 4755/usr/bin/sudo

上記のコマンドは、ファイル/ usr / bin / sudoの所有者をrootに変更し、実行時にrootとして実行することを意味します。これは「4」の意味でもあります。権限を設定するときに「4755」を755に設定しないと、このエラーが発生します。

sudo:有効なユーザーIDは0ではありません。sudoはrootに属し、setuidビットを設定しますか?

解決策は、今述べたようにルート(uid = 0)として実行することです。

実際の環境では、ハッカーがルートアカウントを強引にクラックするのを防ぐために、通常、ルートアカウントのSSHリモート接続を禁止しています。操作は次のとおりです。

//変更する/etc/ssh/sshd.構成ファイル、
意志
# PermitRootLogin yes
着替える
PermitRootLogin no

//sshdサービスを再起動します
systemctl restart sshd.service

注:CentOS 7はサービスの使用をキャンセルします。それでも使用できる場合もありますが、最初にsystemctlを使用します。

また、最も重要なことは、異なるユーザー間での権限の分散だと思います。一時的に残し、後で実際の状況に基づいてメモを追加します。

みなさん、パラメータや実情に合わせて設定することもできます。誰もがお互いにコミュニケーションをとることができます。

( adsbygoogle = window.adsbygoogle || []).push({});

Recommended Posts

CentOS7ユーザーアカウント構成オリジナル
CentOS7.0ネットワーク構成
CentOS7の基本構成
CentosMySQL8構成
Centos7インストールdocker-18.xオリジナル
centos7でのXfs構成
Centos7インストールpyenvオリジナル
Mysql8.0.15インストール構成(centos7)
CentOS7インストールRedis5.0.8オリジナル
Centos7.2システム最適化オリジナル
Centos7はZabbix3.4オリジナルをインストールします
CentOS7ルートユーザーパスワードのリセット
Centos7のインストールと構成のプロメテウス
CentOS7のインストールと構成PPTP
CentOSのインストールと構成cmake
Centos7.5のインストールと構成MongoDB4.0.4
CentOS7のインストールと構成PPTP
CentOSmysql構成マスタースレーブレプリケーション
CentOS8.0ネットワーク構成の実装
CentOS 7 Redis5.0.8センチネルモード構成
CentOS8ネットワークカード構成ファイル
CENTOS7はCEPHオリジナルを手動でインストールします
Centos7のインストールとJenkinsの構成
CentOS8インストールGitと基本構成
VirtualBoxのCentOS構成gitサーバー
CentOS7.2およびNginx構成仮想ホスト
Linux:Centos7は元のカーネルをアップグレードします
Centos6ネットワーク構成の詳細な例
CentOSでのJava-JDKのインストールと構成
CentOS 7Tomcatサービスのインストールと構成
Centos 7 RAID5の詳細な説明と構成
CentOS構成スワップ交換エリア方式
CentOSNTPサーバーのインストールと構成
CentOs7のインストールと展開Zabbix3.4オリジナル
Centos7mysqlデータベースのインストールと構成
centos6.5環境でのTomcat構成JMX