linux 安全 xshell 使用

目錄和文件

ls -l 查看目錄和文件的權限的設置情況

加固方法

對于重要目錄,建議執行如下類似操作

Chmod -R 750 /etc/rc.d/init.d/*

這樣只有root可以讀寫和執行這個目錄下的腳本

新建了一個用戶Q

寫入了一些信息

發現在root用戶下可以進行文件打開

接下來用普通用戶進行登錄

發現沒有權限進行查看

設置默認的umask值,增強安全性

umask 是 Linux 系統中用于控制 新建文件 / 目錄默認權限 的掩碼。系統創建文件 / 目錄時,會基于默認權限(文件默認 666,目錄默認 777)減去 umask 值,生成最終權限。例如 umask 027,表示從默認權限中扣除對應權限,確保新建文件 / 目錄的權限更安全。

使用命令“/vi/etc/profile” 修改配置文件,添加行“umask 027”,及新創建的文件屬主讀寫執行權限,同組用戶讀寫和執行權限,其他用戶無權限,使用”umask 027”

應用設置

vi /etc/profile? # 打開文件?

進入編輯模式(按 i 鍵),在文件末尾添加:?

umask 027?

保存退出(按 Esc 鍵,輸入 :wq 回車)?

source /etc/profile? # 立即生效配置

普通用戶進入修改文件,報錯此用戶沒有讀寫權限,增強了安全性

Bash歷史命令

Bash歷史命令

可以設置保留歷史命令的條數

使用命令 “cat/etc/profile | group HISTSIZE ” 和“cat /etc/profile | grep HISTFILESIZE=”查看保留歷史命令的條數

使用命令“vi/etc/profile”修改配置文件,修改HISTSIZE=5和HISTFLESIZE=5

既保留最新執行的5條命令

通過查看發現有1000條歷史命令,嚴重影響系統安全

進行配置文件編輯

發現已經成功改變了配置文件信息

退出,先按esc?? :wq!? 再按enter

退出,先按esc?? :wq!? 再按enter

登陸超時,設置系統登陸后,連接超時時間增強安全性

使用命令?? cat /etc/profile | grep TWOUT 查看TMOUT是否被設置

加固方法:使用命令“vi/etc/profile”修改配置文件,添加“TMOUT”行開頭的注釋,設置為“TMOUT=180”,及超時時間為三分鐘

發現沒有輸出,我們進行配置

配置完成,要在最后一行添加,不然會被覆蓋

G跳轉到最后一行?? i 進入編輯模式? Esc退出編輯模式,輸入1:wq!保存并退出

配置文件生效

source /etc/profile

root路徑

檢查系統root用戶環境變量path是否包含”.”

檢查方法:以root用戶環境變量path中不應該包含當前目錄

以root身份執行如下操作

#echo $PATH

/usr/local/sbin:/bin:/usr/sbin:/usr/bin:/root/bin:.

加固方法:

使用命令“vi/etc/profile” 修改echo $PATH后面的路徑

但是我發現我的本來就不包含當前目錄,所以不用修改

運行配置文件

運行配置文件

Source /etc/profile

驗證修改結果:

Echo $PATH

看一看結果中是否包括當前目錄“.”

賬戶安全

禁用無用賬號:減少安全風險

檢查方法:使用/etc/passwd 查看口令文件,與系統管理員確認不必要的賬戶

FTP等服務的賬號,如果不需要登陸下系統,shell應該/sbin/nologin?

加固方法:使用命令“passwd -l <用戶名>” 鎖定不必要的賬號

發現已經成功鎖定了Q用戶禁止登錄

擴展

在 Linux 系統中,用戶信息存儲在?/etc/passwd?文件中,每行記錄對應一個用戶,其中最后一個字段是用戶登錄時使用的 Shell 程序。


?

  • /sbin/nologin?的作用
    它是一個特殊的 “偽 Shell”,當用戶的 Shell 設置為?/sbin/nologin?時,該用戶無法通過終端交互式登錄系統(如 SSH 登錄、本地控制臺登錄等)。系統會提示 “This account is currently not available”,拒絕登錄請求。
  • 應用場景
    對于 FTP 服務賬號、僅用于運行服務的賬號(如某些程序運行的用戶),這些賬號不需要登錄系統執行命令,只需保留服務功能。將它們的 Shell 設置為?/sbin/nologin,既能保證服務正常運行,又能禁止用戶通過這些賬號登錄系統,降低安全風險。
  • 安全意義:避免無用賬號被攻擊者利用進行登錄操作,減少系統暴露面,提升安全性。例如,若攻擊者破解了一個設置為?/sbin/nologin?的賬號密碼,也無法通過該賬號登錄系統執行惡意命令。

查看指定用戶的默認登錄 Shell

通過/etc/passwd文件查看:系統用戶信息存儲在/etc/passwd文件中,每行對應一個用戶的信息,每行最后一個字段就是該用戶的默認登錄 Shell。比如查看root用戶的 Shell,在終端執行命令cat /etc/passwd | grep ^root?,其中^表示匹配行首,命令執行結果中最后一個:號后的內容,即為root用戶的登錄 Shell 類型 ,常見的如/bin/bash?。如果想查看其他用戶,將root替換為對應的用戶名即可

  • 通過echo $SHELL查看當前用戶默認登錄 Shell:在終端輸入echo $SHELL命令,會返回當前正在使用終端的用戶的默認登錄 Shell。例如返回/bin/bash,則表示默認登錄 Shell 是 Bash。

查看當前正在運行的 Shell

  • 使用echo $0命令:在終端中輸入echo $0,會輸出當前正在運行的 Shell 名稱。比如顯示bash,就表示當前運行的是 Bash Shell。
  • 使用ps -p $$命令:$$代表當前 Shell 的進程號,該命令會返回當前 Shell 的詳細信息,其中包括正在運行的 Shell 類型。執行命令后,在輸出結果中找到CMD列,對應的值就是正在運行的 Shell。

創建ftp賬號

擴展知識

以下以 Linux 系統中常見的 vsftpd 軟件為例,介紹創建 ftp 服務賬號且該賬號不需要登錄系統(shell 為 /sbin/nologin )的教程:

1. 安裝 vsftpd

打開終端,使用包管理工具安裝 vsftpd。以 CentOS、RHEL 系統為例,執行命令:

bash

sudo yum -y install vsftpd

對于 Debian、Ubuntu 系統,則執行:

bash

sudo apt-get -y install vsftpd

發現沒有進行激活

發現安裝成功

2. 創建本地映射用戶(非虛擬用戶方式)

使用useradd命令創建一個系統用戶,該用戶將作為 FTP 用戶的映射用戶,且設置其 shell 為?/sbin/nologin,使其無法登錄系統。假設創建用戶名為ftpuser,命令如下:

bash

sudo useradd -d /var/ftp/pub -s /sbin/nologin ftpuser

其中-d參數指定用戶的家目錄為/var/ftp/pub,你可以根據實際需求修改。

3. 設置用戶密碼

執行以下命令為新創建的用戶設置密碼:

sudo passwd ftpuser

按照提示輸入并確認密碼。

4. 配置 vsftpd

打開 vsftpd 的配置文件vsftpd.conf,一般路徑為/etc/vsftpd/vsftpd.conf:

sudo vi /etc/vsftpd/vsftpd.conf

根據需求修改以下一些關鍵配置項:


?

  • 禁止匿名登錄:確保anonymous_enable=NO?,防止匿名用戶訪問 FTP 服務器。
  • 允許本地用戶登錄:確保local_enable=YES?。
  • 啟用寫入權限:若需要讓用戶有上傳文件的權限,設置write_enable=YES?。
  • 鎖定用戶主目錄:為了安全,建議設置chroot_local_user=YES?,將用戶限制在其主目
  • 錄中,防止訪問其他系統目錄。

  • 重裝vim

  • 修改完成后,保存并退出編輯器。

    5. 檢查并添加 shell 到合法列表(可選但建議)

    vsftpd 默認會檢查用戶的 shell 是否在/etc/shells文件中列出 ,如果不在可能導致用戶無法登錄 FTP。因此,需要檢查并添加/sbin/nologin到該文件中。
    使用以下命令查看當前/etc/shells文件內容:

    bash

    cat /etc/shells

    如果其中沒有/sbin/nologin這一行,則使用編輯器添加:

    bash

    sudo vi /etc/shells

    在文件末尾添加/sbin/nologin?,保存并退出。

    6. 重啟 vsftpd 服務

    使配置生效,執行命令:
    對于 CentOS、RHEL、Fedora 等系統:

    bash

    sudo systemctl restart vsftpd

    對于 Debian、Ubuntu 系統:

    bash

    sudo service vsftpd restart

    7. 測試

    使用 FTP 客戶端軟件,如 FileZilla、CuteFTP 等,輸入 FTP 服務器的地址、創建的用戶名和密碼進行連接測試,驗證是否能夠正常訪問 FTP 服務器。

    分享

    賬號策略

    操作目的:防止口令暴力破解,降低風險

    檢查方法:使用命令“cat/etc/pam.d/ system-auth”查看配置文件

加固方法:

設置連續輸錯10次密碼,賬號鎖定5分鐘

使用命令“vi /etc/pam.d/ system-auth”修改配置文件,添加 auth required pam_tally.so onerr=fail deny=10 unlock_time=300

檢查特殊賬號

操作目的:

查看空口令和root權限的賬號

檢查方法;

使用命令:“awk -F:’($2==””)’/etc/shadow” 查看空口令賬號

使用命令:“awk -F:’($3==0)’/etc/passwd”查看UID為零的賬號

加固方法:

使用命令“passwd<用戶名>“為空命令賬號設置密碼

UID為零的賬號應該只有root,設置UID方法:
usermod -u UID<用戶名>

口令周期策略

操作目的:

加強口令的復雜度,降低被猜解的可能性

檢查方法:

使用命令:“cat /etc/login.defs| grep PASS“和 ”cat /etc/pam.d/system-auth“查看密碼策略設置

加固方法:

使用命令“vi /etc/login.defs“修改配置文件

PASS_MAX_DAYS 90 #新建用戶的密碼最長使用天數

PASS_MAX_DAYS 0 #新建用戶的密碼最短使用天數

PASS_WARN_AGE 7 #新建用戶的密碼到期提前提醒天數

使用change命令修改用戶設置,例如:

Chage -m 0 -M 30 -E 2000-01-01 -W 7<用戶名>

表示:將此用戶的密碼最長使用天數設為30,最短使用天數設為0,賬號2000年1月1日過期,過期前7天警告用戶。

口令復雜策略

操作目的:加強口令的復雜度等,降低被猜解的可能性

檢查方法;使用命令“cat/etc/pam.d/system-auth | grep pam_cracklib.so”

查看密碼復雜度策略設置

沒有發現密碼策略配置

加固方法:建議在/etc/pam.d/system-auth文件中配置:

適用于普通用戶

Passwd requisite pam_cracklib.so ?retry=5 difok=3 minlen=8 ucredit=-1 lcredit=-1 dcredit=-1

這一句適用于普通用戶和root用戶

password requisite pam_cracklib.so retry=5 difok=3 minlen=8 ucredit=-1 lcredit=-1 dcredit=-1 enforce_for_root

至少八位,包含一位大寫字母,一位小寫字母和一位數字

進來是這個界面,點擊i進行輸入

按esc, “:wq!”進行退出編輯模式,并保存

進行驗證,發現進行了提示,密碼策略小于8位

限制root遠程登陸

操作目的:限制root遠程telent登錄

檢查方法:

使用命令“cat/etc/securetty | grep CONSOLE” 查看是否禁止root遠程登陸

加固方法:

Vi編輯/etc/securetty 文件,配置:CONSOLE=/dev/tty01

直接點擊G進入最后一行,

Esc?? :wq!

擴展知識:

使用xshell進行遠程連接kali教程

sudo -i 進入(root)管理員模式

Xshell下載鏈接

Xshell安裝教程

發現已經成功連接

發現正常的linux命令都能使用

重新連接,發現失敗????????

限制用戶? su

操作目的:檢查是否使用pam 認證模塊禁止wheel組之外的用戶為root

檢查方法:

使用命令:“cat /etc/pam.d/su | grep pam_wheel.so”查看配置文件,確認是否有相關的限制

????????

加固方法

編輯su 配置文件,vi 打開/etc/pam.d/su 文件,添加或者修改以下配置

Auth required pam_wheel.so use_uid:強制要求執行su 操作的用戶屬于wheel組,use_uid表示通過用戶id,驗證組成員身份。這一句話前面沒有注釋符號,說明系統已經強制要求執行su 操作用戶必須屬于wheel組。

若文件存在其他與pam_wheel.so相關的注釋行(#auth sufficient pam_wheel.so trust use_uid),可取消注釋·并調整為上述規范配置

  1. 將用戶加入wheel組

對允許使用su 切換為root的用戶,執行命令usermod -G wheel用戶名(例如:usermod -G wheel? user1),將其加入wheel組,使其獲得su至root的權限

通過以上配置,非wheel組,使其獲得su 至root的權限。

發現B用戶已經可以進行su 命令的使用了????????

檢查Grub/Lilo密碼

操作目的:

查看系統引導管理器是否設置密碼

檢查方法

使用命令:“cat /etc/grub.conf | grep password”查看grub是否設置密碼

使用命令:“cat /etc/lilo.conf | grep password”查看lilo是否設置密碼

加固方法

Vi編輯 /etc/grub.conf

Splashimage 這個參數下一行添加:password密碼

如果需要md5加密,可以添加一行:password? --md5? 密碼

Vi編輯/etc/lilo.conf

Password=密碼

發現上述的方法已經不適用于新版kali

所以又找了一個方法

檢查GBUB2是否設置密碼

Sudo grep -i ‘password_pbkdf2’ /boot/grub/grub.cfg

在 GRUB2 中,password_pbkdf2?用于標識通過 PBKDF2 算法加密的啟動密碼配置。

這條命令通過搜索 GRUB2 配置文件中是否存在?password_pbkdf2?相關內容,判斷系統是否為 GRUB2 設置了加密啟動密碼。若有對應輸出,說明已設置;若無輸出,則表示未配置密碼。

設置GBUB2密碼(正確加固方法)

    1. 生成加密密碼:
      執行命令生成PBKDF2加密密碼,按提示輸入密碼,添加或修改以下內容(將加密字符串替換為實際生成的內容)

GRUB_ENABLE_CRYPTODISK=y

GBUB_PASSWORD=”grub.pbkdf2.sha512.? ………”#填入生成的加密字符串

Snmp團體字

操作目的:

如果打開了snmp協議,snmp團體字設置不能使用默認的團體字

檢查方法:

查看配置文件 cat /etc/snmp/snmpd.conf

加固方法:

Vi編輯 /etc/snmp/snmpd.cof 文件????????

應禁止使用public.private 默認團體字,使用用戶自定義的團體字,例如將以下設置中的public替換為用戶自定義的團體字:com2sec notConfig notConfigUser default public

編輯文件:

bash

sudo vi

?/etc/snmp/snmpd.conf?

2. 添加配置:

在文件中添加:

Conf

com2sec notConfigUser default YourCustomCommunity? # 將 YourCustomCommunity 替換為自定義強團體字(如包含大小寫字母、數字、符號)

access notConfigGroup "" any noauth exact all none none?

3. 保存退出:按 Esc,輸入 :wq 保存并退出。

4. 重啟服務:bash

sudo

?systemctl restart snmpd?

弱口令審計

檢查方法:

john /etc/shadow –single

john /etc/shadow –wordlist=pass.dic

加固方法:

使用“passwd 用戶名” 命令為用戶設置復雜密碼

若顯示!! *表示密碼未設置,或者密碼已經鎖定,無有效哈希可破解

服務進程

Linux系統的服務進程

系統守護進程(服務)

服務就是運行在網絡服務器上監聽用戶請求的進程

服務就是通過端口號來區分的

常見的服務及其對應端口號

ftp:21

ssh:22

telnet:23

smtp:25

ssl:443

http(www):80

pop3:110

系統守護進程(服務)

在unix/linux系統中,服務是一般通過inted進程或者啟動腳本來啟動。

通過inted來啟動的服務可以通過在/etc/inted.conf文件進行注釋來禁用。

通過啟動腳本啟動的服務可以通過改變腳本名稱的方式禁用。

查看linux進程的命令

檢查ssh服務

操作目的:對ssh服務進行安全檢查

檢查方法:

使用命令“cat /etc/ssh/sshd_config”查看配置文件

加固方法:

使用命令“vi /etc/ssh/sshd_config”編輯配置文件

    1. 不允許root直接登錄?? 設置“PermitRootLogin”的值為no

無法通過ssh進行遠程登陸

修改SSH使用的協議版本?? 設置“Protocol”? 的版本為2,如果沒有這一行,直接添加這一行。

  1. 修改允許密碼錯誤次數(默認6次)設置“MaxAuthTries” 值為3???

Tcp Wrapper

操作目的:

使用tcp? wrapper 對? libwrap庫支持的程序做訪問控制

檢查方法:

使用命令“vi /etc/hosts.allow” 和 “cat /etc/hosts.deny” 查看配置

加固方法:

使用命令“vi /etc/hosts.allow”?? 和”vi /etc/hosts.deny”? 修改配置

  1. 若允許 Windows 主機訪問 Linux 虛擬機的 SSH
    • 查看 Windows 主機 IP:按?Win + R,輸入?cmd?打開命令提示符,執行?ipconfig,找到?IPv4 地址(如?192.168.1.100)。
    • 在 Linux 虛擬機的?hosts.allow?中填寫:sshd:Windows主機的IPv4地址(例如?sshd:192.168.1.100),表示僅允許該 Windows 主機 IP 訪問 Linux 的 SSH 服務。
  2. 若允許其他設備訪問
    • 同理,獲取對應設備的 IP(如另一臺 Linux 服務器、手機等),填寫到?hosts.allow?中。

最終目的是:填寫 “希望被允許連接到 Linux 虛擬機 SSH 服務的設備 IP”,而非固定填主機或虛擬機 IP,需根據實際訪問需求決定。

Vi /etc/hosts.allow

按i 進入編輯模式

加入: sshd:IP地址

Vi /etc/hosts.deny

按I 進入編輯模式

Sshd:ALL

(該配置為僅允許特定ip地址訪問ssh)

NFS共享

操作目的:

查看NFS共享

檢查方法:

使用命令“exportfs” 查看NFS輸出的共享文件

加固方法:

使用命令:“vi /etc/exports”編輯配置文件,刪除不必要的共享


如果發現配置文件里面沒有命令,說明你沒有配置過共享

如果有的話,進行刪除,并用下面的兩條命令進行執行

systemctl restart nfs-server?

systemctl restart nfs-kernel-server?

syslogd認證相關記錄

操作目的:

查看所有日志記錄

檢查方法:

#cat /etc/rsyslog.conf | grep authpriv

查看是否有 authpriv.* /var/log/secure

加固方法:

添加相關日志的記錄:
將authpirv 設備的任何級別的信息記錄到 /var/log/secure

發現本來就在這個路徑當中,所以不用進行修改

Syslogd 日志設置

操作目的:

查看所有日志記錄

檢查方法:

使用命令:”cat /etc/rsyslog.conf”? 查看rsyslogd

系統日志(默認)? /var/log/messages

Cron日志(默認)? /var/log/cron

安全日志(默認)? /var/log/secure

加固方法:

添加相關日志的記錄

  • local1:屬于為本地使用預留的日志設施(local0 - local7 )之一,沒有固定的日志記錄類型限制 ,可由用戶自定義用于記錄特定應用程序或服務產生的日志。例如,可以將自定義腳本的運行日志、一些特定業務系統的日志通過配置使用 local1 來記錄,方便區分和管理。
  • auth:主要記錄與安全和認證相關的消息,比如用戶登錄、注銷信息,身份驗證成功或失敗的記錄等。像用戶通過 SSH 登錄系統、使用 sudo 命令提權等操作產生的相關認證信息,通常會由 auth 設施來記錄 。不過,對于一些更私密的安全認證信息,會使用 authpriv 設施記錄。

  • 限制ctrl+alt+del命令

  • 操作目的:

防止誤使用ctrl+alt+del重啟命令

檢查方法

使用命令“cat /etc/inittab | grep ctrlaltdel”? 查看輸入行是否被注釋

加固方法:

先使用命令“vi /etc/inittab”? 編輯配置文件,在行開頭添加注釋符號“#”,

#ca::ctrlaltdel:/sbin/shutdown -t3 -r now,在使用命令“init q” 應用設置

新舊系統判斷

從系統初始化機制來看,當前填寫方式需結合系統類型判斷:


?

  • 若系統使用?systemd(多數新 Linux 發行版,如 CentOS 7+、Ubuntu 16.04+)
    /etc/inittab?已不再生效(圖中文件開頭也提示?inittab is no longer used when using systemd),此時即使注釋?#ca::ctrlaltdel:/sbin/shutdown -t3 -r now,也無法限制?Ctrl+Alt+Del。需通過?systemd?機制處理,例如:

bash

systemctl mask ctrl-alt-del.target? # 屏蔽 Ctrl+Alt+Del 對應的系統目標?

  • 若系統仍使用傳統初始化(極老舊系統)
    在?/etc/inittab?中注釋?ca::ctrlaltdel:/sbin/shutdown -t3 -r now?行是正確的,注釋后?Ctrl+Alt+Del?的重啟功能會被禁用,后續執行?init q?刷新配置即可生效。

因此,需先確認系統初始化類型:新系統需用?systemd?方案,老舊系統此填寫有效

查看發現是屬于新版本的

這個是新版本的教程

  1. 屏蔽?Ctrl+Alt+Del?對應的系統目標

bash

systemctl mask ctrl-alt-del.target?

執行此命令后,Ctrl+Alt+Del?的重啟功能會被禁用。

  1. 驗證狀態(可選)

bash

systemctl status ctrl-alt-del.target?

若顯示?masked,則表示屏蔽成功。

此方法適配?systemd?初始化機制,是 CentOS 7 等新系統限制?Ctrl+Alt+Del?的正確操作。

發現虛擬機已經禁止了這個命令,執行成功。

服務進程安全

關閉不必要的服務

  1. 使用服務:“who -r”? 查看當前init級別
  2. 使用命令“chkconfig --list”查看所有服務的狀態

  1. 使用命令“chkconfig -level? <init級別> <服務名> on | off | reset”設置服務在個init 級別下開機是否啟動

禁止?httpd?服務在運行級別 3、5 開機啟動

chkconfig --level 35 httpd off?

設置?sshd?服務在運行級別 2、3、4、5 開機啟動

chkconfig --level 2345 sshd on?

恢復?network?服務默認啟動設置

chkconfig --level 3 network reset

完結撒花

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/898264.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/898264.shtml
英文地址,請注明出處:http://en.pswp.cn/news/898264.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

自動駕駛背后的數學:特征提取中的線性變換與非線性激活

在上一篇博客「自動駕駛背后的數學&#xff1a;從傳感器數據到控制指令的函數嵌套」—— 揭秘人工智能中的線性函數、ReLU 與復合函數中&#xff0c;我們初步探討了自動駕駛技術中從傳感器數據到控制指令的函數嵌套流程&#xff0c;其中提到了特征提取模塊對傳感器數據進行線性…

楊校老師課堂之編程入門與軟件安裝【圖文筆記】

親愛的同學們&#xff0c;熱烈歡迎踏入青少年編程的奇妙世界&#xff01; 我是你們的授課老師楊校 &#xff0c;期待與大家一同開啟編程之旅。 1. 輕松叩開編程之門 1.1 程序的定義及生活中的應用 程序是人與計算機溝通的工具。在日常生活中&#xff0c;像手機里的各類 APP、電…

DeepSeek 3FS 與 JuiceFS:架構與特性比較

近期&#xff0c;DeepSeek 開源了其文件系統 Fire-Flyer File System (3FS)&#xff0c;使得文件系統這一有著 70 多年歷時的“古老”的技術&#xff0c;又獲得了各方的關注。在 AI 業務中&#xff0c;企業需要處理大量的文本、圖像、視頻等非結構化數據&#xff0c;還需要應對…

Coco AI 智能檢索 Hugo Blog 集成指南

在此前的文章中&#xff0c;我們介紹了如何使用 Coco Server 連接 Notion&#xff0c;實現智能內容檢索。本次&#xff0c;我們將進一步探索如何在 Coco Server 最新版本 中集成 Hugo Site&#xff0c;以便對 Hugo 站點 進行高效檢索。 Coco Server 部署方式 要在本地或服務器…

Mobile-Agent-V:通過視頻引導的多智體協作學習移動設備操作

25年2月來自北京交大和阿里巴巴公司的論文“Mobile-Agent-V: Learning Mobile Device Operation Through Video-Guided Multi-Agent Collaboration”。 移動設備使用量的快速增長&#xff0c;迫切需要改進自動化以實現無縫任務管理。然而&#xff0c;因缺乏操作知識&#xff0…

電魚智能EFISH-RK3576-SBC工控板已適配Android 14系統

EFISH-RK3576-SBC工控板此前已提供了Linux 6.1.57系統&#xff0c;為了滿足更多客戶的需求&#xff0c;電魚智能近日又為其成功適配了Android 14系統——硬件性能卓越的核心板與Android 14的深度組合&#xff0c;將為用戶帶來更加流暢、開放、智能的使用體驗。 一、高性能處理器…

正點原子[第三期]Arm(iMX6U)Linux移植學習筆記-5.1 uboot頂層Makefile分析-VSCode工程創建

前言&#xff1a; 本文是根據嗶哩嗶哩網站上“Arm(iMX6U)Linux系統移植和根文件系統構鍵篇”視頻的學習筆記&#xff0c;在這里會記錄下正點原子 I.MX6ULL 開發板的配套視頻教程所作的實驗和學習筆記內容。本文大量引用了正點原子教學視頻和鏈接中的內容。 引用&#xff1a; …

java 使用命令創建jar的常用參數整理

在Java中&#xff0c;創建JAR文件的命令是jar。以下是常用參數的表格展示&#xff1a; 參數信息含義使用場景使用示例c創建新的JAR文件用于創建一個新的JAR文件當需要打包類文件和資源文件時jar cf myapp.jar MyClass.classt列出JAR文件內容顯示JAR文件中的內容列表查看JAR文件…

無線頭戴式攝像頭系統:無需標記點攝像頭智能捕捉人臉表情

AH-T無線頭戴式攝像頭系統是一款可以精準捕捉人臉面部細微表情的設備&#xff0c;基于單目無標記點攝像頭智能識別算法&#xff0c;無需在臉上粘貼標記點即可實現真人細微臉部表情的精準捕捉&#xff0c;采用頭盔&#xff0c;面捕攝像頭一體式人性化設計&#xff0c;可以讓使用…

Cursor IDE 入門指南

什么是 Cursor? Cursor 是一款集成了 AI 功能的現代代碼編輯器&#xff0c;基于 VSCode 開發&#xff0c;專為提高開發效率而設計。它內置強大的 AI 助手功能&#xff0c;能夠理解代碼、生成代碼、解決問題&#xff0c;幫助開發者更快、更智能地完成編程任務。 基礎功能 1.…

Tailwind CSS 中的 spacing 詳解

&#x1f50d; Tailwind CSS 中的 spacing 詳解 spacing&#xff08;間距&#xff09;是 Tailwind CSS 里的一個核心概念&#xff0c;它主要用于控制 padding&#xff08;內邊距&#xff09;、margin&#xff08;外邊距&#xff09;、width&#xff08;寬度&#xff09;、heig…

go語言學習教程推薦,零基礎到做項目

一、基礎入門階段 官方教程&#xff08;免費&#xff09; ? A Tour of Go&#xff1a;交互式入門教程&#xff0c;邊學邊練 ? Go by Example&#xff1a;通過300代碼片段學習語法 入門書籍 ? &#x1f4d8;《Go語言圣經》中文版&#xff08;免費在線閱讀&#xff09;&#…

STM32---FreeRTOS內存管理實驗

一、簡介 1、FreeRTOS內存管理簡介 2、FreeRTOS提供的內存管理算法 1、heap_1內存管理算法 2、heap_2內存管理算法 4、heap_4內存管理算法 5、heap_5內存管理算法 二、FreeRTOS內存管理相關API函數介紹 三、 FreeRTOS內存管理實驗 1、代碼 main.c #include "st…

常見的前端安全問題

前端安全是 Web 開發中至關重要的一環&#xff0c;以下是常見的前端安全問題及對應的防御措施&#xff1a; 1. XSS&#xff08;跨站腳本攻擊&#xff09; 攻擊原理 攻擊者向頁面注入惡意腳本&#xff08;如 JavaScript&#xff09;&#xff0c;在用戶瀏覽器中執行&#xff0c;…

【VUE】ant design vue實現表格table上下拖拽排序

適合版本&#xff1a;ant design vue 1.7.8 實現效果&#xff1a; 代碼&#xff1a; <template><div class"table-container"><a-table:columns"columns":dataSource"tableData":rowKey"record > record.id":row…

深入解析ES6+新語法:復雜的迭代器與生成器

一、迭代器&#xff08;Iterator&#xff09;&#xff1a;數據遍歷的統一協議 1. 迭代器協議的本質 **迭代器協議&#xff08;Iterator Protocol&#xff09;** 是一種標準化的數據訪問接口&#xff0c;它要求對象實現一個 next() 方法&#xff0c;每次調用返回包含 { valu…

LangChain介紹(開源大語言模型LLM應用構建框架,提供完整工具和組件,使開發者能夠創建復雜、交互式且上下文感知的LLM應用)LangServe

文章目錄 LangChain&#xff1a;構建LLM應用的強大框架引言LangChain核心理念- 超越模型訓練數據的局限性- 訪問最新信息- 與外部系統交互- 執行復雜推理鏈 核心組件體系1. 模型&#xff08;Models&#xff09;- **LLMs**&#xff1a;如OpenAI、Anthropic、Cohere等提供的完成型…

微軟 System Center Configuration Manager(SCCM)的組件文件

微軟 System Center Configuration Manager(SCCM) 或 Microsoft Endpoint Configuration Manager(MECM) 的組件文件,屬于企業級設備管理工具的一部分。以下是具體說明: C:\Windows\CCM\smsswd.exe C:\Windows\CCM\tsmanager.exe smsswd.exe 和 tsmanager.exe 是 Micros…

Java設計模式建模語言面向對象設計原則

設計模式 設計模式的概念 設計模式最初用于建筑領域的設計中。 軟件的設計模式&#xff0c;又稱設計模式&#xff0c;是一套被反復使用&#xff0c;多數人知道的&#xff0c;經過分類編目的&#xff0c;代碼設計經驗的總結。 它描述了在軟件設計過程中的一些不斷重復發生的…

uniapp 實現微信小程序電影選座功能

拖動代碼 /*** 獲取點擊或觸摸事件對應的座位位置* 通過事件對象獲取座位的行列信息* param {Event|TouchEvent} event - 點擊或觸摸事件對象* returns {Object} 返回座位位置對象&#xff0c;包含行(row)和列(col)信息&#xff0c;若未找到有效位置則返回 {row: -1, col: -1}*…