当前位置: 首页 > news >正文

Linux实操笔记1 向服务器出发:连接和登录

在学习了怎么使用基础命令之后,似乎我已经完全掌握了运维的真谛,不,我还差得远呢! 接下来我比较想先学习怎么达成一些实际的操作。

测试下述命令前你需要一台linux服务器或者虚拟机:以ubuntu为例

virtualbox7.0 安装ubuntu20.04系统安装,联网,下载程序全程示例[附下载链接]_vmbox7.0.10安装ubuntu20.04-CSDN博客

连接远方的计算机

ssh命令是大家都熟识的命令。使用它可以使用远程终端登录到我们的服务器从而进行一系列的操作,可以说没有连接就没有后面的一切远程服务。但是这个服务不是一开始就开始的,我们要注意下面几点:

1,你要连接的服务器是否具备公网ip

如果你的计算机和要连接的设备处于内网,你可以用内网的ip地址进行连接,但是如果你在外地,需要连接家里的电脑,试想一下你现在还能连接到吗?这时候就需要将内网的服务暴露到公网来,也就是所谓的:获得公网ip,目前有很多服务商做了内网穿透,虚拟局域网类似的,都是可以让你连接到不具有公网ip的设备。

ip address

2,远程连接的端口是否已开放

大部分的服务器提供商都在初始情况下开放了所需端口,但是,在你的情况特殊,比如端口不是默认端口,或者和其他人共享主机需要从其他端口访问服务的情况。这种时候需要尝试打开服务商的端口限制以及检查服务器或者远程计算机的防火墙。

3,远程计算机是否已经安装对应的ssh服务?

这是一个比较滑稽的问题,如果你已经体验过服务器,你应该会疑惑为什么会有这个问题,事实上服务器一般预装ssh服务,但是当你的服务器是自己配置或者使用了其他方式构建的,这时候你的服务器上可能。。。并没有一个监听22端口的服务!安装经典的ssh服务openssh-server即可。

sudo apt-get install openssh-server

4,是否选择了正确的用户登录?

这一问题在你使用软件登录时几乎是不存在的,但是如果你是在命令行敲出一行ssh 38.77.167.XX(举例)这样的话,接下来让你输入密码的时候,你可要注意你登陆的到底是谁的账号了。这一问题发现在我使用腾讯云服务器的时候,其重装系统默认用户为ubuntu,但是你使用ssh直接连接ip地址时,默认登陆的并非ubuntu账号哦。

ssh username@userip

以上问题都会成为你碰到一些不知所措的情况下的排除方案。

用户获取管理员权限,修改密码,添加用户

sudo可以使用管理员权限执行后续命令,但是这是不完整的,或者说受限的管理员命令。

基本知识:

用户具有很多属性包括账号,真实姓名,密码,主目录,默认shell。用户是操作系统权限的集合

那么下一步就是:怎么获取管理员权限?怎么登录管理员账户,怎么修改用户密码?

切换管理员用户:

su

切换其他用户 

su username

修改当前用户密码:

passwd

显示用户信息:

id
whoami

具体使用效果请自己体验哦,安装ubuntu虚拟机的方法在上面贴过啦。

获取本机所有用户信息:

cat /etc/passwd

获取已登录用户:

who

获取用户组信息:

cat /etc/group

 输出为:组名:口令:组标识号:成员列表

添加用户组:

groupadd student
#-r -g

添加用户:

可以用选项指定很多:包括用户的过期时间,所属用户组,是否为系统用户,用户的注释,

useradd [option] name
#选项:-D -u -g -d -c -G -b -s -f -e
useradd -D
#使用该命令查看添加用户的默认配置
#还有adduser命令可以使用,具体可自行查询。

实例:添加用户wyiot uid为51,所属用户组为student,附属组为friend,默认shell为bash。

 useradd -u 51 -g student -G friend  -s /bin/bash wyiot

总之,利用以上代码可以让你登录到你的服务器之后,还能让其他人用新的身份链接登录到服务器,前提是你的服务器和你的朋友之间同样满足链接的条件。也可以使用其他命令来修改,删除用户账户,大胆的去查吧。

