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 [email protected] 发送公钥
# ll -a  查看192.168.192.101中是否生成.ssh/文件夹
# cd .ssh/   ——>  # cat authorized_keys 查看密钥
# scp file [email protected]:~  发送文件

主机名与host校验

[root@basenode ~]# ssh-copy-id -i ~/.ssh/id_rsa.pub [email protected]
/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 [email protected]
解决方案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

到此这篇关于Linux入门之网络系统详解的文章就介绍到这了,更多相关Linux网络系统内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

你可能感兴趣的:(Linux入门之网络系统详解)