远程连接服务器配置
简介
使用SSH可以在本地主机和远程服务器之间进行加密的传输数据,实现数据的安全传输。而OpenSSH是SSH协议的免费开源实现,它采用安全加密的网络连接工具代替了telnet、ftp等
实现步骤
第一步 进入红帽系统
第二步 检查安装系统时是否已经安装SSH服务端软件包
RPM
:红帽软件包管理器
参数
:-qa:查询系统中安装的所有软件包名 (个人理解:query all)
第三步 因为没有安装openssh-askpass
软件包,所以进入Linux系统安装光盘软件包目录
第四步 安装openssh-askpass软件包(需要切换到root用户,不然没有权限)
第五步 OpenSSH服务器配置实例
在公司内部配置一台OpenSSH服务器,为公司网络内的客户端计算机提供远程SSH登录服务,具体参数如下
- OpenSSH服务器IP地址:192.168.0.2
- OpenSSH服务器监听端口:22
- 不允许空口令用户登录
- 禁止用户lisi登录
1.编辑/etc/ssh/sshd_config文件
修改/etc/ssh/sshd_config文件,该文件修改后内容如下所示
Port 22
ListenAddress 192.168.0.2
Protocol 2
SyslogFacility AUTHPRIV
PermitEmptyPasswords no
PasswordAuthentication yes
DenyUsers lisi
ChallengeResponseAuthentication no
GSSAPIAuthentication yes
GSSAPICleanupCredentials yes
UsePAM yes
AcceptEnv LANG LC_CTYPE LC_NUMERIC LC_TIME LC_COLLATE LC_MONETARY LC_MESSAGES
AcceptEnv LC_PAPER LC_NAME LC_ADDRESS LC_TELEPHONE LC_MEASUREMENT
AcceptEnv LC_IDENTIFICATION LC_ALL LANGUAGE
AcceptEnv XMODIFIERS
XllForwarding yes
Subsystem sftp /usr/libexec/openssh/sftp-server
2.启功sshd服务
使用以下命令启动sshd服务
systemctl start sshd.service
NFS服务器配置
简介
通过配置NFS服务器,可以让客户端挂载服务器上的共享目录。使用NFS可以很方便地实现在同一网络上多个用户间共享目录,用户和程序可以像访问本地文件一样访问远程系统上的文件
实现步骤
准备工作
有两个装有红帽系统的虚拟机
虽说红帽系统nfs-utils软件包默认是安装好的,但最好先检查下
具体实践
/etc/exports
文件控制NFS服务器要导出的共享目录以及访问控制。/etc/exports
文件默认是空白的,没有任何内容。也就是说NFS服务器默认是不共享任何目录,需要手工编辑添加
服务器端
客户端
查看NFS服务器上共享目录,发现查看不了
简单分析了下原因,是没有开启nfs-server服务
服务器端
开启后,在服务器上查看共享目录信息,发现正确
但客户端还是无法访问正确,又重新思考了一遍,应该和防火墙有关
为防止防火墙捣乱
我先用systemctl disable firewalld.service
命令来禁止firewall开机启动,然后用systemctl stop firewalld.service
来停止firewall,于是成功了
客户端
Samba服务器配置
Samba简介
-
在Linux系统中,Samba是指通过服务器信息块(Server Message Block,SMB)协议在网络上的计算机之间远程共享Linux文件和打印服务
-
SMB协议被用于局域网管理和Windows服务器系统管理中,可以实现不同计算机之间共享打印机和文件等
Samba核心是smbd和nmbd两个守护进程,在服务器启动时持续运行。smbd和nmbd使用的全部配置信息全都保存在/etc/samba/smb.conf
文件中
/etc/samba/smb.conf
文件向守护进程smbd和nmbd说明共享的内容、共享输出给谁以及如何进行输出
实现步骤
第一步 检查是否已安装Samba服务器软件包
rpm -qa|grep samba
命令释义
rpm
是Red-Hat Package Manager(RPM软件包管理器)的缩写
-qa 可以理解为query all查询所有已经安装的软件包
Linux系统中grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来
grep全称是Global Regular Expression Print,表示全局正则表达式版本,它的使用权限是所有用户
通过rpm -qa|grep 软件包名
可以很快搜素已安装软件包中是否有搜索的软件包
可以看到samba-4.2.3-10.el.x86_64不存在,也就是服务主程序软件包,该软件包必须安装在服务器端
通过cd /run/media/用户名/RHEL-7.2\ Server.x86_64/Packages
命令进入Linux系统安装光盘软件包目录
通过rpm -ivh samba-4.2.3-10.el7.x86_64.rpm
来安装服务主程序软件包
第二步 了解/etc/samba/smb.conf
文件
- Samba服务器的主配置文件是
/etc/samba/smb.conf
文件,该配置文件的内容由Global Settings(全局设置)和 Share Definitions(共享定义)两部分构成
Global Settings部分主要是用来设置Samba服务器整体运行环境的选项,而Share Definitions部分则用来设置文件共享和打印共享资源
第三步 share级别Samba服务器配置
失败,真是个大坑
第四步 user级别Samba服务器配置
win11的物理主机操作系统
用Windows作客户端进行配置,各种问题,花了两天硬是没能解决,真是无语子~
简单展示下报错截图
只是一部分,总之道路崎岖,放弃了
尤其是第一个 指定网络名不再可用
,无力解决(学习磨平了我的棱角)
换条路,以Linux作为客户端进行配置
服务器端操作
服务器/etc/samba/smb.conf
最终配置如下
创建系统用户、Samba账户、共享目录
客户端操作
先查看samba客户端软件包是否安装在客户端,没有就安装
显示Samba服务器上的共享资源
报这个错protocol negotiation failed: NT_STATUS_INVALID_NETWORK_RESPONSE
,服务器配置中出现了问题,具体是hosts allow
这部分,然后解决了
指定Samba用户zhangsan显示Samba服务器上的共享资源
又报错session setup failed: NT_STATUS_LOGON_FAILURE
,明明在服务器上使用了smbpasswd -a zhangsan
,算了,重新来一遍,然后解决了
以用户zhangsan连接Samba服务器上共享目录/it
又报错,这次应该是密码输入有误,然后解决了
最后使用mount命令挂载Samba目录,失败
mount: //192.168.42.130/it 写保护,将以只读方式挂载
,无力解决
小结
恼羞成怒吐槽下,linux学习只告诉怎么做,不讲原理不讲思路,报错了咵咵网上一顿搜,好家伙,都尼玛一个模子刻出来的,共用一个大脑,服气
linux学习极大促进了动手能力与逆商培养,当然其中经典的实现还是特别有学习价值的,只不过没有师傅领进门,哪来修行靠个人~