Linux网络管理与服务管理
保存和备份iptables规则
service iptables save //会把规则保存到/etc/sysconfig/iptables
把iptables规则备份到my.ipt文件中
iptables-save > my.ipt
恢复刚才备份的规则
iptables-restore < my.ipt
firewalld
打开firewalld
systemctl disable iptables 在开机时禁用
systemctl stop iptables 关闭防火墙
systemctl enable firewalld 在开机时启用
systemctl start firewalld 开启防火墙
systemctl status iptables 查看状态
firewalld默认有9个zone
默认的zone: public
默认的配置文件:
/etc/firewalld/对应的zone与服务等相关的子目录
firewall-cmd --get-zones //查看所有zone
firewall-cmd --get-default-zone//查看默认zone
firewall-cmd --set-default-zone=work //设定默认zone
firewall-cmd --get-zone-of-interface=ens33 //查指定网卡
firewall-cmd --zone=public --add-interface=lo //给指定网卡设置zone
firewall-cmd --zone=dmz --change-interface=lo //针对网卡更改zone
firewall-cmd --zone=dmz --remove-interface=lo //针对网卡删除zone
firewall-cmd --get-active-zones //查看系统所有网卡所在的zone
firewall-cmd --get-services 查看所有的servies
firewall-cmd --list-services //查看当前zone下有哪些service
firewall-cmd --zone=public --add-service=http //把http增加到public zone下面
需求:ftp服务自定义端口1121,需要在work zone下面放行ftp
cp /usr/lib/firewalld/services/ftp.xml /etc/firewalld/services
vi /etc/firewalld/services/ftp.xml //把21改为1121
cp /usr/lib/firewalld/zones/work.xml /etc/firewalld/zones/
vi /etc/firewalld/zones/work.xml //增加一行
<service name="ftp"/>
firewall-cmd --reload //重新加载
firewall-cmd --zone=work --list-services
服务管理:
sshd
ftp
dns
iptables
firewalld
2种管理服务的方式:
linux6的时候,initd的方式管理:
service iptables start/stop/staus
新注册一个服务,chkconfig 注册新的服务到系统里:
chkconfig --list
chkconfig --add network ----> /etc/init.d/network
chkconfig --del network
chkconfig --level 234 network on
chkconfig --level 2345 network off
linux7用的systemd的方式管理:
systemctl start打开/stop停止/status状态 firewalld
unit----->包括至少一个target
target---->包括至少一个服务
service--->最小的一个服务单位
systemctl list-unit-files ----列出所有的unit单元
systemctl list-units --all --type=service
几个常用的服务相关的命令
systemctl enable crond.service //让服务开机启动
systemctl disable crond //不让开机启动
systemctl status crond //查看状态
systemctl stop crond //停止服务
systemctl start crond //启动服务
systemctl restart crond //重启服务
systemctl is-enabled crond //检查服务是否开机启动
crontab ----是linux下的计划任务
时间格式,可以参考配置文件:/etc/crotab
crontab -e ---当前用户下的crontab
crontab -l ----列出当前用户下的crontab
crontab -u ----编辑指定用户的crontab
crontab -r ----删除当有用户的crontab
crontab测试:
1---先创建脚本文件
vim /home/oracle/hw.sh
#!/bin/bash
echo "hello oracle" >> /home/oracle/hw.log
2---编辑自动任务
crontab -u oracle -e
* * * * * /bin/bash /home/oracle/hw.sh
分-------时------天------月------周
*/2 * */7
3---启动自动任务服务
systemctl start crond.service
linux服务器之间要拷贝文件,需要密码验证
在集群环境中,经常性的会拷贝文件,需要配置免密码登录
ssh-key 进行密码验证
可以将密码提前写在文件中,告诉对你信任的服务器
密码类型:
公钥----往外分发的时候,会分发这个公钥文件
私钥----主机自己持有
创建密钥对:
ssh-keygen ---默认会在目录下 ~/.ssh 生成密钥对 ,默认类型: rsa
ssh-copy-id ---拷贝(分发)公钥