Linux网络管理及基础设置
一、网络管理
1 临时配置网络(ip,网关,dns)
用ifconfig命令设定网卡的IP地址:
ens33网卡的IP地址为192.168.16.154,
ifconfig ens33 192.168.16.33 netmask 255.255.255.0
或者是
ifconfig ens33 192.168.16.33/24
/24 代表子网掩码 255.255.255.0
-添加dns服务器
**servername 192.168.16.254**
- 
添加默认网关 route add default gw192.168.16.254 netmask 255.255.255.0 route -n 查看刚刚添加的网关

- 
删除添加的网关 route del default gw192.168.16.254 netmask 255.255.255.0 
- 
重启网络服务 systemctl restart network 
2 永久修改IP地址
永久修改IP地址,需要修改网卡的配置文件
网卡的配置文件存放在/etc/sysconfig/network-scripts/ifcfg-ens33

下面是修改后的
```
BOOTPROTP="static"
	IPADDR=192.168.16.1
	NETMASK=255.255.255.0
	GATEMASK=192.168.16.254
	DNS1=192.168.16.254
	ONBOOT=“yes”
	```
3 hosts文件--本地解析规则###
	文件位于/etv/hosts
修改hosts文件中的IP地址和域名,当ping相应的域名的时候会首先从hosts寻找,ping的地址就是修改过域名
在ping不同外网的时候可以进行测试
在搭建的集群中为机器的hosts文件IP命名。例如
 	192.168.16.1  web1 	192.168.16.2  web2 	192.168.16.3  web3 	
在反向代理中直接ping web1、 web2、 web3即可,这样能够准确的找到机器
这个hosts文件可以保存到所有的机器中
二、ssh 服务##
通过xshell可以远程登录到服务器主机,这个软件也是通过sshd的端口进行通信的,默认安装后端口是22
	netstat -an|grep 22  过滤22号端口

1 ssh登录
在一台主机中ssh 192.168.16.1输入密码后就能登录另一台主机,默认登录的是root用户,想要登录普通用户,ssh @
2 scp 上传下载###
scp  /etc/hosts  192.168.168.xx:/tmp
	 源文件  IP			冒号分割  目标路径
	输入对方的密码后就能上传
	
scp  /etc/hosts  python-web2:/tmp
		修改本地hosts后可以直接输入相应的主机名
下载就是把源路径换成对方的IP+路径
	scp 192.168.1.xx:/123.txt  /root
3 ssh秘钥登录
使用scp进行上传下载的时候需要每次都输入密码,于是引入了公钥和私钥的概念,公钥和私钥可以在一台客户端上制作,客户端将制作的公钥发送给服务端。
ssh-keygen后一路回车即可生成公钥和密钥,在/root/.ssh隐藏文件中

现在需要把ssh-rsa-pub发送给服务端,服务端会重命名成aluthorized-keys,这个文件的内容和id_rsa.pub是一样的
ssh-copy-id -i 192.168.16.xx()
客户端默认存放在/root/.ssh中

4 修改ssh server端口登录
ssh的默认端口是22,在公司中需要修改配置文件更改端口,防止攻击
文件存放在**/etc/ssh/sshd_config**
修改Port 8888 后需要重启sshd,systemctl restart sshd -p+端口
ssh-copy-id -i /root/.ssh/id_rsa.pub -p 8888
这里把写上公钥的具体路径

ssh 192.168.16.xx -p 8888
三、bash环境
shell有两层意思,一是命令解释器,二是shell脚本
1 命令的优先级
命令分为:
==> alias==> Compound Commands==> function ==> build_in
==> hash==> $PATH==> error: command not found
2 别名alias
当修改ps aux的别名为aaa后.执行aaa就是执行ps aux的功能,unalias aaa 取消别名
3 内置函数
buildin,内置函数是存在于bash中的,只要bash运行,内置函数就能执行
4 函数
函数能够将命令进行组合完成相应的任务,当再次需要的时候能够直接调用,这就是函数的模块化作用。
5 hash
hash 会将常用的命令的路径存放在缓存中,能够减少搜索命令的时间

四、元字符
 反引号 	 命令替换 取命令的执行结果 $() 	同上,但它弥补了的嵌套缺陷
~ 家目录
! 取非
! 历史命令调用+history的编号
echo $?
返回值为0代表命令执行,非零表示没有执行
$ 变量取值
$() 命令替换
${} 变量名的范围
^ 取非===!
& 后台执行
&& 逻辑与
| 管道
|| 逻辑或
= 赋值
"" 软引
''硬引
< 输入重定向
> 输出重定向
>> 追加
source a.sh 没有权限也可以立即执行

 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号