前言:
本篇文章主要用于初学者首次安装Linux系统后进行的基础配置,首次登录Linux难免会存在无图形化界面不知道如何操作的困扰,因此特出此篇来对Linux操作系统的基本操作进行学习,并且会讲解部分简单的命令用于熟悉该系统,最后会进行一些基础配置仅用于基础阶段。
一、基础网络配置
1、终端界面介绍
使用Linux系统登入过后可以查看到以下这些信息,其中包括登入的账户名、服务器的主机名、上次登录服务器的时间、登入的ip等信息。
[root@elk ~]#
最左端的root显示的是目前用户的账号,@之后接的是elk则为主机名,最右边的~指的是当前所在目录,#则是提示字符。
tips:默认root账户的提示字符为#,一般账户的提示字符为$
2、Linux网络设置
网络配置是Linux系统中的一项重要任务,合理的网络配置可以保证计算机与其他设备的正常通信。
2.1、查看网络ip地址和网关
我们可以使用ifconfig命令来查看当前计算机的网络接口及其对应的IP地址。
ifconfig
当出现下图报错的话则说明linux系统未安装ifconfig软件,但是这边也提供了相应的安装命令。只需要复制执行即可(前提是可以访问互联网)
下载过后在输入命令即可看到ip
2.2、网络连通性测试
测试网络连通性是网络配置的重要一步,它可以判断网络是否正常工作。无论是在windows还是Linux中,我们都可以使用ping命令来测试网络连通性。
ping <目标IP地址>
我们可以ping本地服务器地址来确认网卡是否存在故障的情况。下图为ping通本地服务器地址的截图,按键盘Ctrl+c可以中断ping命令继续执行。
如果存在无法访问的情况,优先排查网络配置或网卡问题。
我们可以ping网关地址可以了解目前服务器到网关设备的连通性。
如果存在无法访问的情况,优先排查网络配置和网络链路路由等问题。
我们可以ping互联网地址可以了解目前服务器访问互联网是否正常。
tips:如果无论我们怎么使用ping命令进行测试都无法收到回包的时候,大概率是网络配置仍然存在问题。
2.3、网络配置
使用vim文本编辑工具来修改网络配置文件,需要注意的是服务器可能存在多个网卡,需要编辑哪个网卡需要记住网卡型号。我这台服务器网卡型号为ens33,可以随时通过ifconfig命令来查看网卡型号。
tips:不同的Linux操作系统发行版对于网络配置文件路径可能有变化,以下为Centos系统的网络配置文件的路径和内容。
cd /etc/sysconfig/network-scripts/#进入到network-scripts目录ls -l#查看一共有多少个网卡配置文件vim ifcfg-ens192#编辑ens192网卡配置文件
TYPE=EthernetPROXY_METHOD=noneBROWSER_ONLY=noBOOTPROTO=noneDEFROUTE=yesIPV4_FAILURE_FATAL=noIPV6INIT=yesIPV6_AUTOCONF=yesIPV6_DEFROUTE=yesIPV6_FAILURE_FATAL=noIPV6_ADDR_GEN_MODE=stable-privacyNAME=ens192UUID=a0d5e6f5-85c8-4cfe-a470-a7102b8c7f60DEVICE=ens192ONBOOT=noIPADDR=178.14.1.117PREFIX=22GATEWAY=178.14.3.254DNS1=114.114.114.114
除了配置网络问卷外也可以通过使用nmtui网络管理软件来进行配置,例如:nmtui命令
nmtui
选择第一个选项编辑链接,回车进入。(如果需要返回则敲击键盘的esc键)
进入后就可以看到我们的网卡ens192,选中然后按下回车按钮进入编辑
我这边是把网卡IPv4的配置方式改成手动模式,并配置了ip地址、网关、dns等相关信息。具体网络配置需要根据实际工作环境进行调整。调整后单击OK按钮保存配置。
按照以下操作反馈即可
2.4、网络管理
常用的便是针对网卡的启用和禁用,这里有很多软件都可以实现以上功能,我这边仅举例一个命令用于管理。
ifup <网卡名称>#启用网卡ifdown <网卡名称>#禁用网卡
如果提示没有该命令则需要对该软件进行安装。我这边便不多做演示了。
apt install ifupdown
2.5、换软件源
为什么我们需要更换软件源呢?由于linux系统大多数是国外的社区进行维护,所以默认集成的源就是在国外,它就好像是一个应用商店,对常用的应用都进行了收集,因此你的每次通过apt进行下载操作都是需要访问在访问国外的应用商店,在下载速度上完全不占优势。好在国内有很多企业和高校都有自己在独立维护的源并开放使用。
我们这里选择的是更换阿里源作为演示,点击链接进入官网后根据你所使用不同的Linux系统发行版进行选择,我这里点击ubuntu进入。<链接>
这里有一些关于Ubuntu源的仓库内容,可以了解以下。
往下滑看手动配置方法,这里有很详细的配置教程,根据自己所使用的系统版本号进行选择。
我们可以先确认一下系统版本号
cat /etc/os-release
找到对应的配置文件,按照流程进行替换。
在替换之前可以对配置文件进行初步的备份防止修改后报错无法恢复。
cd /etc/apt/#进入apt目录ll#查看目录内的文件sudo cp sources.list sources.list.back#复制sources.list文件并命名为sources.list.backll#查看目录内的文件确认已经拷贝好
备份好后进行源文件修改。
sudo vim sources.list
当我们查看源文件的时候发现官方的提示,Ubuntu24.04的源地址配置文件发生改变,不再使用以前的sources.list文件,新的源文件路径为/etc/apt/sources.list.d/ubuntu.sources
使用cat命令查看该文件的内容
cat /etc/apt/sources.list.d/ubuntu.sources
由于本教程未涉及vim编辑器的使用,这里只做简短的教学,后期提供链接用于跳转可以进行深度学习。
cd sources.list.d/#进入到sources.list.d目录ll#查看该目录下的文件sudo cp ubuntu.sources ubuntu.sources.back#复制源文件并进行重命名vim ubuntu.sources#编辑ubuntu.sources文件
这里我们进入编辑后按键盘a进入编写模式,把光标移到URIs:这一列,并删除原本的域名,改成阿里云的域名后按键盘esc退出编辑模式,输入:wq(这里是指保存并退出,write and quit) 然后回车。
更新一下源列表
sudo apt-get update
3、远程登录服务器
3.1、为什么要远程进行管理
远程管理,实际上就是计算机与服务器之间通过网络进行数据传输的过程,与浏览器需要 HTTP 协议浏览网页一样,远程管理同样需要远程管理协议的支持。个人计算机可以随时拿来用,服务器通常放置在机房中,用户无法直接接触到服务器硬件,只能采用远程管理的方式。远程访问服务器可使员工在任何地点通过互联网安全地连接到公司的网络,访问重要文件和应用程序。这种灵活的工作方式不仅提高了员工的工作满意度,还使得跨地域的协作成为可能,极大提高了项目的执行速度和团队的协同效率。
3.2、常用的远程管理协议
目前,常用的远程管理协议有以下四种:
- RDP(remote desktop protocol)协议:远程桌面协议,大部分 Windows 系统都默认支持此协议,Windows 系统中的远程桌面管理就基于该协议。
- RFB(Remote FrameBuffer)协议:图形化远程管理协议,VNC 远程管理工具就基于此协议。
- Telnet:命令行界面远程管理协议,几乎所有的操作系统都默认支持此协议。此协议的特点是,在进行数据传送时使用明文传输的方式,也就是不对数据进行加密。虽然不安全,但仍然被用于远程登录到服务器或设备,通常用于简单的文本交互。
- SSH(Secure Shell)协议:SSH是一种加密网络协议,用于通过安全通道在不安全网络上进行远程访问和管理。它提供了加密的通信会话,包括远程登录和执行命令,以及传输文件等功能命令行界面远程管理协议,几乎所有操作系统都默认支持此协议。
3.3、使用xshell远程服务器
sshd服务的配置信息保存在/etc/ssh/sshd_config文件中。运维人员一般会把保存着最主要配置信息的文件称为主配置文件,而配置文件中有许多以井号(#)开头的注释行,要想让这些配置参数生效,需要在修改参数后再去掉前面的井号。
打开xshell软件。
ssh <服务器ip地址>
连接上后根据提示输入系统用户的账号密码。
下图则是通过xshell软件成功登陆是服务器
二、linux系统优化
1、关闭selinux
1.1、什么是selinux
SELinux,也就是安全强化的 Linux,是由美国国家安全局(NSA)联合其他安全机构共同开发的一个Linux安全子系统,旨在增强传统 Linux 操作系统的安全性,它的作法是以最小权限原则为基础,在 Linux 核心中使用 Linux 安全模块,解决传统 Linux 系统中自主访问控制系统中的各种权限问题。它并非一个 Linux 发行版,而是一组可以应用在类 Unix 操作系统的修改。
1.2、为什么要关闭selinux
关闭SELinux可能会降低系统的安全性,因为它是一种强制访问控制机制,可以有效地限制程序对系统资源的访问,防止恶意行为。因此,目前学习阶段可以关闭selinux,等到生产阶段则建议开启。关闭SELinux的原因有以下几点:
-
兼容性问题:在某些情况下,SELinux可能会与某些应用程序或服务不兼容,导致程序无法正常运行或出现权限错误。
-
管理复杂性:SELinux提供了非常严格的安全策略,这可能会使得系统的管理变得复杂,尤其是对于不熟悉SELinux规则的运维人员来说。
-
开发和测试阶段:在开发或测试阶段,开发者可能需要更加灵活的系统环境来测试软件,关闭SELinux可以减少不必要的限制。
-
性能考虑:尽管SELinux对系统性能的影响通常很小,但在某些对性能要求极高的场景下,关闭SELinux可以略微提升系统性能。
-
用户体验:对于普通用户或非技术用户来说,SELinux可能会在不经意间阻止某些操作,导致用户困惑。
-
临时解决方案:在某些紧急情况下,为了快速解决问题,运维人员可能会选择临时关闭SELinux,以便进行故障排查。
-
特定环境要求:某些特定环境或组织可能出于安全策略或合规性的考虑,决定关闭SELinux。
1.3、关闭流程
使用getenforce命令查看当前selinux状态
getenforce
临时关闭SElinux
setenforce 0
永久关闭SElinux需要修改配置文件,默认的路径为/etc/selinux/config
sed -i 's/^SELINUX=.*/SELINUX=disabled/' /etc/selinux/config
重启过后使用getenforce查看SElinux状态,为Disabled或permissive即可认为关闭成功
2、关闭iptable
2.1、iptable简介
iptable又称为防火墙,在公网与企业内网之间充当保护屏障的防火墙虽然有软件或硬件之分,但主要功能都是依据策略对穿越防火墙自身的流量进行过滤。防火墙策略可以基于流量的源目地址、端口号、协议、应用等信息来定制,然后防火墙使用预先定制的策略规则监控出入的流量,若流量与某一条策略规则相匹配,则执行相应的处理,反之则丢弃。这样一来,就能够保证仅有合法的流量在企业内网和外部公网之间流动了。
2.2、为什么要关闭iptable
在生产环境中,关闭iptables之前应当仔细考虑系统的安全需求,因为iptables是Linux系统中的一项基本安全特性,它可以防止未经授权的网络访问和数据泄露。在没有替代的安全措施的情况下关闭iptables可能会导致系统暴露在未授权访问的风险中。目前学习阶段可以关闭selinux,等到生产阶段则建议开启。关闭iptables的原因可能有以下几个:
-
简化配置:iptables需要专业知识进行配置和管理。对于不熟悉iptables规则或不需要复杂网络访问控制的环境,关闭iptables可以简化网络配置。
-
提高网络性能:iptables虽然对性能的影响通常不大,但在需要处理大量网络连接的服务器上,关闭iptables可以减少CPU的负载,从而提高网络性能。
-
便于调试:在解决网络问题时,如果怀疑iptables规则可能是问题的根源,关闭iptables可以帮助排除干扰因素,便于调试和定位问题。
-
特定应用需求:某些应用程序可能需要开放较多端口,或者需要特定的网络行为,而这些可能和iptables的默认规则冲突。
-
服务器迁移或升级:在服务器迁移或系统升级的过程中,可能会选择关闭iptables,以避免迁移或升级过程中出现的网络配置问题。
-
使用其他防火墙解决方案:有些系统可能会使用其他防火墙解决方案,如firewalld或nftables,作为iptables的替代品,此时可能会关闭iptables。
-
安全策略变更:在安全策略的变更中,如果决定采用不同的安全措施,可能会关闭iptables。
2.3、关闭流程
先查看系统中是否有防火墙,centos系统中根据不同版本使用的是firewall或iptable。而ubuntu系统当中则使用iptable和ufw。
systemctl status iptables.service#查看iptable运行状态systemctl stop iptables.service#停止运行iptablechkconfig iptables off#永久关闭iptables#如果需要再次开启则执行以下命令#chkconfig iptables on