前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >.net 程序员的centos命令总结

.net 程序员的centos命令总结

作者头像
FreeTimeWorker
发布2021-03-16 14:47:57
3500
发布2021-03-16 14:47:57
举报
文章被收录于专栏:C#开发点点滴滴

1,ssh相关

在初始化一台云服务器的时候,第一件事情就是去把该关的门都关上,首先第一关就是禁用root登录,禁用密码登录,顺便改一下远程登录端口,让登录都通过ssh密钥对来进行,阿里云里有密钥对管理,创建完以后会下载一个私钥给你,公钥通过将密钥对绑定到新建的服务器放到新服务器的目录/root/.ssh/authorized_keys 这个文件就是公钥.

一,给root设置一个密码

代码语言:javascript
复制
passwd root #输入两次密码确认

二,创建一个用于远程登陆的用户,我的新用户名叫newuser

代码语言:javascript
复制
useradd newuser
passwd newuser //输入两次密码确定,新用户就创建成功了

三,使得私钥可以用于newuser登录

代码语言:javascript
复制
#1,创建文件夹
mkdir /home/newuser/.ssh
#2,复制公钥到用户的.ssh目录
cp /root/.ssh/authorized_keys /home/newuser/.ssh/
#3,修改/home/newuser/.ssh/ 这个文件夹所属的用户和权限 【以root身份才可以执行】
chown newuser /home/newuser/.ssh/ -R #修改/home/newuser/.ssh/归属 newuser所有,-R表示递归执行 chown是change own的简称
#4,修改权限authorized_keys公钥的权限,修改文件所属者和相应的权限
chmod 700 /home/newuser/.ssh/authorized_keys 
#chmod的是change mode的简称,权限分三位,第一位的数字表示文件所属者的权限,第二位表示文件所在组其他人的对文件的权限,第三位表示其他人对文件的权限
#文件的权限分三种分别位读写和执行,对应的二进制码位100【读】,010【写】 和001【执行】,10进制表示的文件权限即为相应权限的和,比如读写执行就是100+010+001=111转换成10进制就是7
#chmod和chown可以说是非常常用的命令,如果根据他们原来英文名称去记忆会容易许多。

四,通过MobaXterm_Personal测试新用户通过ssh密钥对连接是否可以成功

avatar
avatar

五,开启防火墙,开放新端口,禁用默认远程端口

代码语言:javascript
复制
#1,开启防火墙,并设置开机启动
systemctl start firewalld.service
systemctl enable firewalld.service
#开启用于远程的端口为保险起见先留着22
firewall-cmd --zone=public --add-port=22/tcp --permanent
firewall-cmd --zone=public --add-port=1000/tcp --permanent #控制1000端口可以通过防火墙【作为远程登录端口】
firewall-cmd --zone=public --remove-port=22/tcp --permanent #关闭22端口
firewall-cmd --reload #刷新配置,使得配置生效
# 修改ssh配置使得1000端口可用于远程登录
vim /etc/ssh/sshd_config #按i进入编辑状态,按esc退出编辑状态,进入命令状态,命令状态输入 :/xxx,输入完按回车根据关键字xxx搜索,按n下一个  命令状态按:u撤销 ,命令状态输入:wq保存并退出按 :q退出,按q!强制退出不保存
#添加Port 1000 添加Port 22[默认会有,先不要去掉,等所有修改就绪,没有问题的时候再去掉],执行ssh_port端口添加
semanage port -l | grep ssh #查看目前ssh可用端口
semanage port -a -t ssh_port_t -p tcp 1000 #添加1000端口到ssh可用端口列表
systemctl restart sshd.service #重启ssh服务,为安全起见,请勿关闭当前命令窗口,打开一个新终端去连接服务器,端口写1000,用户名写新加的newuser,选中私钥 如果可以进去系统说明配置成功了,紧接着禁用root登录和密码登录
vim /etc/ssh/sshd_config #修改下边两个配置
PermitRootLogin no
PasswordAuthentication no
systemctl restart sshd.service #重启服务

打开阿里云,点击安全组,添加需要开启的端口

2,服务相关,作为.net程序员于centos的交集大多数是发布一些网站,网站发布完以后常用的一些操作可能还会包括查看服务日志,状态等。

安装.net core环境 参考 docs for dotnet install

代码语言:javascript
复制
#1,创建第一个服务,centos中所有与配置相关的东西几乎都在/etc/目录下,服务相关的配置也在这里  首先创建一个服务启动的配置文件
vim /etc/systemd/system/你的服务.service 

# 如下就是一个示例的dotnet的服务配置, 其中User 填写新加的用户newuser,workingdirectory写发布到centos中的程序目录, 
[Unit]
Description=Example .NET Web API App running on Ubuntu

[Service]
WorkingDirectory=/var/www/helloapp
ExecStart=/usr/bin/dotnet /var/www/helloapp/helloapp.dll
Restart=always
# Restart service after 10 seconds if the dotnet service crashes:
RestartSec=10
KillSignal=SIGINT
SyslogIdentifier=dotnet-example
User=newuser
Environment=ASPNETCORE_ENVIRONMENT=Production
Environment=DOTNET_PRINT_TELEMETRY_MESSAGE=false
[Install]
WantedBy=multi-user.target

#将上述内容复制到 你的服务.service中,修改关键配置,workingdir,ExecStart,以及Environment,将程序文件复制到workingdir指定的目录中开启服务

systemctl enable 你的服务.service #添加开机自动启动
systemctl start 你的服务.service #启动服务
systemctl stop 你的服务.service #启动服务
systemctl restart 你的服务.service #重启服务
systemctl status 你的服务.service #查看服务状态
journalctl -fu 你的服务.service #查看服务日志,在调试的时候会非常有用,可以实时看到相关服务的输出
journalctl -u 你的服务.service #查看服务的所有日志
journalctl -u >a #将所有日志文件写入到a文件中

Environment 开头的配置就是环境相关的配置,这里可以设置启动urls,响应超时等... 参考 .net core服务主机配置

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021-03-12 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1,ssh相关
    • 一,给root设置一个密码
      • 二,创建一个用于远程登陆的用户,我的新用户名叫newuser
        • 三,使得私钥可以用于newuser登录
          • 四,通过MobaXterm_Personal测试新用户通过ssh密钥对连接是否可以成功
            • 五,开启防火墙,开放新端口,禁用默认远程端口
            • 2,服务相关,作为.net程序员于centos的交集大多数是发布一些网站,网站发布完以后常用的一些操作可能还会包括查看服务日志,状态等。
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档