◆chmod パーミッションの変更
・ drwxr-xr-x
最初がディレクトリを表すd
次の3つは所有者のパーミッション
次の3つはグループのパーミッション
最後の3つはOther(その他)のパーミッション
・-R オプション recursive(再帰的)の意味で、ディレクトリ配下のファイルやディレクトリもすべてパーミッションを変更する。
・デフォルトのパーミッションは、ファイルの場合が666 - umaskで、ディレクトリは777 - umask。つまり、ファイルの場合は実行権限が付与されない。例えば、umaskが002であったら、ファイルを作ると664のアクセス権になる。
・umask と入力すると、デフォルトのumask値が表示される。
◆suidとsgid
suidがセットされると、一般ユーザが実行してもrootが実行したことになる。

/etc/passwdファイルはrootにしか実行件が無い。しかし、一般ユーザでもパスワードを変更できる。これは、/usr/bin/passwdにsuidが設定されているから。※/etc/passwdは設定ファイルで、/usr/bin/passwdは実行ファイル。
chmod u+s ファイル名 ※u+sのところを4755のように頭を4にしても同じ。
このように、+sをつけることで、suidを設定できる。

TCP Wrapper
/etc/hosts.allowと/etc/hosts.denyファイルでアクセス制御をする。
/etc/hosts.allowが優先なので、/etc/hosts.allowに許可するユーザを書き、/etc/hosts.denyには全拒否の設定を入れる(ALL:ALL)。

Linuxでのファイアウォール設定
lokkitで簡単に設定できる。
設定後は、サービスを再起動した方が良かったかも。

⇒lokkitを愛用していたが、CentOS6ではコマンドが異なる
$system-config-firewall

が、centos7では入っていない ⇒firewall-config

service iptables restart
複雑な設定はiptables
 
※centos7に入っているfirewalldは使えない(使えるけどイマイチ)iptable を操作するしかない。


iptables
CentOS7からは、iptablesではなくfirewalldに移行。とはいえ、管理IFとしてのfirewalldで裏ではiptables
だから、iptables でもいいだろう

・設定を確認
# iptables -nL
※n(number)はポート番号で表示。例、22 nが無いとsshと表示

# iptables -nL --line-numbers
こうすると、FWのルールの番号も付与される。ルール番号は大事なので。

■firewalld
現状を確認するのは以下

firewall-cmd --list-services --zone=public --permanent
※zoneはpublicとする

http ssh ←こんな感じで、許可されているのが表示される


SELinuxを無効にする
/etc/sysconfig/selinuxファイルの「SELINUX=…」となっている行を,
SELinux=disabled」とする。

SELinux 状態を確認するには
$ getenforce
Enforcing ←有効になっている

変更するには、/etc/selinux/config

disabled (無効)
permissive(有効ではないが、警告が出る)

再起動して有効になる。一時的なものであれば、setenforce Permissiveとコマンドを打てばいい