Linux入门之网络系统详解
导读
网络信息
修改主机名
# hostname node01 //本次登录修改 # hostname //查看主机名 # vi/etc/hostname //永久修改 # shutdown -r now //修改完后需重启虚拟机
DNS域名解析
IP地址不容易记,取名映射IP配置hosts文件时一般用主机名和ip映射
Windows系统: C:\Windows\system32\drivers\etc\hosts Linux: # vi /etc/hosts # 192.168.192.100 basenode 将来需要把所有的虚拟机都配置成hosts文件
网络相关命令
# ifconfig || # ip addr 查看当前网卡的配置信息 # yum install net-tools -y 安装ifconfig相关包
ifconfig命令属于 net-tools中的一个命令,但是Centos7中minimal版并没有集成这个包,所以7的时候需要自己手动安装
# netstat 查看当前网络的状态信息 # netstat -r || # route 核心路由表
# ping 查看与目标ip是否能连通 # telnet 查看与目标ip端口是否能连通 # yum install telnet -y
# curl -X GET http://www.baidu.com 通过指定唯一定位标识资源
restful 我们所有的资源在网络上中都有唯一的定位,我们可以通过这个唯一定位标识指定的资源
防火墙
#查看防火墙状态 systemctl status firewalld.service #临时停止firewall systemctl stop firewalld.service #禁止firewall开机启动 systemctl disable firewalld.service firewall-cmd --state ##查看防火墙状态,是否是running firewall-cmd --reload ##重新载入配置,比如添加规则之后,需要执行此命令 firewall-cmd --get-zones ##列出支持的zone firewall-cmd --get-services ##列出支持的服务,在列表中的服务是放行的 firewall-cmd --query-service ftp ##查看ftp服务是否支持,返回yes或者no firewall-cmd --add-service=ftp ##临时开放ftp服务 firewall-cmd --add-service=ftp --permanent ##永久开放ftp服务 firewall-cmd --remove-service=ftp --permanent ##永久移除ftp服务 firewall-cmd --add-port=80/tcp --permanent ##永久添加80端口
开启一个端口执行流程 # 添加 firewall-cmd --zone=public --add-port=80/tcp --permanent #重新载入 firewall-cmd --reload #查看 firewall-cmd --zone=public --query-port=80/tcp #删除 firewall-cmd --zone=public --remove-port=80/tcp --permanent
加密算法
不可逆加密算法
http://tool.chacuo.net/cryptrsaprikey
可以通过数据计算加密后的结果,但是通过结果无法计算出加密数据
应用
# Hash算法常用在不可还原的密码存储、信息完整性校验。 # 文档、音视频文件、软件安装包等用新老摘要对比是否一样(接收到的文件是否被修改) # 用户名或者密码加密后数据库存储(数据库大多数不会存储关键信息的明文,就像很多登录功能的忘记密码不能找回,只能重置)
加盐操作
对称加密算法
优点 生成密钥的算法公开、计算量小、加密速度快、加密效率高、密钥较短 缺点 双方共同的密钥,有一方密钥被窃取,双方都影响 如果为每个客户都生成不同密钥,则密钥数量巨大,密钥管理有压力 应用场景 登录信息用户名和密码加密、传输加密、指令加密
非对称加密算法
非对称加密算法需要一对密钥(两个密钥): 公开密钥(publickey)和私有密钥(privatekey)(简称公钥,私钥)。 公开密钥与私有密钥生成时是一对 用公钥加密只能是对应的私钥解密,同理用私钥加密只能用对应的公钥解密。 代表性算法叫做 RSA、ECC、Diffie-Hellman、El Gamal、DSA(数字签名用) 优点: 安全高(几乎很难破解) 缺点 加解密相对速度慢、密钥长、计算量大、效率低 应用场景 HTTPS(ssl)证书里制作、CRS请求证书、金融通信加密、蓝牙等硬件信息加密配对传输、关键 的登录信息验证。
免密钥登陆
流程
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-xcOiupVR-1639032571895)(Linux网络系统.assets/image-20211028103327750.png)]
主机间相互免密钥
# ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa 生成密钥 # ssh-copy-id -i ~/.ssh/id_rsa.pub root@192.168.192.101 发送公钥 # ll -a 查看192.168.192.101中是否生成.ssh/文件夹 # cd .ssh/ ——> # cat authorized_keys 查看密钥 # scp file root@192.168.192.101:~ 发送文件
主机名与host校验
[root@basenode ~]# ssh-copy-id -i ~/.ssh/id_rsa.pub root@192.168.192.101 /usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/root/.ssh/id_rsa.pub" The authenticity of host '192.168.192.101 (192.168.192.101)' can't be established. ECDSA key fingerprint is SHA256:EV00Zl3Snn9UREndOJHXpzfAhDYkB3lLysSjiE/RlRo. ECDSA key fingerprint is MD5:86:be:05:0d:92:84:79:c0:6f:9b:9a:47:67:64:28:07. Are you sure you want to continue connecting (yes/no)? yes
错误原因: Cannot determine realm for numeric host 解决方案1--本次 ssh -v -o GSSAPIAuthentication=no root@192.168.192.101 解决方案2--所有 修改/etc/ssh/ssh_config文件的配置,以后则不会再出现此问题 最后面添加: StrictHostKeyChecking no UserKnownHostsFile /dev/null
日期与时间
命令
# ll /etc/localtime 查看时区 # ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime 修改时区为上海 # ln -sf /usr/share/zoneinfo/America/Los_Angeles /etc/localtime 修改时区为洛杉矶 # date 查看当前时间 # cal 2021 查看日历 # date -s '2019-11-11 11:11:11' 修改时间
日期同步
# yum install ntp -y 安装时间同步的服务 # ntpdate cn.ntp.org.cn 自动同步网络时间中心 自动同步网络时间中心本地NTP服务: NTP服务器 # vi /etc/ntp.conf #========权限控制============ restrict default kod nomodify notrap nopeer noquery 拒绝IPV4用户 restrict -6 default kod nomodify notrap nopeer noquery 拒绝IPV6用户 restrict 210.72.145.44 授权国家授时中心服务器访问本地NTP restrict 133.100.11.8 授权133.100.11.8访问本地NTP restrict 127.0.0.1 restrict -6 ::1 restrict 192.168.88.2 mask 255.255.255.0 nomodify 本地网段授权访问 #=========源服务器=========== server cn.ntp.org.cn prefer 指定上级更新时间服务器,优先使用这个地址 #=========差异分析=========== driftfile /var/lib/ntp/drift keys /etc/ntp/keys # systemctl start ntpd.service 开启本地NTP服务器 # ntpdate 192.168.192.101 同步时间
用户组权限
用户
# useradd sam 新增用户,创建同名组和家目录 # password 123 设置密码 # userdel -r 删除用户 级联删除 # usermod -l sam sum 修改用户名 不修改家目录和组 # usermod -L sam 锁定用户名 # usermod -U sam 解锁用户名 # cat /etc/shadow 用户名和密码 # cat /etc/passwd 用户名,编号,组编号,家目录,命令,目录 6.5系统0-499 普通 500+ 7.6系统0-999 普通 1000+ #su sam 切换用户
组
# groupadd lucky 创建组 # groupdel lucky 删除组 # groupmod -n bdp lucky 修改组名字 # groups 查看用户对应的组 # groups bdpboy 当我们创建用户的时候,会默认创建一个同名的主组 # usermod -g lucky bdpboy (主组) 修改用户的组 # usermod -G lucky bdpls (附属组修改用户的组
权限
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-u4QdKmSh-1639032571898)(Linux网络系统.assets/image-20211028204436113.png)]
# ll -a 查看文件详细信息 权限的UGO模型 u:user 文件所有者 g:group 文件所属组用户 o:other 其他用户 rwx r:read 读取权限 w:write 写入权限 x: 执行权限 -: 没有权限
修改文件的权限 修改文件所属 # chown n1 /var/lucky1 # chown n1:m1 /var/lucky2 修改文件夹时,让子目录迭代修改 #chown -R n1:m1 bdp #chgrp m2 lucky3 当用户的组被修改之后,需要重新登录才能获取新组的权限 修改文件的rwx # chmod o+w lucky4 # chmod ug+rw lucky4 # chmod ugo-rw lucky4 (权限RWX分别对应数字 4 2 1 5= 4+0+1 r-x) # chmod 664 lucky4 ->(rw- rw-r--)
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-avVk35qA-1639032571899)(Linux网络系统.assets/image-20211028205247968.png)]
权限赋予
给普通用户赋予管理员权限
# vim /etc/sudoers # visudo 修改 Line 99 n1 ALL=(root) /sbin/useradd n1 ALL=(root) /sbin/* 使用 # su n1 切换用户 # sudo chkconfig iptables off
管道和重定向
管道
将前面命令的结果作为参数传递给后面的命令
grep 强大的搜索工具 # cat profile | grep if # ls / | grep ^t
重定向
# 改变数据输出的位置,方向# 0 in 1 out 2 err# ls / 1> lucky 标准输出# ls / > lucky 标准输出# ls abcd 2>lucky 错误输出# > 替换 >> 追加# ls / 1>> lucky# ls / 1> lucky# 结合使用# ls /etc /abc > lucky 2>&1# ls /etc /abc >> lucky 2>&1# 信息黑洞# ls /etc /abc >> /dev/null 2>&1
进程
进程信息# ps -ef# UID PID PPID C STIME TTY TIME CMD# UID 所属用户# PID 当前进程编号# PPID 当前进程编号的父进程编号# ps -ef | grep redis# ps -aux# 所有信息# ps -aux --sort -pcpu# top# 当前服务器内存使用率后台进程# 只需要在命令的后面添加一个 & 符号# ping www.baidu.com >> baidu &# jobs -l# 可以查看当前的后台进程# 但是只有当前用户界面可以获取到# nohup 可以防止后台进程被挂起# nohup ping www.baidu.com >> baidu 2>&1 &杀死进程kill -9
评论(0)