一、SELINUX 1、作用:用于增强系统安全 2、运行模式:disabled / permissive / enforcing 3、更改模式 (1)临时setenforc 0|1 (2)永久/etc/selinux/config - > SELINUX=enforcing 4、查看模式
getenforce
5、selinx安全上下文环境值,是文件的锁,只有进程钥匙与锁匹配才能读取。
echo 'cd: test1' > index.html
ls -Z index.html
mv index.html /var/www/html/
访问服务器看不到index.html内容 #sealert -b 服务器上运行命令 #ls -Z index.html 6、布尔值,是功能开关 [root@client ~]# yum install -y vsftpd [root@client ~]# vim /etc/vsftpd/vsftpd.conf anon_upload_enable=YES #33行 [root@client ~]# systemctl restart vsftpd [root@client ~]# mkdir -m 777 /var/ftp/incoming
[root@room3pc19 ~]# yum -y install ftp [root@room3pc19 ~]# ftp 192.168.4.100
7、selinux允许服务绑定的端口
vim /etc/httpd/conf/httpd.conf
Listen 8100 #systemctl restart httpd 启动失败 #sealert -b #semanage port -a -t http_port_t -p tcp 8100 #systemctl restart httpd 启动成功
二、其他
8、命令查找顺序:函数>别名>内部命令>外部命令 [root@client ~]# vim ~/.bashrc lh(){ ls --color -lh $* } alias lld='ls --color -ld $*' [root@client ~]# source ~/.bashrc [root@client ~]# lh [root@client ~]# lld
9、脚本执行 (1)bash script.sh 脚本中的shebang(#!/bin/bash)没用,必须用bash解释 (2)./script.sh 必须有X权限,需要使用shebang 第(1)(2)都使用fork子进程方式 (3)source ./script.sh 在当前进程中执行 10、管道也会开启子进程 [root@client ~]# echo wangwu | read -p "username" name [root@client ~]# echo $name #name为空 子进程name变量获得了值wangwu [root@client ~]# echo wangwu | (read -p "username" name; echo $name)
11、不通过键盘为read提供值的方式 [root@client ~]# read -p "username:" name <<< bob [root@client ~]# echo $name
12、ipv6地址128位,每16位换算成16进制数并用冒号分开 22334:2:334::1 错误22334是20位进制数 2::1 正确 连续的0可以用::表示 2001::1::3 错误 ::只能出现一次
13、特殊的ipv6地址 :: 全部的ipv6地址,相当于是0.0.0.0 ::1 相当于127.0.0.1
14、链路聚合,等同于网络设备上的以太通道 链路捆绑的另一方式是bond
三、防火墙
15、查看允许状态 [root@client ~]# firewall-cmd --state
16、区域,是进入系统的检查站 (1)查看所有的可用区域 [root@client ~]# firewall-cmd --get-zones truested:能进入该区域的数据包默认放行 drop:进入改区域的数据包默认丢弃 block:进入该区域的数据包默认拒绝 其他区域除明确标明的服务,默认拒绝 (2)查看所有生效的区域 [root@client ~]# firewall-cmd --get-active-zones
(3)数据包进入区域的归则:首先是源地址匹配,然后是端口(接收网卡)匹配,最后是默认区域 [root@client ~]# firewall-cmd --permanent --add- source-192.168.10.0/24 --zone=work [root@client ~]# firewall-cmd --permanent --add-interface=eth1 --zone=dmz
17、配置允许通过的数据 [root@client ~]# firewall-cmd --permanent --add-service=http [root@client ~]# firewall-cmd --permanent --add-port=10050/tcp [root@client ~]# firewall-cmd --permanent --add-port=10051/tcp
四、邮件服务 18、linux系统默认的邮件服务器是postfix,它实现了smtp功能,dovecot实现了pop/imap功能
19、与邮件服务相关的dns记录是mx
五、 20、数据库 1、关系型数据库(E-R模型):mariadb/mysql、db2、SQLserver、orcale 2、非关系型数据库(nosql)memeache、redis、mongodb 3、数据库推荐书籍 mysql必知必会 http://down.51cto.com/search.php?q=%E5%BF%85%E7%9F%A5%E5%BF%85%E4%BC%9A
六、web服务 1、虚拟主机实现方式 (1)基于IP地址 (2)基于端口号 (3)基于域名 2、服务定位三要素:ip地址+协议+端口号 3、URL:统一资源定位符 协议+地址+端口号+路径 http://www.tedu.cn:8000/news 4、查看网站相应头信息 [root@room3pc19 ~]# curl -I http://www.pangdanet.com
5、https安全通信需要使用证书
6、证书包含的信息:密钥、服务器信息、CA信息
七、samba
1、实现windows和linux共享目录
八、nfs
1、实现linux间共享
2、nfs依赖rpcbind
九、shell脚步基础 1、变量赋值 2、判断 3、循环
#/bin/bash
password=123456
for user in user{1..10} do id $user &> /dev/null if [ $? -ne 0 ] ; then useradd $user echo $password | passwd --stdin $user &> /dev/null chage -d0 $user echo -e "created ${user}...\t\t\t\t\033[32;1m[ok]\033[0m" fi done
作业: 1、编写创建用户的脚本adduser2.sh 2、bash adduser2.sh 将会创建10个用户 3、bash adduser2.sh 15 将会创建15个用户 4、用户名为userX
#!/bin/bash if [ -n "$1" ];then NUMBER=$1 else NUMBER=10 fi
COUNTER=0
while [ $COUNTER -lt $NUMBER ] do let n++ id user$n &> /dev/null if [ $? -ne 0 ];then useradd user$n echo -e "create user${n}\t\t\t\t\033[32;1m[ok]\033[0m" let COUNTER++ fi done