到这,登录到了系统,了解了怎么使用命令知道服务器上有什么人,现在有谁,怎么添加用户组,怎么添加用户,但是具体的细节我们没有去解释,比如选项中的用户主目录啦,系统用户啦,其他脚本啦,我觉得这是很难靠看记住的东西,不如先使用基础指令让你能够使用它,然后:

一边去了解linux的理论知识,而不是只看命令怎么用。

一边在具体的情景下再去探索怎么达到自己的目的。

理论和实操结合才是学习的真谛啊!

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 大模型LLM的Token相关问题:模型不同,token计算不同,gpt对token的计算,我们如何选择token及token评估模型
  • APP自动化测试思路整理,跟着步骤快速撸码...
  • 建筑企业数字信息化转型的建议
  • 第八周:机器学习
  • ArcGIS中怎么批量计算多个点到线最近距离,以及这些点到线的纬度差?
  • 大模型企业应用落地系列六》基于大模型的对话式推荐系统》推荐引擎层
  • 最大子段和
  • 高频面试题:SpringMVC的执行流程
  • 金9银10跳槽季,最新自动化测试面试题合集
  • MySQL死锁问题解决方案
  • 一本读懂数据库发展史的书
  • 如何在大三大四阶段,获得GIS开发能力和实习经验?
  • UI设计评审
  • Telegram创始人帕维尔·杜罗夫:从俄罗斯到迪拜的自由之路
  • 安全升级:Docker部署Redis,启用密码验证
  • IE9 : DOM Exception: INVALID_CHARACTER_ERR (5)
  • Angular6错误 Service: No provider for Renderer2
  • ComponentOne 2017 V2版本正式发布
  • CoolViewPager:即刻刷新,自定义边缘效果颜色,双向自动循环,内置垂直切换效果,想要的都在这里...
  • express.js的介绍及使用
  • Java深入 - 深入理解Java集合
  • overflow: hidden IE7无效
  • PHP的Ev教程三(Periodic watcher)
  • Python_网络编程
  • SegmentFault 2015 Top Rank
  • vue的全局变量和全局拦截请求器
  • 诡异!React stopPropagation失灵
  • 如何借助 NoSQL 提高 JPA 应用性能
  • 使用 5W1H 写出高可读的 Git Commit Message
  • 文本多行溢出显示...之最后一行不到行尾的解决
  • 我与Jetbrains的这些年
  • 学习ES6 变量的解构赋值
  • 硬币翻转问题,区间操作
  • 中文输入法与React文本输入框的问题与解决方案
  • ​LeetCode解法汇总2583. 二叉树中的第 K 大层和
  • "无招胜有招"nbsp;史上最全的互…
  • #Linux(权限管理)
  • (pojstep1.3.1)1017(构造法模拟)
  • (二)构建dubbo分布式平台-平台功能导图
  • (二十五)admin-boot项目之集成消息队列Rabbitmq
  • (附源码)springboot 房产中介系统 毕业设计 312341
  • (附源码)计算机毕业设计ssm-Java网名推荐系统
  • (每日一问)操作系统:常见的 Linux 指令详解
  • (文章复现)基于主从博弈的售电商多元零售套餐设计与多级市场购电策略
  • (原創) 物件導向與老子思想 (OO)
  • (转)LINQ之路
  • (转载)Linux网络编程入门
  • (状压dp)uva 10817 Headmaster's Headache
  • (最简单,详细,直接上手)uniapp/vue中英文多语言切换
  • *(长期更新)软考网络工程师学习笔记——Section 22 无线局域网
  • *算法训练(leetcode)第三十九天 | 115. 不同的子序列、583. 两个字符串的删除操作、72. 编辑距离
  • .net 4.0 A potentially dangerous Request.Form value was detected from the client 的解决方案
  • .NET Core 中的路径问题
  • .net 托管代码与非托管代码
  • .net获取当前url各种属性(文件名、参数、域名 等)的方法